Martin Glinz Requirements Engineering I Kapitel 6 Modellierungssprachen! © 2006, 2011 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen Gebrauch gestattet; bei auszugsweiser Verwendung mit Quellenangabe. Verwendung für Unterrichtszwecke oder kommerziellen Gebrauch nur mit vorheriger schriftlicher Genehmigung des Autors.! 6.1 Grundlagen! ❍ Anforderungen nicht als eine Sammlung von Sätzen in natürlicher Sprache beschreiben, ! ❍ sondern ein anwendungsorientiertes Modell der Aufgabenstellung erstellen! ![Im Gegensatz dazu werden im Entwurf konzeptionelle und/oder physische Modelle der geplanten Lösung erstellt] ! !! ❍ Formale oder teilformale Modelle möglich! ❍ Meistens (zumindest teilweise) grafisch repräsentierte Modelle! ❍ Meistens nur für funktionale Anforderungen! Requirements Engineering I !Kapitel 6 !© 2006 Martin Glinz ! 2! Modellierungsaspekte! ❍ Statische Struktur! ● Datenmodelle (Entity-Relationshipmodelle)! ● Klassen- und Objektmodelle! ● ggf. Komponentenmodelle! ❍ Interaktion! ● Anwendungsfall- / Szenarienmodelle! ● ggf. Sequenz- und Zusammenarbeitsmodelle! ❍ Verhalten ! ● Zustandsmodelle! ● Aktivitätsmodelle! Requirements Engineering I !Kapitel 6 !© 2006 Martin Glinz ! 3! Modellierungsaspekte – 2! ❍ Funktionen, Flüsse und Abläufe! ● Funktionsmodelle! ● Datenfluss-, Informationsfluss- und Arbeitsflussmodelle! ● Ablaufmodelle! Requirements Engineering I !Kapitel 6 !© 2006 Martin Glinz ! 4! 6.2 Ausgewählte Beispiele! Requirements Engineering I !Kapitel 6 !© 2006 Martin Glinz ! 5! Datenmodellierung! ❍ Grundlage: Entity-Relationship Ansatz! ❍ Modelliert einen Ausschnitt der Realität mit Hilfe von Gegenstandstypen (entity types), Beziehungstypen (relationship types) und Attributen (attributes)! arbeitet in Person Abteilung ist beteiligt an Projekt + !Einfach und klar! + !Leicht auf Datenbank-Realisierungen abbildbar! – !Ignoriert Funktionalität und Verhalten der Systeme! – !Keine Mittel zur Systemdekomposition! – !Keine Lokalität oder Einkapselung von Daten! Requirements Engineering I !Kapitel 6 !© 2006 Martin Glinz ! 6! Strukturierte Analyse! ❍ Modelliert die Funktionalität eines Systems mit Hilfe von Datenflussdiagrammen! ❍ Wird heute eher selten verwendet! Anzeige Rohwert Grenzwerte Messwert dimensionieren Messwert Dimension Messwert Grenzwerte prüfen + !Sehr anschaulich! + !Unterstützt Systemdekomposition! AlarmIndikator Instrumentanzeige aufbauen InstrumentBilder – !Strukturbruch zwischen Spezifikation und Implementierung! – !Keine Lokalität von Daten, Einkapselung nur begrenzt möglich! Requirements Engineering I !Kapitel 6 !© 2006 Martin Glinz ! 7! Objektorientierte Spezifikation! Mitarbeiter ❍ ❍ Modelliert die statische Struktur eines Systems mit Hilfe von Objekt- oder Klassendiagrammen! Hierarchie Position Stamm Nr Name Vorname 0..* Einstellen Entlassen Individuallohn ändern 1..* 1 Stufe von Hierarchiestufe Ferienanspruch beschäftigt in beschäftigt Lohnklasse Näheres in Kapitel 7! eingestuft in Klasse von 0..* Mitarbeiter im Monatslohn Mitarbeiter im Stundenlohn Stundensatz Überzeitsaldo Ferienguthaben Arbeitszeit erfassen Lohn zahlen Lohn zahlen 1 Nr Grundlohn 1 Abteilung LohnZahlungsauftrag bezahlt mit Name Sitz 0..* zugunsten von Erteilen Stornieren Requirements Engineering I !Kapitel 6 !© 2006 Martin Glinz ! 8! Szenarien und Anwendungsfälle! ❍ Modellieren die Interaktion zwischen systemexternen Akteuren und dem System ! ❍ Jede Interaktionssequenz wird durch ein Szenario (einen Anwendungsfall) beschrieben! Buch ausleihen! 1. 2. 3. 4. ❍ !Ausweiskarte der Benutzerin lesen und Angaben überprüfen! !Signatur eines Buchs lesen und zugehörigen Katalogeintrag ! !ermitteln! !Ausleihe registrieren und Diebstahlsicherungsetikett deaktivieren! !...! Näheres in Kapitel 8! Requirements Engineering I !Kapitel 6 !© 2006 Martin Glinz ! 9! UML (Unified Modeling Language)! ❍ UML ist eine Sammlung vorwiegend grafischer Sprachen zur Erstellung von Anforderungs- und Entwurfsmodellen aus verschiedenen Perspektiven! ❍ Typisch ein Klassenmodell im Zentrum! ❍ Näheres in Kapitel 9! Requirements Engineering I !Kapitel 6 !© 2006 Martin Glinz ! 10! Literatur! Cockburn, A. (2001). Writing Effective Use Cases. Addison-Wesley.! DeMarco, T. (1978). Structured Analysis and System Specification. New York: Yourdon Press.! Firesmith, D.C. (1994). Modeling the Dynamic Behavior of Systems, Mechanisms and Classes with Scenarios. Report on Object Analysis and Design (ROAD) 1, 2 (Jul/Aug 1994). 32-36, 47.! Glinz, M. (2011). Modellierung. Skript zur Vorlesung Informatik II, Teil a. Universität Zürich.! Jacobson, I., M. Christerson, P. Jonsson, and G. Övergaard (1992). Object-Oriented Software Engineering: A Use Case Driven Approach. Amsterdam: Addison-Wesley.! Oestereich, B. (1998). Objektorientierte Softwareentwicklung. R. München: Oldenbourg. ! OMG (2010a). Unified Modeling Language: Superstructure, version 2.3. OMG document formal/2010-05-05 http://www.omg.org/cgi-bin/doc?formal/2010-05-05! Rumbaugh, J., Jacobson, I., Booch, G. (1999). The Unified Modeling Language Reference Manual. Reading, Mass., etc.: Addison-Wesley.! Requirements Engineering I !Kapitel 6 !© 2011 Martin Glinz ! 11!
© Copyright 2024 ExpyDoc