Software Engineering

Informatik, 3. Semester

Informatik, 3. Semester


Set of flashcards Details

Flashcards 40
Language Deutsch
Category Computer Science
Level University
Created / Updated 08.11.2016 / 26.12.2023
Weblink
https://card2brain.ch/box/software_engineering7
Embed
<iframe src="https://card2brain.ch/box/software_engineering7/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Was ist eine Anforderung?

Eine Anforderung ist eine Aussage über ein Kundenbürfnisses oder -ziel oder eine Bedingung oder Fähigkeit, die ein Produkt erfüllen muss, um ein solches Bedürfnis oder Ziel zu erfüllen. Eine Eigenschaft, die ein Produkt haben muss, um einem Stakeholder Mehrwert zu bieten.

Was ist Requirements Engineering?

  • Unterdisziplin von System Engineering und Software Engineering
  • umfasst alle Projektaktivitäten, verbunden mit dem Verstehen aller notwendigen Fähigkeiten und Eigenschaften des Produkts
  • beinhaltet Requirements Development und Requirements Management

Was sind die Unterdisziplinen von Requirements Engineering?

  • Requirements Development: Elicitation, Analysis, Specification, Validation
  • Requirements Management: Tracking, Managing, Controlling, Tracing

 

Was ist Elicitation?

  • Identifizierung + Aufdecken von Anforderungen aus verschiedenen Quellen
  • Interviews, Workshops, Fokusgruppen, Beobachtungen, Dokumentenanalyse, ...

Was ist Analysis?

  • Klassifizierung von Anforderungen
  • Repräsentation
  • Ableitung detaillierter Anforderungen aus High-Level-Anforderungen
  • Verhandlung von Prioritäten

Was ist Specification?

  • Dokumentation, SRS

Was ist Validation?

  • Bewertung, um festzustellen, ob Produkt Kundenbedürfnisse erfüllt --> Bauen wir das richtige Produkt?
  • Verifikation: Bauen wird das Produkt richtig?

Wie ist eine mögliche Vorgehensweise beim Requirements Development?

  1. WER? Stakeholder definieren
  2. WAS? Ziele definieren
  3. WIE? Anforderungen definieren

 

Was sind die Key Actions bei Elicitation?

  • Benutzerklassen / Stakeholder identifizieren
  • Benutzeraufgaben und -ziele und Geschäftsziele verstehen
  • Umgebung, in der das Produkt eingesetzt werden soll, kennen
  • mit Individuen, die jede Benutzerklasse repräsentieren, arbeiten + ihre funktionalen Bedürfnisse und Qualitätserwartungen verstehen

Was sind die Elicitation Activities?

  1. Vorbereitung: für Elicitation Scope und Agenda entscheiden, Ressourcen vorbereiten, Fragen vorbereiten
  2. Durchführung: Elicitation Session durchführen
  3. Follow Up: Notizen organisieren + teilen, offene Themen dokumentieren

Was sind Key Actions bei der Analysis?

  • die von den Stakeholder erhaltenen Informationen analysieren, um ihr Aufgaben / Ziele von anderen Anforderungen zu unterscheiden
  • High-Level-Anforderungen in ein angemessenes Level an Detail zerlegen
  • Funktionsanforderungen ableiten
  • Wichtigkeit von Qualitätsmerkmalen verstehen
  • Anforderungen den in der Systemarchitektur definierten Softwarekomponenten zuweisen
  • Implementierungsprioritäten verhandeln
  • Lücken in den Anforderungen oder unnötige Anforderungen identifizieren

Was ist die Key Action bei der Specification?

die gesammelten Nutzerbedürfnisse in geschriebene Anforderungen und passende Diagramme übersetzen, geeignet zum Verstehen, Überprüfen und Benutzen durch die beabsichtigte Zielgruppe

Was sind Kriterien für gute Anforderungen?

  • vollständig
  • korrekt
  • gültig und aktuell
  • vereinbart
  • notwendig
  • verständlich
  • nachvollziehbar
  • priorisierbar
  • implementierbar
  • konsistent
  • klassifizierbar
  • prüfbar
  • eindeutig

Was ist eine User Story?

  • Format zum Erfassen von Nutzeranforderungen bei agilen Projekten in ein oder zwei Sätzen
  • drückt Nutzerbedürfnis aus oder beschreibt eine Einheit von gewünschten Funktionalitäten
  • legt den Nutzen der Funktionaltät dar

Was sind die Schritte bei der Rupp-Schablone?

  1. Wichtigkeit festlegen (muss, soll, wird)
  2. Funktionalität identifizieren
  3. Art der Funktionalität festlegen (- [selbstständige Systemaktivität], xy die Möglichkeit bieten [Benutzer-Interaktion], fähig sein [Schnittstellen-Anforderung])
  4. Objekt identifizieren
  5. logische und zeitliche Bedingungen formulieren
  6. SOPHIST-Regelwerk anwenden

Wie sieht der Requirements Development Process Framework aus?

Warum sollte man visuelle Modelle verwenden?

  • ein Bild sagt mehr als 1000 Worte
  • Information effizienter kommunizieren
  • Diskussion erleichtern
  • Dokumentation
  • detaillierte Beschreibung

Was ist RML?

  • Requirements Modelling Language
  • Fokus: Bedürfnisse
  • Ziele und Eigenschaften
  • von Zielen zu konkreten Anforderungen
  • RML: Startpunkt --> UML

Was sind die Kategorien beim RML Model?

  • Objectives: Business Values, Eigenschaften / Features; z. B. Business Objective Model, Feature Tree
  • People: Wer nutzt das System? z. B. Organisation Chart, Use Case
  • Systems: Interface, Verhalten, Teile; z. B. User Interface Flow, Entscheidungstabelle, -bäume
  • Data: Daten, Beziehungen; z. B. Data Flow Diagram, Zustandsdiagramm, -tabelle

Was ist UML?

  • Unified Modelling Language
  • Anwendungsstruktur, Verhalten, Architektur, Geschäftsprozesse, Datenstruktur

Was sind die Key Actions bei Validation?

  • Überprüfung der dokumentierten Anforderungen, um Probleme noch vor der Entwicklung zu korrigieren
  • Entwicklung von Abnahmeprüfungen/Kriterien, um zu bestätigen, dass das Produkt die Bedürfnisse der Stakeholder erfüllen und die Geschäftsziele erreichen wird

Was ist Peer Review und was für Arten gibt es?

  • eine oder mehrere Personen, die nicht der Autor eines Arbeitsprodukts sind, untersuchen Produkt mit dem Ziel, Mängel und Verbesserungsvorschläge zu finden
  • informell: Peer Deskcheck, Passaround, Walkthough
  • formell: Inspektion

Wie sieht der Inspektionsprozess aus?

Was sind Akzeptanzkriterien?

Bedingungen, die das Produkt erfüllen muss, um von dem Nutzer, Kunden, etc. akzeptiert zu werden

Was ist der Akzeptanztest?

  • wertet erwartete Nutzungsszenarien aus, um die Akzeptanz der Software festzustellen
  • in agiler Entwicklung verwendet, um Details über eine User Story auszudrücken und festzustellen, ob eine User Story vollständig und richtig implementiert ist

Was ist PRINCE2?

  • „Projects in Controlled Environments“
  • skalierbare Projektmanagementmethode
  • weltweit führend neben SCRUM
  • freie Verwendung

Was sind die Merkmale eines Projekts?

  • befristet
  • einmalig
  • unsicher
  • Veränderungen
  • bereichsübergreifend

Was sind die Projektdimensionen und wie sieht der Projektsteuerungskreislauf aus?

  • Zeit
  • Kosten
  • Qualität
  • Risiko
  • Umfang
  • Nutzen

Was sind die vier integrierten Bausteine bei PRINCE2?

  • 7 Grundprinzipien
  • 7 Themen
  • 7 Prozesse
  • Tailoring

Wie sieht der Prozess beim Risikomanagement aus?

Was sind mögliche Risikobehandlungen bei einer Bedrohung?

  • Vermeiden
  • Reduzieren
  • Eventualplan erstellen („Plan B“)
  • Übertragen (z. B. an Versicherung)
  • Akzeptieren

Was sind mögliche Risikobehandlungen bei einer Chance?

  • Ergreifen
  • Ablehnen
  • Steigern

Wofür gibt es Aufwandsschätzungen?

  • Abschätzung von Dauer und Aufwand/Kosten
  • Beeinflussung von Projektplanung
  • Unterstützung bei der Steuerung
  • Erfolgsmessung nach Projektende

Was soll geschätzt werden?

  • magisches Dreieck (Time, Budget, Quality)
  • unterschiedliche Komponenten einer Schätzung
    • Fachliche Konzeption
    • Technische Konzeption
    • Realisierung
    • Test & Qualitätssicherung, Dokumentation
    • Projektmanagement
    • Besprechung
    • Produktivsetzung & Systemunterstützung
    • Wartung
    • Risiko & Gewährleistung

Was sind Dienstvertrag und Werkvertrag?

  • Dienstvertrag:
    • Pflicht zur Leistung (Auftragnehmer)
    • Pflicht zur Vergütung der Leistung (Auftraggeber)
    • keine Pflicht zum Erfolg für Auftragnehmer
  • Werkvertrag
    • Pflicht zum mangelfreien Werk (Auftragnehmer)
    • Pflicht zur Abnahme & Zahlung (Auftraggeber)
  • Risikokalkulation bei Softwareentwicklung
    • Dienstvertrag: erhöhtes Risiko beim Kunden
    • Werkvertrag: erhöhtes Risiko beim Lieferanten

Nenne die 7 Arten von Strukturdiagrammen.

  • Klassendiagramm
  • Paketdiagramm
  • Objektdiagramm
  • Kompositionsstrukturdiagramm
  • Komponentendiagramm
  • Verteilungsdiagramm
  • Profildiagramm

Nenne die 3 Arten von Verhaltensdiagrammen (keine Interaktionsdiagramme).

  • Use-Case-Diagramm
  • Aktivitätsdiagramm
  • Zustandsautomat

Nenne die 4 Arten von Verhaltendiagrammen (Interaktionsdiagramme)?

  • Sequenzdiagramm
  • Kommunikationsdiagramm
  • Timingdiagramm
  • Interaktionsübersichtsdiagramm

Was ist der Zweck von Use-Case-Diagrammen?

Was soll mein System für seine Umwelt leisten?

Was ist der Zweck von Aktivitätsdiagrammen?

Wie realisiert mein System ein bestimmtes Verhalten?