Softwaretechnik Anforderungsanalyse
46 Questions
1 Views

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

Was beschreibt das evolutionäre Prototyping am besten?

  • Es handelt sich um ein einmaliges Produkt ohne spätere Anpassungen.
  • Prototypen werden kontinuierlich weiterentwickelt. (correct)
  • Die Entwicklungszeit ist lang und teuer.
  • Das Modell wird nach der ersten Version verworfen.
  • Welches Ziel hat das explorative Prototyping?

  • Langfristige Produktpflege und -weiterentwicklung.
  • Frühe Einbindung von AnwenderInnen in die Entwicklung. (correct)
  • Vollständige Implementierung vor der ersten Benutzeranpassung.
  • Ein experimentelles Design ohne Benutzerfeedback.
  • Was ist ein Merkmal von inkrementellen Artefakten in einem Entwicklungsprozess?

  • Sie können nicht geworfen werden.
  • Sie werden schrittweise angepasst und verbessert. (correct)
  • Sie sind vor der endgültigen Abnahme vollständig funktionsfähig.
  • Sie müssen immer in der ersten Phase des Projektes erstellt werden.
  • Welche Aussage über die Entwicklungszeit von Prototypen ist korrekt?

    <p>Sie ist kurz und preisgünstig bei explorativen Prototypen. (B)</p> Signup and view all the answers

    Was ist eine der Hauptfunktionen eines Prototyps in der Analysephase?

    <p>Er dient der rechtzeitigen Klärung der Realisierbarkeit und Risiken. (A)</p> Signup and view all the answers

    Welche Phase befasst sich mit der Ermittlung der Anforderungen in der Softwareentwicklung?

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

    Was ist ein Zweck des Prototypings in der Anforderungsanalyse?

    <p>Erstellung explorativer Modelle aus den Anforderungen (B)</p> Signup and view all the answers

    Wer sind die Akteure im Kontext von Anwendungsfällen?

    <p>Anwender, die an den Anwendungsfällen teilnehmen (B)</p> Signup and view all the answers

    Welches Element wird zur Identifikation in funktionalen Anforderungen verwendet?

    <p>Anwendungsfälle und deren Beziehungen (D)</p> Signup and view all the answers

    Welche Frage wird typischerweise im Zusammenhang mit Prototypen in der Analyse gestellt?

    <p>Wie können Konzepte und Anwendungen realisierbar überprüft werden? (A)</p> Signup and view all the answers

    Was ist eine Hauptaufgabe des Sachbearbeiters im Rahmen der Programmverwaltung?

    <p>Die Anmeldung der Teilnehmer prüfen (B)</p> Signup and view all the answers

    Welches Element gehört nicht zur Strukturierung in Pakete im Rahmen der Programmverwaltung?

    <p>Teilnehmer anmelden (D)</p> Signup and view all the answers

    Welcher Schritt folgt unmittelbar nach der Prüfung der Anmeldung durch den Teilnehmer?

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

    Was ist eine Voraussetzung für die Durchführung einer Veranstaltung?

    <p>Die Anmeldung muss bestätigt werden (D)</p> Signup and view all the answers

    In welchem Bereich wird die 'ikonifizierte' Ansicht genutzt?

    <p>In der Programmverwaltung (C)</p> Signup and view all the answers

    Wie erfolgt im Allgemeinen die Prozesskette bei der Anmeldung?

    <p>Anmeldung, Prüfung, Teilnahme (A)</p> Signup and view all the answers

    Was wird durch den Katalog in der Programmverwaltung erstellt?

    <p>Ein Verzeichnis der angebotenen Veranstaltungen (C)</p> Signup and view all the answers

    Wer ist zuerst in der Prozesskette der Teilnehmer?

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

    Was beschreibt ein Geschäftsprozess?

    <p>Die zeitlich-logische Abfolge von Tätigkeiten zur Erfüllung einer betriebswirtschaftlichen Aufgabe. (B)</p> Signup and view all the answers

    Welche der folgenden Aussagen über UML ist korrekt?

    <p>Die aktuelle Version von UML ist 2.5.1. (A)</p> Signup and view all the answers

    Was ist das Hauptziel der Geschäftsprozessmodellierung?

    <p>Die Analyse und Optimierung von Geschäftsprozessen. (A)</p> Signup and view all the answers

    Welches Diagramm gehört nicht zu den UML-Diagrammtypen?

    <p>Prozessdiagramm (D)</p> Signup and view all the answers

    Welche Aussage über SysML ist korrekt?

    <p>SysML ist eine modifizierte Version von UML 2.0. (C)</p> Signup and view all the answers

    Was ist ein grobes Geschäftsprozessmodell?

    <p>Ein strategisch orientiertes Modell, das Gesamtverständnis bietet. (D)</p> Signup and view all the answers

    Welches Diagramm wird zur Modellierung des Verhaltens eines Systems verwendet?

    <p>Aktivitätsdiagramm (D)</p> Signup and view all the answers

    Wann erfolgt die Analyse des 'IST-Zustands' in der Geschäftsprozessmodellierung?

    <p>Vor der Erstellung der Anforderungsspezifikation. (A)</p> Signup and view all the answers

    Welches Ziel hat die detaillierte Geschäftsprozessmodellierung?

    <p>Finden von funktionalen Anforderungen und Anwendungsfällen. (C)</p> Signup and view all the answers

    Welche Notation wird häufig bei groben Geschäftsprozessmodellen verwendet?

    <p>ARIS (C)</p> Signup and view all the answers

    Was ist der Hauptzweck der Strukturierung im Software Engineering?

    <p>Erhöhung der Wiederverwendbarkeit (D)</p> Signup and view all the answers

    Was beschreibt eine Erweiterung (extend) eines Anwendungsfalles?

    <p>Eine Möglichkeit, einen Anwendungsfall um zusätzliche Funktionen zu erweitern (C)</p> Signup and view all the answers

    Was muss Anwendungsfall A für die Erweiterung durch Anwendungsfall B bereitstellen?

    <p>Explizite Anknüpfungspunkte (extension points) (A)</p> Signup and view all the answers

    Was ist notwendig, wenn mehrere extension points angegeben sind?

    <p>Der betroffene extension point muss in runden Klammern angegeben werden (B)</p> Signup and view all the answers

    Was beeinflusst die tatsächliche Ausführung von Anwendungsfall B bei einer Erweiterung?

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

    Was ist ein Beispiel für eine Bedingung, die für eine Erweiterung angegeben werden kann?

    <p>Das Datum der Buchung (A)</p> Signup and view all the answers

    Wie sollten zusätzliche Wünsche in der Strukturierung angegeben werden?

    <p>In eckigen Klammern (B)</p> Signup and view all the answers

    Welche Art von Anwendungsfall benötigt keine Anknüpfungspunkte?

    <p>Ein neuer, unabhängiger Anwendungsfall (B)</p> Signup and view all the answers

    Was wird durch die Nutzung von UML-Aktivitätsdiagrammen in der Seminarbuchung verdeutlicht?

    <p>Die Akteure und deren Interaktionen (C)</p> Signup and view all the answers

    Welche Aussage beschreibt einen Nachteil der digitalen Transformation, wenn Prozesse nicht optimiert sind?

    <p>Der neue digitale Prozess wird ebenfalls ineffizient. (A)</p> Signup and view all the answers

    Was beschreibt die Darstellung von internen und externen Akteuren in einem System-Kontext?

    <p>Die Kommunikationsbeziehungen innerhalb des Systems (C)</p> Signup and view all the answers

    Welche der folgenden Darstellungsformen wird NICHT für Geschäftsprozessmodellierung verwendet?

    <p>Szenarioeinsatzdiagramm (D)</p> Signup and view all the answers

    Was ist der erste Schritt im Ablauf einer Seminarbuchung?

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

    Welches der folgenden Elemente ist nicht Teil des Ablaufs einer Seminarbuchung?

    <p>Verkaufsgespräch (A)</p> Signup and view all the answers

    Was wird in einem Workflow Modeling normalerweise nicht betrachtet?

    <p>Die Motivation der Teilnehmer (D)</p> Signup and view all the answers

    Wie wird die Aufgabe des Sachbearbeiters im Seminarbuchungsprozess dargestellt?

    <p>Durch die Prüfung der Anmeldungen (A)</p> Signup and view all the answers

    Welches Ziel verfolgt die Nutzung von Prozessmodellierung im Allgemeinen?

    <p>Die Visualisierung von Abläufen zur Verbesserung (B)</p> Signup and view all the answers

    Was passiert, wenn ein ineffizienter Prozess digitalisiert wird?

    <p>Der digitale Prozess wird ebenfalls ineffizient. (A)</p> Signup and view all the answers

    Study Notes

    Vorlesung Softwaretechnik

    • Thema: Softwaretechnik, insbesondere die 3. Anforderungsanalyse
    • Dozent: Prof. Bernhard Rumpe, Software Engineering, RWTH Aachen
    • Webseite: http://www.se-rwth.de/

    3. Anforderungsanalyse – Warum, Was, Wie, Wozu?

    • Warum? Anforderungsanalyse ist für die Praxis notwendig, um Anforderungen systematisch zu erfassen und zu dokumentieren.
    • Was? Die Analysephase umfasst Use-Case-Diagramme für Anwendungsfälle, Aktivitätsdiagramme für Prozesse und Prototypen für die Analyse.
    • Wie? Die Modellierungssprachen, die Modellierungstechnik und konkrete Beispiele werden genutzt.
    • Wozu? Eine systematische Anforderungsanalyse verringert das Risiko bei der Produktentwicklung und führt zu zufriedenen Anwendern.

    3.1. Verwendete Beispiele

    • Beispiele: Seminarorganisation und Auktionssystem
    • Funktionen: Verwaltung von Seminaren und Teilnehmern, Seminarteilnehmer buchen und verwalten, Abfragen stellen, Angebotskatalog erstellen, Statistiken erstellen, Auktionsverwaltung, Teilnahme an Auktionen, Angebote mit Beschreibungen, BieterInnen und AuktionatorInnen.
    • Zugriff: Überlokal installierte Software und eine Weboberfläche
    • Sicherheit: Ein Thema, das bei der Entwicklung solcher Systeme relevant ist.

    3.2. Anforderungsermittlung

    • Literatur: Sommerville (5+6) und Balzert (Band 1, LE 2-4)
    • Phasen: Analyse, Entwurf, Implementierung, Test, Integration und Wartung.
    • Anforderungs-ermittlung: System-modellierung.

    Requirements Engineering

    • Analyse (Systemanalyse): Anforderungs-Ermittlung (Requirements elicitation), mit den wichtigen Komponenten Lastenheft und Anforderungsspezifikation
    • System-Modellierung: Produktdefinition, Funktionale Spezifikation, System-Spezifikation
    • Entwurfsphase: Welches System soll gebaut werden? (bzw. welche Aspekte eines Systems verändert werden?) Was sind die Anforderungen des Kunden? Ist es möglich, das geforderte System zu realisieren?

    Definitionen

    • Anforderungsermittlung: Feststellung der Anforderungen an das System in Zusammenarbeit mit Kunden und potentiellen Benutzern
    • Ergebnis: Anforderungsspezifikation (Pflichtenheft)
    • Systemmodellierung: Detaillierte und strukturierte Beschreibung der Anforderungen
    • Ergebnis: Funktionale Spezifikation (Produktdefinition)
    • Analyse: Oberbegriff für beide Tätigkeiten

    Bedeutung der Anforderungsermittlung

    • Kosten von Änderungen von Fehlern in der Anforderungs-ermittlung können schnell sehr stark ansteigen je später der fehler gefunden wird

    Funktionale/nicht-funktionale Anforderungen

    • Funktionale Anforderungen: Beschreibung des Systems, was es tun soll (z.B., "Das System soll einen Mechanismus zur Identifizierung von BenutzerInnen vorsehen").
    • Nicht-funktionale Anforderungen: Beschränkungen an den funktionalen Anforderungen (z.B. „Der Identifizierungsvorgang muss in höchstens 5 Sekunden abgeschlossen sein.“)
    • Mischfälle: Kombination von funktionalen und nicht-funktionalen Anforderungen

    Typen von nicht-funktionalen Anforderungen

    • Anforderungen an das Produkt: Effizienz (Zeit, Speicher), Zuverlässigkeit, Betriebsrisiken, Bedrohungen, Ergonomie, Portabilität
    • Anforderungen an den Entwicklungsprozess: Verwendung von Standards (z.B. V-Modell, UML), Implementierungstechnik
    • Externe Anforderungen: Interoperabilität (Zusammenarbeit), Juristische Anforderungen (Sicherheit, Datenschutz), Ethische Anforderungen

    Inhalte einer Anforderungsspezifikation

    • Zielsetzung, allgemeine Beschreibung: Umgebung, generelle Funktion, Restriktionen, Benutzer
    • Spezifische funktionale Anforderungen: möglichst quantitativ, deutlich identifizierbar
    • Spezifische nicht-funktionale Anforderungen: z.B. Antwortzeit, Speicherbedarf, HW/SW-Plattformen, Entwicklungs- und Produkt-Standards, erwartete Evolution
    • Formalia: Abkürzungen, Glossar, Index, Referenzen
    • Hinweis: Format zur Konsistenzsicherung

    Beispiele funktionaler Anforderungen

    • Spezifikation von Funktionen der Seminarorganisation
    • Kundendatenverwaltung (Errichtung, Änderung, Löschung von Kunden) mit Beispielen wie/F10/,/F15/,/F20/,/F30/,/F40/,/F50/ und /F55/

    Gliederung nach Versionen (Beispiel)

    • Tabellenartige Darstellung von Anforderungen und Versionen
    • Jargon: n/a (not applicable), tbd (to be discussed)

    Grobes Vorgehen bei der Anforderungs-ermittlung

    • Anforderungsermittlung, Anforderungs-Validation, Fachliche Analyse, Sammeln der Anforderungen, Integrieren, Einordnen, Priorisierung, Konflikt-Auflösung, System-Modellierung, Anforderungsmanagement
    • Management: Anforderungsdatenbanken, Verfolgung von Querbezügen, Iteratives Vorgehen.

    Analysephase als Kommunikationsleistung

    • Kommunikation: Kreativität, Analyse und kommunikative Leistung bei der Anforderungs-ermittlung, Bedeutung sozialer Kompetenz
    • Werkzeuge: Urteilskraft, Kreativität und Erfahrungen, Organisationsprinzipien, Hilfsmittel des Systemanalytikers

    Probleme bei der Anforderungsermittlung

    • Viele Beteiligte: Kunden, Benutzer, Informatiker, Betriebswirtschaftler, Management.
    • Wissensprobleme: Kunden wissen oft nicht, was sie wirklich wollen.
    • Inkonsistente Begriffe: Verschiedene Beteiligte verwenden oft inkonsistente oder nicht allgemein verständliche Begriffe
    • Widersprüchliche Ziele oder veränderliche Rahmenbedingungen: Stakeholder haben unterschiedliche Vorstellungen oder Ziele.

    Modelle in der Analysephase

    • Geschäftsprozessmodelle (Business Process Models): Darstellung der Prozesse im Unternehmen
    • Anwendungsfallmodelle (Use Case Models): Darstellung des Systems aus Sicht des Benutzers, Aktionen, Akteure, Systemgrenze
    • Klassenmodelle (Domain Models): Darstellung der Klassen und Objekte im System
    • Hinweis: Abstraktion von Originalen und Zweck

    Modellierungssprachen & Standards

    • General Purpose Languages: Versuche, viele verschiedene Zwecke mit vereinheitlichten Standards zu vereinen (z.B. Object Management Group, OMG)
    • Unified Modeling Language (UML): Standardisierte Modellierungssprache mit vielen Diagrammtypen für unterschiedliche Zwecke
    • Systems Modeling Language (SysML): Modellierung komplexer Systeme, teilweise basiert auf UML 2.0
    • Domänenspezifische Sprachen: Weitere Aspekte werden in Masterstudiengängen vertieft.

    Diagrammtypen in UML

    • Strukturdiagramm (z. B. Klassendiagramm, Objektdiagramm): Struktur der Komponenten oder Objekte
    • Verhaltensdiagramm (z. B. Aktivitäts-, Zustands-, Use-Case-Diagramm, Kommunikations-, Sequenz-, Zeitdiagramm): Verhalten des Systems

    Geschäftsprozess (Business Process)

    • Definition: Zeitlich-logische Abfolge von Tätigkeiten zur Erfüllung betriebswirtschaftlicher Aufgaben.
    • Modellierung: Beschreibung und Optimierung des Geschäftsprozesses, Ableitung flexibler Infrastruktur zur Durchführung von Prozessen.

    Geschäftsprozess (Business Process) in der Systemanalyse

    • Zeitlicher Bezug: Vor der Erstellung der Anforderungsspezifikation (IST-Zustand), Analyse von Zielen und des SOLL-Zustandes
    • Geschäftsprozessmodellierung: Grobe und detaillierte Geschäftsprozessmodelle für die Analyse von Beteiligten und globalen Belangen, sowie zur Identifikation von funktionalen Anforderungen und Anwendungsfällen

    Grobes Geschäftsprozessmodell

    • Strategieorientierung: Gesamtverständnis des Unternehmens und der Aufgabenstellung (z.B. Marktforschung, Seminarentwicklung, Programm Planung, Durchführung, Vertrieb, Schulung, etc.). Beispielhafte Darstellung an ARIS von Prof. Scheer

    Detailliertes Geschäftsprozessmodell (Beispiele)

    • Seminarbuchung: Ablauf, z.B. Anmeldung, Verteilung/Verteiler, Prüfung, Vorbereitung, Durchführung, Abrechnung • Externe Kommunikation: Kommunikation mit anderen System/Systemen und Akteuren.
    • Wichtig: Detaillierte Visualisierung der Geschäftsprozesse, oft als UML-Aktivitätsdiagramm

    Digitale Transformation

    • Zentrale Aussage: Digitalisierung von Ineffizienten Prozessen kann auch zu Ineffizienten digitalen Prozessen führen.

    Was haben wir gelernt (Anforderungsanalyse)

    • Anforderungsanalyse (Systemanalyse): Zwei Teile: Anforderungs-Ermittlung und Systemmodellierung
    • Zwei Arten von Anforderungen: Funktionale (was das System tun sollte) und nicht funktionale (wie erfüllt)
    • Modelle in der Analysephase: Anwendung von Modellen in der Analysephase – Anwendung von UML

    3.4. Modellierung von Aktivitäten

    • Grundfrage: Warum, Was, Wie, Wozu?
    • Erklärungen zu unterschiedlichen Konzepten, z.B. Swimlane, Aktionen, Kontrollfluss, Objektfluss, Start- und Endknoten.
    • Beispiele, wie UML Aktivitätsdiagramme angewendet werden: Archivierung von Stundenzetteln

    3.5. Prototyping

    • Warum? Realisierbarkeit von Konzepten und Anwendungen überprüfen und Risiken minimieren
    • Was? Erstellung von explorativen und experimentellen Prototypen für die Analyse
    • Wie? Erstellung des Prototyps nach bestehenden Anforderungen, Anwenderschnittstellen/Feedback, Verbesserung
    • Wozu? Planbarkeit, besserer Verständlichkeit, frühzeitige Einbindung/Validierung von Anforderungen durch AnwenderInnen

    Prototyping und Prototypen

    • Klassifikation verschiedener Prototypenarten, z.B. explorativ, experimentell, evolutionär. Beispiele der Anwendung von Prototypen in der Softwareentwicklung

    Weitere Informationen

    • Literatur: M. Hitz/G. Kappel, „UML @ Work“, dpunkt 1999
    • Verweise: Web-Seite (RWTH-Aachen) und andere Quellen (Literatur, Dokumente)

    Studying That Suits You

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

    Quiz Team

    Related Documents

    Description

    In diesem Quiz werden die Grundlagen der Anforderungsanalyse in der Softwaretechnik behandelt. Sie erfahren, warum die Anforderungsanalyse wichtig ist, welche Methoden und Techniken verwendet werden und wozu sie dient. Beispiele wie Seminarorganisation und Auktionssystem werden ebenfalls untersucht.

    More Like This

    Use Quizgecko on...
    Browser
    Browser