Anforderungsanalyse. Software Engineering I WS 2010/2011. Dr.-Ing. Ina Schaefer 1. Software Systems Engineering TU Braunschweig

Ähnliche Dokumente
Einführung in die Softwaretechnik 8. Anforderungsanalyse

Pflichtenheft. Software Engineering I WS 2011/2012. Dr.-Ing. Ina Schaefer 1. Software Systems Engineering TU Braunschweig

Grundlagen der Anforderungsanalyse. 28. Oktober 2014

Softwarequalität: Einführung. 15. April 2015

Lastenheft. Inhaltsverzeichnis. Gruppe: swp09-5. Projektleiterin: Anne Vogler am: 28. April Zielbestimmungen 2. 2 Produkteinsatz 2

Pflichtenheft. 1 Zielbestimmungen Musskriterien Wunschkriterien Abgrenzungskriterien... 2

Gruppe: swp Gruppenleiter: U. Seiler Aufgabenstellung 3. Lastenheft

Pflichtenheft: Wettervorhersagen via Webservice

So#ware Engineering Anforderungsanalyse

Requirements Engineering für IT Systeme

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler

FUTURE NETWORK REQUIREMENTS ENGINEERING

How to do? Projekte - Zeiterfassung

SWT II Projekt. Chat - Anwendung. Pflichtenheft 2000 SWT

12 Nicht-funktionale Anforderungen

Vgl. Kapitel 4 aus Systematisches Requirements Engineering, Christoph Ebert

Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist

Umfrage zum Informationsbedarf im Requirements Engineering

Übungsklausur vom 7. Dez. 2007

Fachhochschule der Wirtschaft Paderborn (FHDW) Fachbereich angewandte Informatik. Pflichtenheft. Anwendungsentwicklung Semester 5

Anmeldeverfahren. Inhalt. 1. Einleitung und Hinweise

Software-Engineering Grundlagen des Software-Engineering

SWE12 Übungen Software-Engineering

Erstellen und Bearbeiten von Inhalten (Assets)

Software Engineering. 3. Anforderungsanalyse. Franz-Josef Elmer, Universität Basel, WS 2006/07

«Eine Person ist funktional gesund, wenn sie möglichst kompetent mit einem möglichst gesunden Körper an möglichst normalisierten Lebensbereichen

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

Anforderungsanalyse, Requirements Engineering

Use Cases. Use Cases

Übungsblatt 4: Requirements Engineering (2) (für die Übungswoche )

Software Engineering. 3. Analyse und Anforderungsmanagement

Einführung und Motivation

Pflichtenheft Version 1.0. Mäxchen/Meiern iphone App

Das System sollte den Benutzer immer auf dem Laufenden halten, indem es angemessenes Feedback in einer angemessenen Zeit liefert.

Die Software für Visualisierung und Analyse von Strukturinformationen aus EDM- und PDM-Systemen.

LC-Ne s-letter. Neuerungen bei LIFTCALC

Professionelle Seminare im Bereich MS-Office

Qualitätssicherung. Was ist Qualität?

Hilfe zum Service Einzug

Anforderungsanalyse. Basis: Grundlage für Erfolg / Misserfolg. Gute Qualität, moderne Techniken... Reicht nicht!

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

Fragebogen ISONORM 9241/110-S

BSV Software Support Mobile Portal (SMP) Stand

Unsere Kunden erzählen keine Geschichten. Ursula Meseberg microtool GmbH Berlin

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Fragebogen: Abschlussbefragung

Der große VideoClip- Wettbewerb von Media Markt.

Softwareentwicklungsprozess im Praktikum. 23. April 2015

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Urlaubsregel in David

Lastenheft. 2.0 Anforderungen an den Inhalt. 2.1 Soll Aufgabenbeschreibung sein

Das Pflichtenheft. Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth Ains A-Systemhaus GmbH Berlin

Hilfe zur Urlaubsplanung und Zeiterfassung

Anleitung zum LPI ATP Portal

Zugriff auf das Across-Ticketsystem

Software-Engineering

Look Inside: desite. modellorientiertes Arbeiten im Bauwesen. B.I.M.

Fragebogen zur Anforderungsanalyse

Exkurs: Formatvorlage für Anforderungsanalyse-Dokument

macs Support Ticket System

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche

Kommunikations-Management

Auswahl alter Klausuraufgaben aus einer ähnlichen Vorlesung Maßgeblich für die Prüfung sind die Vorlesungsinhalte!

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

4.1 Download der App über den Play Store

Anleitung zur Benutzung des jobup.ch Stellensuchendekontos

RIGGTEK. Dissolution Test Systems. DissoPrep Browser-Interface

Benutzerverwaltung Business- & Company-Paket

10 Gesamtsystemspezifikation

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Anti-Botnet-Beratungszentrum. Windows XP in fünf Schritten absichern

Dynamisch generierte grafische Übersichtsseiten für Learning-Content-Management-Systeme. Unterstützung von Grafiken für Prüfungsauswahl.

3. GLIEDERUNG. Aufgabe:

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Software Engineering. Sommersemester 2012, Dr. Andreas Metzger

Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich

Einstellungen für SEPA-Lastschriften oder SEPA Dauerlastschriften in der VR-NetWorld Software 5.0

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

1. Einführung. 2. Weitere Konten anlegen

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Softwaretechnik. Fomuso Ekellem WS 2011/12

Eine doppelte bzw. mehrfache Erfassung eines Kunden ist unbedingt zu vermeiden.

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

Klausur Softwaretechnik Feb. 2008

Registrierung am Elterninformationssysytem: ClaXss Infoline

Schnittstelle DIGI-Zeiterfassung

Codex Newsletter. Allgemeines. Codex Newsletter

Lieber SPAMRobin -Kunde!

Das Persönliche Budget in verständlicher Sprache

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager -rückläufer Script. combit GmbH Untere Laube Konstanz

Loggen Sie sich in Ihrem teamspace Team ein, wechseln Sie bitte zur Verwaltung und klicken Sie dort auf den Punkt Synchronisation.

Informationen zu den regionalen Startseiten

Zimmertypen. Zimmertypen anlegen

SEPA-Anleitung zum Release 3.09

Dokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser

Faktura. IT.S FAIR Faktura. Handbuch. Dauner Str.12, D Mönchengladbach, Hotline: 0900/ (1,30 /Min)

Softwareentwicklungspraktikum Sommersemester Feinentwurf

Transkript:

Anforderungsanalyse Software Engineering I WS 2010/2011 Dr.-Ing. Ina Schaefer 1 Software Systems Engineering TU Braunschweig 1 Mit Folien von Prof. Dr. K. Ostermann/Dr. Chr. Kästner und Dr. A. Herrmann Ina Schaefer SE I - WS 2011/2011 1

Inhalt der Vorlesung 1. Motivation für Anforderungsanalyse 2. Anforderungsanalyse Grundbegriffe Aufgaben Anforderungsanalyse und Anforderungsvalidierung 3. Beschreibung von Anforderungen Anwendungsfälle Lastenheft Ina Schaefer SE I - WS 2011/2011 2

Motivation für Anforderungsanalyse Motivation!"#$%&'()&*"+&,(-./(0$1 Ina Schaefer 8 2(%34.)#%0&(%&*($&563/'")$/$-.%(7 SE I - WS 2011/2011 3

Motivation für Anforderungsanalyse Warum Anforderungsanalyse? Problemquellen bei Software-Projekten: Unvollständige Anforderungen 13.1% Kunden nicht ausreichend einbezogen 12.4 % Mittel nicht ausreichend 10.6 % Unrealistische Erwartungen 9.9 % Mangelnde Unterstützung durch Management 9.3 % Änderungen in den Anforderungen 8.7 % mangelnde Planung 8.1 % (nach [CHAOS Report, Standish Group 1995]) Ina Schaefer SE I - WS 2011/2011 4

Motivation für Anforderungsanalyse Probleme bei der Anforderungsanalyse Kunden wissen nicht was sie wirklich wollen. Kunden benutzen ihre eigene Fachsprache. Verschiedene Stakeholder 2 können widersprüchliche Anforderungen haben. Politische und organisatorische Faktoren können Anforderungen beeinflussen. Anforderungen ändern sich während der Analyse und Entwicklung. Neue Stakeholder mischen sich ein. 2 Stakeholder = Interessierte / Betroffene / Projektbeteiligte / Anspruchsgruppen Ina Schaefer SE I - WS 2011/2011 5

Anforderungsanalyse Grundbegriffe Stakeholder Einzelpersonen und Organisationen die aktiv an einem Projekt beteiligt sind. deren Interessen als Folge der Projektdurchführung oder des Projektabschlusses positiv oder negativ beeinflusst werden können. die das Projekt und seine Ergebnisse beeinflussen. Ina Schaefer SE I - WS 2011/2011 6

Anforderungen Anforderungsanalyse Grundbegriffe Benutzeranforderungen Aussagen in natürlicher Sprache, sowie Diagramme zur Beschreibung der Dienste, die das System leisten soll, und der Randbedingungen, unter denen es betrieben wird. (Systembeschreibung aus Kundensicht, Lastenheft) Systemanforderungen Detaillierte Festlegung von Funktionen, Diensten und Beschränkungen. Beschreibung, was implementiert werden soll. (Systembeschreibung aus technischer Sicht, Pflichtenheft) Ina Schaefer SE I - WS 2011/2011 7

Anforderungsanalyse Grundbegriffe #$%&'()'*$+,-.&/*0)$1) B2,C7,1CD5E Zusammenhang=2,1)$> Benutzer-?%37@>1)$> FF# 85? und Systemanforderungen G9= #$234,)!"#"$%&'()(*#"+", #$%&'()'*$+,- 5'07113*$+!-%./+-%&%)$" %*+0+$($+1), #$%&'()'*$+,- 8:);7%7/217&$ <=2,1)$>)%1<! "-%./+-%&%)$" "4%0+5+0($+1), 84,1)0-9&()337)'*$+!"#"$%&'&12%**+)3, A*$()$- #$%&'()'*$+)$?%37@>1)$>)%1 "#$%&'()%*+, -.,/(0(&*'()%! "#"$%& "4%0+5+0($+1)1 5$16*'%!" Ina Schaefer SE I - WS 2011/2011 8

Anforderungsanalyse Grundbegriffe Funktionale und Nicht-funktionale Anforderungen Funktionale Anforderungen Was soll das System leisten? Welche Dienste soll es anbieten? Eingaben, Verarbeitungen, Ausgaben Verhalten in bestimmten Situationen, ggf. was soll es explizit nicht tun Nicht-funktionale Anforderungen Wie soll das System/einzelne Funktionen arbeiten? Qualitätsanforderungen wie Performanz und Zuverlässigkeit Anforderungen an die Benutzbarkeit des Systems Ina Schaefer SE I - WS 2011/2011 9

Anforderungsanalyse Grundbegriffe Beispiel: Funktionale Anforderungen Funktion "Vorlesung in Vorlesungverzeichnis eintragen" Eingaben: Raum, Zeit und Titel einer Vorlesung. Verarbeitungsschritte: Prüfe, ob der Vorlesungstitel schon vergeben ist Prüfe, ob der Raum zur angegebenen Zeit schon vergeben ist Wenn nicht, wird die neue Vorlesung eingetragen und die Daten der Vorlesung werden angezeigt. Falls vergeben, wird die Vorlesung nicht eingetragen und eine entsprechende Fehlermeldung wird angezeigt. Ausgaben: Die Vorlesung wird angezeigt oder ein Fehler wird gemeldet. Ina Schaefer SE I - WS 2011/2011 10

Anforderungsanalyse Grundbegriffe Beispiel: Funktionale Anforderungen (2) Aktionen, die vom System ausgeführt werden sollen Bsp.: Das System muss Vorlesungen in die DB aufnehmen können. Systeminteraktionen, die dem Nutzer ermöglicht werden Bsp.: Das System muss es dem Administrator beim Eintragen einer Vorlesung ermöglichen ermöglichen, Raum, Zeit und Titel einzugeben. allg. funkt. Vereinbarungen u. Einschränkungen Bsp.: Der Client ist für den Kommunikationsaufbau zuständig. Ina Schaefer SE I - WS 2011/2011 11

Anforderungsanalyse Grundbegriffe Nicht-funktionale Anforderungen!"#$%&'()*%"+),-./0)'+12.1()3.) 89 4")'5$1()3/")/2"./6+'%7,1.%.#$)"* Ina Schaefer SE I - WS 2011/2011 12

Anforderungsanalyse Grundbegriffe Nicht-funktionale Anforderungen (2) NFR 3 umfassen Qualitätsanforderungen an Produkt und Prozess. Beschreibung von NFR oft vernachlässigt, oft unsystematisch und ungenau. NFR müssen integriert mit FR erfasst und spezifiziert werden. NFR priorisieren nach Kosten/Nutzen. NFR werden in der Praxis meist sehr ungenau erfasst. 3 NFR = Non-functional Requirements Ina Schaefer SE I - WS 2011/2011 13

Anforderungsanalyse Grundbegriffe Beispiele für Nicht-funktionale Anforderungen Technische Anforderungen: Das System muss mit Java entwickelt werden und muss in der Sun Java VM 1.5 laufen. Ergonomische Anforderungen Das System muss die gespeicherten Objekte formatiert ausgeben können (Formatvorgabe). Die Benutzerführung erfolgt in deutsch. Anforderungen an die Dienstqualität Das System muss jede Anfrage des Benutzers innerhalb von 30 Sekunden ausführen (auf System XY). Der Speicherbedarf darf 512MB nicht übersteigen. Ina Schaefer SE I - WS 2011/2011 14

Anforderungsanalyse Grundbegriffe Beispiele für Nicht-funktionale Anforderungen (2) Zuverlässigkeit Die Verfügbarkeit des Systems muss bei 99.999 % liegen. Anforderungen an den Entwicklungsprozess Der Entwickler muss mit dem Kunden monatliche Reviews der zu erstellenden Dokumente durchführen. Rechtlich-vertragliche Anforderungen Der Kunde leistet für jeden abgenommenen Meilenstein ein Drittel der vertraglich vereinbarten Summe für die Entwicklung des Systems. Die deutsche Datenschutzrichtlinie muss erfüllt sein. Ina Schaefer SE I - WS 2011/2011 15

Anforderungsanalyse Aufgaben Bestandteile der Anforderungsanalyse Anforderungsermittlung Anforderungsspezifikation Anforderungsanalyse Anforderungsvalidierung Anforderungsmanagement Ina Schaefer SE I - WS 2011/2011 16

Anforderungsanalyse Aufgaben Aufgaben in der Anforderungsanalyse Anforderungsermittlung: Sammeln einer vollständige Menge von Anforderungen von Stakeholdern. Anforderungsformulierung: ermittelte Anforderungen so beschreiben, dass sie eindeutig, testbar und verständlich sind. Anforderungsanalyse: Klassifizierung, Bewertung, Vergleich und Prüfung der ermittelten Anforderungen Ina Schaefer SE I - WS 2011/2011 17

Anforderungsanalyse Aufgaben Aufgaben in der Anforderungsanalyse (2) Anforderungsvalidierung: Die Kunst, zu richtigen und widerspruchsfrei formulierten Anforderungen zu gelangen. Anforderungsmanagement: Prüfung und Änderung von Anforderungen. Ina Schaefer SE I - WS 2011/2011 18

Anforderungsanalyse Aufgaben Methoden zur Anforderungsermittlung Interviews Focus Group Fragebögen Dokumentenanalyse Beobachtungen Prototyping Ina Schaefer SE I - WS 2011/2011 19

Anforderungsanalyse Qualitätsmerkmale für Software Anforderungsanalyse und Anforderungsvalidierung nach ISO 9126/ DIN 66272: Funktionalität Angemessenheit Sicherheit Genauigkeit der Berechnung Interoperabilität Konformanz zu Standards Benutzbarkeit Verständlichkeit Erlernbarkeit Bedienbarkeit Effizienz Zeitverhalten Verbrauchsverhalten Ina Schaefer SE I - WS 2011/2011 20

Anforderungsanalyse Qualitätsmerkmale für Software (2) Anforderungsanalyse und Anforderungsvalidierung Zuverlässigkeit Reife Fehlertoleranz Wiederherstellbarkeit Änderbarkeit Analysierbarkeit Modifizierbarkeit Stabilität Prüfbarkeit Übertragbarkeit Anpassbarkeit Installierbarkeit Konformanz zu Standards Austauschbarkeit Ina Schaefer SE I - WS 2011/2011 21

Anforderungsanalyse Was sind gute Anforderungen? Anforderungsanalyse und Anforderungsvalidierung eindeutig (nur eine mögliche Interpretation) vollständig ( alle nicht-funktionalen Anforderungen, alle Systemreaktionen - auch auf ungültige Eingaben, explizite Kennzeichnungen von offenen Punkten) konsistent (keine Widersprüche, konsistente Terminologie) korrekt (nur richtige Anforderungen) Ina Schaefer SE I - WS 2011/2011 22

Anforderungsanalyse Was sind gute Anforderungen? (2) Anforderungsanalyse und Anforderungsvalidierung verifizierbar (durch ein Verfahren, z.b. Messen, überprüfbar) gewichtet (priorisiert bzgl. Wichtigkeit und Stabilität) änderbar (klare Struktur, keine Redundanz) nachvollziehbar (Quelle der Anforderungen festhalten, eindeutige Identifikatoren) [IEEE Std. 830-1998] Ina Schaefer SE I - WS 2011/2011 23

Anforderungsanalyse Anforderungsanalyse und Anforderungsvalidierung Klassifikation von Anforderungen Zusammengehörigkeit und Überlappungen von Anforderungen in einer großen Menge erkennen (z.b. von unterschiedlichen Autoren) Vollständigkeit der Anforderungen prüfen fehlende Anforderungen erkennen Ausschnitte aus dem Anforderungsdokument für bestimmte Rollen erzeugen ( Sichten ) Ina Schaefer SE I - WS 2011/2011 24

Anforderungsanalyse Anforderungsanalyse und Anforderungsvalidierung Kriterien zur Klassifikation Vermarktbarkeit (Features) Abhängigkeiten, z.b. technische Abhängigkeiten Gegenstand der Anforderung: Systemfunktionalität, Benutzerschnittstelle, Datenbank, Kommunikation, NFA (z.b. Performanz) Betroffene Benutzergruppe: System-Administrator, Verwaltungsangestellter, Lagerarbeiter,... Priorität der Anforderung: essentiell, notwendig, wünschenswert Kosten einer Anforderung Ina Schaefer SE I - WS 2011/2011 25

Anforderungsanalyse Anforderungsanalyse und Anforderungsvalidierung Priorisierung von Anforderungen Grundlage von technischen und Managenemt-Entscheidungen Kompromisse zwischen in Konflikt stehenden Anforderungen finden Releases der Software planen (zuerst die wichtigen Anforderungen) Ina Schaefer SE I - WS 2011/2011 26

Anforderungsanalyse Anforderungsanalyse und Anforderungsvalidierung Prioritäten von Anforderungen Essentiell: die Anforderung muss implementiert werden, sonst ist das System nutzlos Notwendig: das System ist ohne Umsetzung dieser Anforderung weniger effizient/effektiv Wünschenswert: das System wäre mit dieser Anforderung attraktiver Ina Schaefer SE I - WS 2011/2011 27

Anforderungsanalyse Anforderungsanalyse und Anforderungsvalidierung Prüfung von Anforderungen Wird der Bedarf des Kunden vollständig abgedeckt? Verständlich formuliert? Konsistent mit anderen Anforderungen? Realistisch mit Budget und Technologie? Anforderung prüfbar? Änderbar ohne Einfluss auf andere Anforderungen? Wichtig: Regelmäßige Reviews Kunden und potentielle Benutzer in Anforderungsanalyse einbeziehen. Ina Schaefer SE I - WS 2011/2011 28

Abgrenzungskriterien Anforderungsanalyse Anforderungsanalyse und Anforderungsvalidierung Was soll nicht gemacht werden? Sinnvoll, dies expliziert zu klären. Dem Kunden klar machen, worauf er verzichtet. Schutz vor Änderungsanträgen Ina Schaefer SE I - WS 2011/2011 29

Anforderungsanalyse Abgrenzungskriterien (2) Anforderungsanalyse und Anforderungsvalidierung Beispiele: Kein Fokus auf intuitive Bedienung, sondern Spezialsoftware für geschulte Benutzer. Schützt nicht vor Fehlern des Benutzers Multilinguale Benutzeroberfläche nicht geplant Ina Schaefer SE I - WS 2011/2011 30

Beschreibung von Anforderungen Anwendungsfälle (Use Cases) Anwendungsfälle Grundidee: Gliederung der Funktionalität in logisch zusammengehörige und handliche funktionale Einheiten, Beschreibung in standardisierter Form Anwendungsfall Abgeschlossene, zusammenhängende Einheit; Teil der Funktionalität des Systems Ina Schaefer SE I - WS 2011/2011 31

Beschreibung von Anforderungen Anwendungsfälle Anwendungsfallbeschreibung Titel: Kurzbeschreibung: Aktoren: Vorbedingungen: Beschreibung des Ablaufs: Auswirkungen: Anmerkungen: Ina Schaefer SE I - WS 2011/2011 32

Beschreibung von Anforderungen Beispiel Anwendungsfall Anwendungsfälle Titel: Vorlesung eintragen Kurzbeschreibung: Dozent gibt Raum, Zeit und Titel einer Vorlesung ein und legt einen Vorlesungseintrag an. Aktor: Dozent Vorbedingungen: Eine Vorlesung mit diesem Titel gibt es noch nicht. Beschreibung des Ablaufs: Prüfe, ob der Raum zur angegebenen Zeit schon vergeben ist Wenn nicht, wird die neue Vorlesung eingetragen und die Daten der Vorlesung werden angezeigt. Falls vergeben, wird die Vorlesung nicht eingetragen und eine entsprechende Fehlermeldung wird angezeigt. Auswirkungen: Die Vorlesung wird angezeigt oder ein Fehler wird gemeldet. Anmerkungen: Ina Schaefer SE I - WS 2011/2011 33

Beschreibung von Anforderungen Anwendungsfälle Aktoren Aktor Objekt der Systemumgebung, das mit dem System interagiert (und einen oder mehrere Anwendungsfälle auslösen kann). Aktoren können Personen (System-Nutzer), externe Geräte oder mit dem System verbundene Nachbarsysteme sein. Aktoren tauschen mit dem System Nachrichten aus und können als Sender und/oder Empfänger von Nachrichten auftreten. Aktoren sind i.a. selbst nicht Bestandteile des Systems. Oft müssen Daten über sie jedoch (z.b. zur Regelung der Zugangsberechtigung) verwaltet werden. Ina Schaefer SE I - WS 2011/2011 34

Beschreibung von Anforderungen Anwendungsfälle Use Case Diagramme!"#$#%&#'()%'*%+#%,-%./0 Bestandteile: Aktor Use Case mit Bezeichner B Systemgrenze mit Systembezeichner S Kommunikationsbeziehung zwischen Aktoren und Anwendungsfällen Beziehung zwischen Anwendungsfällen "! ##$%&$'())*+++++++ ##,'-./($))! *8! *% <#! 6> 6>! B)?= *%! <# *% 9:!2%0453-%.'2%',2# Ina Schaefer SE I - WS 2011/2011 35

Beschreibung von Anforderungen Anwendungsfälle Beziehungen zwischen Use Cases!"#$"%&'("')#*$+,%"')-'*"'.&'(+/011"') - - -!!)%*+,&"''.!!"#$"%&''(((((((.! -&+/3%4&'();6')-'*"'.&'(+/811)-)+,%1$"<7) Ausführung von Anwendungsfall A schließt.$")-&+/3%4&'();6')-'*"'.&'(+/811)!)"$'=) die Ausführung von Anwendungsfall B ein.!!+>?)@-&/748()a"84a"$7"'@)+,%1$"<7)@b8%1&'() Beispiel: ;"48'18++"'@)"$'= Auftrag bearbeiten schließt Zahlung! -&+/3%4&'();6')-'*"'.&'(+/811)-)98'') veranlassen ein. C&'7"4)A"+7$DD7"')!".$'(&'("'E)"4*"$7"47) *"4."').&4,%)"$'")-&+/3%4&'();6') -'*"'.&'(+/811)!=)!!+>?)!"$D)@-&/748()A"84A"$7"'@)*$4.)F /811+) "$'")-'/48(").8/34);6418()F '6,%)"$')G87816() ;"4+8'.7=! -'*"'.&'(+/811)-)("'"481$+$"47) -'*"'.&'(+/811)!H).=%=)!)+7"%7)/34)"$'") I"'(");6')5>"#$81/011"');6')-=))!!+>?)@-&/748()A"84A"$7"'@)("'"481$+$"47) Ina Schaefer SE I - WS 2011/2011 36

Beschreibung von Anforderungen Anwendungsfälle!"#$"%&'("')#*$+,%"')-'*"'.&'(+/011"') Beziehungen zwischen Use Cases (2) - - :: -.!!)%*+,&"''.!!"#$"%&''(((((((.! -&+/3%4&'();6')-'*"'.&'(+/811)-)+,%1$"<7).$")-&+/3%4&'();6')-'*"'.&'(+/811)!)"$'=)!!+>?)@-&/748()A"84A"$7"'@)+,%1$"<7)@B8%1&'() Anwendungsfall ;"48'18++"'@)"$'= A kann (unter bestimmten! -&+/3%4&'();6')-'*"'.&'(+/811)-)98'') C&'7"4)A"+7$DD7"')!".$'(&'("'E)"4*"$7"47) Bedingungen) erweitert werden durch *"4."').&4,%)"$'")-&+/3%4&'();6') Anwendungsfall B. -'*"'.&'(+/811)!=)! Beispiel:!+>?)!"$D)@-&/748()A"84A"$7"'@)*$4.)F Bei Auftrag bearbeiten/811+) wird - falls angefragt "$'")-'/48(").8/34);6418()F - noch Katalog '6,%)"$')G87816() versandt. ;"4+8'.7=! -'*"'.&'(+/811)-)("'"481$+$"47) -'*"'.&'(+/811)!H).=%=)!)+7"%7)/34)"$'") Anwendungsfall A generalisiert I"'(");6')5>"#$81/011"');6')-=)) Anwendungsfall B, d.h. B steht für eine!!+>?)@-&/748()a"84a"$7"'@)("'"481$+$"47) Menge @G8&/8&/748()A"84A"$7"'@)&'.) von Spezialfällen von A. @J"498&/+8&/748()A"84A"$7"'@) Beispiel: Auftrag bearbeiten generalisiert Kaufauftrag 2$'/3%4&'()$').$")56/7*84"7",%'$9 bearbeiten und Verkaufsauftrag bearbeiten. Ina Schaefer SE I - WS 2011/2011 37

Beschreibung von Anforderungen Beispiel: Use Case Diagramm Anwendungsfälle #$%#"&'("#)("#)*+,-"$(.)/")01)2$*+&&0#+23+44(!""#$%&'(%&)*+&!")19A"3,&-./ 0%#-./$"1"2 6"#7.8& "#9&"::"2,&+**' 3+&"24523"#2 Q%"3+983 "#$%&'()#$%*+,+-&/#30(013,-(0")(=1)0")(>?(.1984+9")@")19A"3B(+1$2"&C$9D(0" #)"(E")2"(F8)(G8$")D(H&+$,-")(80"3(=#$9")(A136,:2"@")(/#&&I( "$,-3"#@1)2(0"$(.@&+1*$' E#9(J"0"4(A136,:2"2"@")")(796,:("3-C-9(0+$(7K$9"4(0#"(.)A+-&(0"3( Ina3"2#$93#"39")(796,:"($8/#"(0#"(L+2"$2"$+49+)A+-& Schaefer SE I - WS 2011/2011 *63(0#"(@"93"**")0"(=+9"283 38

Beschreibung von Anforderungen Anwendungsfälle Beispiel: Use Case Diagramm (2) Anwendungsfallbeschreibung Title: Stück zurückgeben Kurzbeschreibung: Rückgabe von Leergut Aktor: Kunden (= Automatenbenutzer) Vorbedingung: Automat akzeptiert Leergut, Beschreibung des Ablaufs: Bei Eingabe, Erhöhung von Anzahl der registrierten Stücke sowie die Tagesgesamtanzahl für die betreffende Kategorie. Bei Druck auf Quittungsknopf, Ausdruck von Quittung über alle abgelieferten Stücke und deren Gesamtanzahl. Auswirkungen: Quittung wird ausgegeben. Anmerkungen: Ina Schaefer SE I - WS 2011/2011 39

Beschreibung von Anforderungen Anwendungsfälle Beispiel: Größeres Use Case Diagramm "#$"%"&'("#&)#"*+',-."-/0-1&23**/#31%344!!"#$%&'())!!"#$%&'())!!"#$%&'()) 56 Ina Schaefer SE I - WS 2011/2011 40

Beschreibung von Anforderungen Lastenheft Lastenheft Lastenheft Vom Auftraggeber festgelegte Gesamtheit der Forderungen an die Lieferungen und Leistungen eines Auftragnehmers an den Auftrag. [DIN69905] Knappe Beschreibung der fachlichen Basisanforderungen aus Sicht des Auftraggebers/Kunde Beschreibung des WAS und WOFÜR Grundlage für das Pflichtenheft 4 Festes Gliederungsschema 4 Beschreibung des Systemrealisierung aus Sicht des Auftragnehmers/Entwicklers Ina Schaefer SE I - WS 2011/2011 41

Beschreibung von Anforderungen Lastenheft Gliederungsschema des Lastenhefts Zielbestimmung Welche Ziele sollen durch den Einsatz der Software erreicht werden? Produkteinsatz Für welche Anwendungsbereiche und Zielgruppen ist die Software vorgesehen? Produktübersicht In welcher Umgebung oder welchem Kontext soll die Software arbeiten? Ina Schaefer SE I - WS 2011/2011 42

Beschreibung von Anforderungen Lastenheft Gliederungsschema des Lastenhefts (2) Produktfunktionen Was sind die Hauptfunktionen des Produktes aus Sicht des Auftraggebers? Die Hauptfunktionen (Kernfunktionen) werden typischerweise einzeln gekennzeichnet um sich in späteren Dokumenten auf sie beziehen zu können. Hauptfunktionen sind beispielsweise Anzeigefunktionen, Änderungs- und Löschfunktionen, Erinnerungsfunktionen, Suchfunktionen,... Produktdaten Was sind die (permanent gespeicherten) Hauptdaten des Produktes? Einheitliche Kennzeichnung der Hauptdaten Hauptdaten sind beispielsweise Konfigurationsdaten, Benutzerdaten, History-Daten,... Ina Schaefer SE I - WS 2011/2011 43

Beschreibung von Anforderungen Lastenheft Gliederungsschema des Lastenhefts (3) Produktleistungen Werden für bestimmte Funktionen besondere Ansprüche in Bezug auf Zeit, Datenumfang oder Genauigkeit gestellt? Wenn ja, welche? Einheitliche Kennzeichnung der Produktleistungen Produktleistungen werden eventuell durch andere Produkte wie beispielsweise von einer relationalen Datenbank bewerkstelligt. Bei einer Messwerterfassung sollten hier die Sollbedingungen stehen. Qualitätsanforderungen Zuverlässigkeit, Robustheit, Benutzungsfreundlichkeit, Effizienz,... Ergänzungen Ina Schaefer SE I - WS 2011/2011 44

Beschreibung von Anforderungen Lastenheft Lastenheft - Beispiel nach Balzert Lastenheft Beispiel Ina Schaefer SE I - WS 2011/2011 45

Lastenheft Beispiel Beschreibung von Anforderungen Lastenheft Lastenheft - Beispiel nach Balzert (2) 14 Lastenheft / Pflichtenheft f. Ina Dr. Liggesmeyer Schaefer SE I - WS 2011/2011 46

spiel Beschreibung von Anforderungen Lastenheft Lastenheft - Beispiel nach Balzert (3) Ina Schaefer SE I - WS 2011/2011 47

Beschreibung von Anforderungen Lastenheft Stilratgeber Kurze Sätze und kurze Absätze (max. ca. 7 Sätze), da das menschliche Kurzzeitgedächtnis begrenzt ist. Nur eine Aussage pro Satz, Verschachtelungen vermeiden. Konsistente Terminologie, Abkürzungen sparsam verwenden. Offene Punkte kennzeichnen: TBD, ToDo. Generalität vermeiden, klare Referenzen verwenden. Verbindlichkeit klar formulieren: Muss, kann, soll etc. mit Bedacht verwenden. Aktiv formulieren: Das System..... Ina Schaefer SE I - WS 2011/2011 48

Beschreibung von Anforderungen Lastenheft Identifizierbarkeit von Anforderungen Eindeutiges, nicht änderbares Kürzel/ID für Anforderungen Codierung z.b. von den Typ der Anforderung, Herkunftsdokument,... Beispiele: LH-FA11= Funktionale Anforderung 11 im Lastenheft PA17 = Performanzanforderung 17 LH-FA-Temp19= Funktionale Anforderung 19 des Teilsystems Temperatur im Lastenheft Gruppierung ähnlicher Anforderungen Ina Schaefer SE I - WS 2011/2011 49

Zusammenfassung Motivation und Ziel der Anforderungsanalyse Funktionale und Nicht-funktionale Anforderungen Aufgaben der Anforderungsanalyse Use Cases (Text und Diagramme) Lastenheft Ina Schaefer SE I - WS 2011/2011 50