Anforderungsmanagement Quiz

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Welches der folgenden Werkzeuge ist NICHT für das Entdecken und Sammeln von Anforderungen geeignet?

  • Storyboards
  • Interviews
  • Excel-Tabellen (correct)
  • User Stories

Offene Interviews erlauben es den Stakeholdern, verschiedene Aspekte des Systems ohne Einschränkungen zu besprechen.

True (A)

Was ist eine der Hauptschwierigkeiten bei der Durchführung von Interviews in einem spezialisierten Bereich?

Fachspezifische Sprache der Anwender.

User Stories sind __________, wie das System benutzt werden kann.

<p>wirklichkeitsnahe Beispiele</p> Signup and view all the answers

Ordnen Sie die Interviewarten den entsprechenden Beschreibungen zu:

<p>Geschlossene Interviews = Fragen basierend auf einem Katalog Offene Interviews = Freie Diskussion über verschiedene Aspekte</p> Signup and view all the answers

Welcher Aspekt des Anforderungsmanagements wird durch Live-Beobachtungen unterstützt?

<p>Praxiserfahrung im Anforderungsmanagement (D)</p> Signup and view all the answers

Interviews sind immer eine Mischung aus offenen und geschlossenen Fragen.

<p>False (B)</p> Signup and view all the answers

Nennen Sie einen Vorteil von Interviews im Anforderungsmanagement.

<p>Guter Überblick über die Arbeitsweise der Stakeholder.</p> Signup and view all the answers

Welche der folgenden Aussagen beschreibt das Anforderungsmanagement korrekt?

<p>Anforderungen an Softwaresysteme ändern sich ständig. (D)</p> Signup and view all the answers

Es ist möglich, alle Fehler während der Validierung der Anforderungen zu finden.

<p>False (B)</p> Signup and view all the answers

Nennen Sie eine Technik zur Validierung der Anforderungen.

<p>Prototyping oder Review der Anforderungen.</p> Signup and view all the answers

Die __________ sorgt dafür, dass Änderungen an Anforderungen dokumentiert und nachvollziehbar sind.

<p>Nachvollziehbarkeitsmanagement</p> Signup and view all the answers

Ordnen Sie die Anforderungsmanagement-Tools den passenden Funktionen zu:

<p>Jira = Projektmanagement Confluence = Dokumentation Trello = Aufgabenmanagement Git = Versionskontrolle</p> Signup and view all the answers

Was ist ein Hauptziel der Anforderungserhebung?

<p>Das Verständnis und die Dokumentation von Benutzer- und Systemanforderungen (B)</p> Signup and view all the answers

Welche Rolle spielt der Nutzer während des Requirements Engineering Prozesses?

<p>Der Nutzer hilft dabei, Anforderungen zu definieren und zu validieren. (D)</p> Signup and view all the answers

Stakeholder drücken ihre Anforderungen typischerweise in einer einheitlichen Sprache aus.

<p>False (B)</p> Signup and view all the answers

Ein Review der Anforderungen ist nicht notwendig, solange die Entwickler die Anforderungen verstanden haben.

<p>False (B)</p> Signup and view all the answers

Nennen Sie eine Herausforderung bei der Anforderungserhebung.

<p>Konflikt zwischen den Anforderungen verschiedener Stakeholder</p> Signup and view all the answers

Was ist ein wichtiges Ziel des Änderungsmanagements im Anforderungsmanagement?

<p>Sicherstellen, dass Änderungen dokumentiert und kommuniziert werden.</p> Signup and view all the answers

Der Prozess zur Priorisierung und __________ von Anforderungen ist kritisch für den Erfolg eines Projekts.

<p>Verhandlung</p> Signup and view all the answers

Ordnen Sie die verschiedenen Elemente dem entsprechenden Aspekt des Anforderungsmanagements zu:

<p>Änderungsmanagement = Verwaltung von Änderungen in den Anforderungen Nachvollziehbarkeitsmanagement = Sicherung der Rückverfolgbarkeit von Anforderungen Anforderungsmanagement-Tools = Software zur Unterstützung des Anforderungsprozesses Rollenbasierter Zugriff = Zugangssteuerung für unterschiedliche Stakeholder</p> Signup and view all the answers

Welche der folgenden Maßnahmen ist hilfreich bei der Anforderungserhebung?

<p>Lesen von relevanter Dokumentation und Interviews mit Stakeholdern (A)</p> Signup and view all the answers

Neue Anforderungen können sich während des Analyseprozesses ergeben.

<p>True (A)</p> Signup and view all the answers

Wie können unterschiedliche Quellen der Anforderungen dargestellt werden?

<p>Als Perspektiven (Viewpoints) auf das System</p> Signup and view all the answers

Flashcards

Requirement Prioritization

Ordering requirements based on importance and impact.

Requirement Negotiation

Resolving conflicts between stakeholders and agreeing on requirements.

Stakeholder

Individuals or groups affected by a system or project.

Requirement Gathering

Collecting information about needed or existing systems to define user and system needs.

Signup and view all the flashcards

Conflicting Requirements

Requirements that contradict each other.

Signup and view all the flashcards

Unrealistic Requirements

Requirements that are not feasible or achievable within given resources.

Signup and view all the flashcards

Requirement Viewpoints

Different perspectives on a system, based on various sources (project participants, application areas, systems).

Signup and view all the flashcards

Stakeholder Needs

Understanding the needs and requirements of the individuals and groups impacted by a project.

Signup and view all the flashcards

Requirement Review

Systematic analysis of requirements by experts to find errors and inconsistencies.

Signup and view all the flashcards

Prototyping

Creating a functional model of the system to demonstrate it meet actual needs.

Signup and view all the flashcards

Test Case Generation

Turning requirements into test cases to evaluate testability.

Signup and view all the flashcards

Requirement Review Process

Regular reviews throughout the engineering phase involving both client/user and developer.

Signup and view all the flashcards

Formal Reviews

Structured requirement reviews with documentation.

Signup and view all the flashcards

Testability of Requirements

Evaluating if requirements can be tested.

Signup and view all the flashcards

Requirement Completeness

Ensuring all aspects of a requirement are understood.

Signup and view all the flashcards

Requirement Unpredictability

Software requirements are dynamic, incomplete and evolve.

Signup and view all the flashcards

Interviews

Formal or informal conversations with stakeholders about a system's needs and functionalities.

Signup and view all the flashcards

User Stories

Realistic examples of how users interact with a system, expressed in simple language.

Signup and view all the flashcards

Storyboard

Visual representation of user interactions with a system through a sequence of images or sketches.

Signup and view all the flashcards

Ethnography

Observational research method focusing on understanding and documenting the life of individuals and their relationship with a system.

Signup and view all the flashcards

Closed Interviews

Interviews using a pre-defined set of questions to gather specific information about the system needs.

Signup and view all the flashcards

Open Interviews

Interviews designed to explore various aspects of a system to understand stakeholder needs

Signup and view all the flashcards

Stakeholder

Any individual or group with a vested interest in, or impacted by a project or system.

Signup and view all the flashcards

Domain-specific language

Specialized terminology related to a particular area of knowledge or application, often challenging for non-experts to understand.

Signup and view all the flashcards

Study Notes

Software Engineering 1 - Themenblock 2: Requirements Engineering

  • Agenda: Das Material folgt der Agenda von Prof. Dr. A. Reichenbach
  • Inhalte des Themenblocks 2: Funktionale und nicht-funktionale Anforderungen, Prozesse des Requirements-Engineerings (Anforderungsanalyse), Erhebung, Spezifikation, Validierung und Anforderungsmanagement
  • Lernziele der Veranstaltung: Konzepte von Benutzer- und Systemanforderungen verstehen, die Unterschiede zwischen funktionalen und nicht-funktionalen Anforderungen kennenlernen, die Prinzipien und Zusammenhänge im Requirements Engineering (RE) verstehen, die Organisation von Anforderungen in der Gesamtspezifikation (Lasten- und Pflichtenheft) verstehen, sowie die Notwendigkeit und Funktion des Anforderungsmanagements bei der Softwareentwicklung.
  • Requirements Engineering: Die Beschreibung dessen, was ein System leisten soll (Dienste, Funktionsweise, Einschränkungen). Anforderungen spiegeln Kundenbedürfnisse wider und dienen bestimmten Zwecken.
  • Requirements Engineering umfasst Unterprozesse: Erhebung, Analyse, Dokumentation und Überprüfung von Anforderungen
  • Was ist eine Anforderung?: Abstrakte Aussagen über einen Service, Randbedingungen bis hin zu detailierten, mathematisch beschriebenen funktionalen Spezifikationen. Interpretationsspielräume (Lastenheft) und detaillierte Definitionen (Pflichtenheft) sind wichtig. Der Begriff "Anforderungen" kann je nach Kontext verschiedene Bedeutungen haben.
  • Arten von Anforderungen:
    • Benutzeranforderungen (natürliche Sprache, Diagramme, Randbedingungen)
    • Systemanforderungen (detaillierte Auflistung von Funktionen, Services, Randbedingungen)

Bsp Mentcare System

  • Benutzeranforderungen: (Definition): Das Mentcare System soll monatliche Managementberichte über die Kosten der von jeder Klinik verordneten Medikamente erstellen.
  • Systemaforderungen: (Spezifikation): Am letzten Werktag eines Monats wird eine Zusammenfassung der verschriebenen Medikamente, deren Kosten und die verschreibenden Kliniken generiert. Der Bericht wird für den Druck nach 17:30 Uhr fertiggestellt. Der Bericht enthält Einzelheiten pro Klinik (Medikamentenname, Anzahl der Rezepte, Dosierungen und Gesamtkosten). Separate Berichte pro Dosierungseinheit (z.B. 10mg, 20mg) bei Bedarf. Zutritt zu den Berichten nur für autorisierte Nutzer (Zugangslisten).
  • Stakeholder des Mentcare Systems: Patienten, Ärzte, Pflegekräfte, Rezeptionskräfte, IT-Abteilung, medizinischer Ethik-Beauftragter, Manager der Kliniken, medizinisches Archivierungs-Personal

Anforderungen bei agilen Methoden

  • Agile Methoden: Details für Systemanforderungen werden vermieden, da Anforderungen schnell ändern. Dokumentation wird veraltet. Inkrementelles Requirements Engineering und "User Stories" werden eingesetzt. (Geschäftsanwendungen geeignet, aber nicht für kritische Systeme oder parallele Entwicklung)

Funktionale und nicht-funktionale Anforderungen

  • Funktionale Anforderungen: Definieren, was ein System tun soll (z. B. Dienstleistungen, Reaktionen auf Eingaben, Verhalten in Situationen). Kann explizit beschreiben, was das System nicht tun soll.

  • Nicht-funktionale Anforderungen: Definieren wie ein System funktionieren muss (z. B. Zeitbeschränkungen, Einhaltung von Standards, Ressourcenbedarf). Häufig auf das Gesamtsystem und nicht auf Einzel-Funktionen bezogen. Fachspezifisch vs. Generell.

Vollständigkeit und Konsistenz von Anforderungen

  • Vollständig: Die Beschreibung aller benötigten Funktionalitäten umfasst.

  • Konsistent: Keine Konflikte oder Widersprüche in den Beschreibungen sollten auftreten.

Nicht-funktionale Anforderungen (Beispiele)

  • Definition: Beschränken Dienstleistungen und Funktionen (z. B. Zuverlässigkeit, Antwortzeiten, Speicherbedarf, Programmiersprachen, Entwicklungsmethodik).
  • Relevanz: Nicht-funktionale Anforderungen sind oft wichtiger als einzelne funktionale Anforderungen.

Besonderheiten der Anforderungen

  • Ungenauigkeiten: Schwammige oder mehrdeutige Formulierungen können zu unterschiedlichen Interpretationen und damit Schwierigkeiten in der Entwicklung und Umsetzung führen.

  • Verbundenheit: Anforderungen sind oft voneinander abhängig oder beeinflussen sich gegenseitig.

Prozesse des Requirements Engineering

  • 4 generische Aktivitäten:
    • Anforderungs-Elicitation
    • Anforderungs-Analyse
    • Anforderungs-Validierung - Anforderungs-Management
  • Durchführbarkeitsstudie (Vorstufe):
  • Beurteilung ob ein Projekt realistisch und machbar ist
  • Wirtschaftlichkeit, Kosten & Zeit
  • Möglichkeiten zur Zusammenarbeit mit anderen Systemen

Erhebung und Analyse der Anforderungen

  • Stakeholder, Nutzungsszenarien: Softwareentwickler arbeiten mit der gesamten Bandbreite an Stakeholdern zusammen um das Geschäftsumfeld zu verstehen.
  • Entdeckung & Sammlung: Ermittlung benötigten Funktionalitäten, Performanz, Hardwareeinschränkungen, Verzahnung bestehender Systeme
  • Klassifizierung & Organisation: Organisieren der Anforderungen in kohärente Gruppen
  • Priorisierung & Verhandlung: Bestimmung der Priorität und Konfliktauflösung unter Stakeholdern
  • Spezifikation der Anforderungen: Dokumentation als Eingabe für die nächste Analysephase.
  • Notationen & Methoden: Nutzung von Interviews, User Stories, Storyboards & Ethnografie.

Herausforderungen bei der Anforderungs-Erhebung

  • Unpräzise Stakeholder: Stakeholder wissen oft nicht präzise, was sie wollen und geben Anforderungen missverständlich.
  • Konflikte unter Stakeholdern: Verschiedene Stakeholder haben oft widersprechende Anforderungen, die von politischen Faktoren und Veränderungen im Geschäftsfeld beeinflusst sein können.
  • Nicht abschätzbare Komplexität: Oft ist nicht von Anfang an klar, was machbar ist und was nicht.
  • Neue Anforderungen während des Prozesses: Während der Analysephase können neue Anforderungen auftreten.
  • Methoden:
    • Interviews
    • User Stories
    • Szenarios
    • Storyboards
    • Ethnographie
    • Fokussierte Ethnographie

Spezifikation der Anforderungen

  • Dokumentieren: Schriftliche Fixierung von Benutzer- und Systemaforderungen in einer Gesamtspezifikation (Software Requirements Document, kurz SRS).
  • Benutzerverständlichkeit: Benutzeranforderungen müssen für Endnutzer und Kunden verständlich sein.
  • Technische Tiefe: Systemanforderungen enthalten detailliertere technische Informationen.
  • Entwurf vermeiden: Die Spezifikation beschreibt was das System tun soll, nicht wie der Entwurf realisiert werden soll.
  • Typologie:
    • Produktanforderungen
    • Unternehmensanforderungen
    • Externe Anforderungen

Spezifikationstypen

  • Natürliche Sprache: Klar, verständlich jedoch fehleranfällig (vage und mehrdeutig)

  • Strukturierte Sprache: Reduziert Mehrdeutigkeit aber oft schwer verständlich und kompliziert zu verstehen

  • Graphische Notationen (UML): Zusammenhänge und Beziehungen zwischen Komponenten darstellen.

    • Anwendungsfalldiagramme
  • Mathematische Spezifikationen: präzise aber oft komplex für nicht-technische Personen.

Validierung der Anforderungen

  • Überprüfung: Sichern, dass Anforderungen das benötigte und erwartete System beschreiben.

  • Prüfarten: Gültigkeit, Konsistenz, Vollständigkeit, Realisierbarkeit, Verifizierbarkeit

  • Reviews: Regelmäßige Reviews von Stakeholdern (Kunde, Benutzer und Entwickler) sind notwendig.

  • Prototyping: Erstellung eines Prototypen erlaubt Endnutzer-Feedback

  • Testfälle: Ableitung von Testfällen zur Validierung.

Anforderungsmanagement

  • Dynamisches Umfeld: Anforderungen an ein Systems ändern sich während des Entwicklungsprozesses und nach der Installation weiter (Neue Bedürfnisse, Hardwareanpassungen, Gesetze).
  • Management-Prozess: Formaler Prozess für Änderungsanforderungen nötig (Identifikation, Ablauf, Richtlinien zur Dokumentation und Nachvollziehbarkeit, Werkzeuge)
  • Formaler Prozess: Gleichbehandlung aller Änderungsvorschläge, Kontrolle von Änderungen am Gesamtsystem.
  • Problemanalyse: Analyse von Problemen während des Prozesses (Entstehung, Auswirkungen, Kosten)
  • Spezialisierte Tools: Zusätzliche Tools (z.B. Jira) sind für komplexe Systeme notwendig.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

Requirements Engineering PDF

More Like This

Use Quizgecko on...
Browser
Browser