Vorlesung Software-Engineering I im 3. und 4. Semester 05. Basiskonzepte Sichten auf das Produkt PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 SW-Architektur - Sichten auf das Produkt Abläufe: Daten: Zustände: Entwurf Umsetzung Hierarchien: PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 2
Der Abgrund zwischen Anwender und Programmierer Fachabteilung IT-Abteilung Problemdomäne? Ideen, Beschreibungen, Prozesse, Dokumente, Hierarchien, Personen, Zuständigkeiten, i Lastenheften, Pflichtenheften, Dokumentation, Abläufe, Objektzusammenhänge, Statusübergänge, Datenbanken, Technologien, UML, Sourcecode, 3 PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 Phasenmodell der Software-Entwicklung Vorgehensmodell oge e odell // Beschreibung der Abarbeitung der Phasen Idee Auftrag Abnahme Bugfixes Analyse Spezifikation Entwurf Umsetzung Test Einführung Wartung Auslauf Lösungsdomäne Lastenheft Pflichtenheft Umsetzungs- Test- Dokumentation Entwurf Plan Dokumentation PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 4
Domänen und ihre Sprachen oder: vom Problem zur Lösung Modell Problem Lösung Programm Die reale Welt mit der Domäne der Fachabteilung Das Modell der Domäne Domänenspezifische Sprache (DSL) Die Problem- beschreibung Im Kontext der Domäne Lastenheft Der Lösungsentwurf zur Abdeckung des Problems Pflichtentenheft Die Umsetzung des Lösungsentwurfs Sourcecode Problemdomäne Lösungsdomäne PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 5 Artefakte und ihre Inhalte Text, Bilder Text, Bilder Tabellen Diagramme Text, Tabellen Diagramme Text Bilder Tabellen Diagramme LH PH Design Code Doku Produkt Produktidee Produktkarton to Mindmaps Conceptmaps Lastenheft (Was) Übersicht Zielgruppe Anwendungsfälle Anforderungen Pflichtenheft (Wie) Übersichten Umfang Abgrenzung Aufgaben Abläufe, Zustände Daten, Ein-/Ausgaben Umsetzungsentwurf Übersichten Modularisierung Objekte, Klassen, Funktionen, Daten Testplan - Testfälle Programmdokumentation -Doku der IST-Umsetzung (aus Umsetzungsentwurf) t u - Inbetriebnahmedoku Anwenderdokumentation -Bedienungsanleitung - HowTo s PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 6
SW-Architektur praktische Beispiele Produktkarton: Anforderungsliste: -> Zielgruppe, -> Anwendungsfälle Leistungsmerkmale Anforderungen, Ideen Konzept-Map: -> Themengruppen, Zusammenhänge SW-Architektur: -> Strukturen Abläufe, Daten, Zustände, Hierarchien PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 7 Struktur der Anwendung Anwendungsfälle <<extends>> <<include>> Applikation Modul 1 Abläufe Datenmodell Team 1 Struktur: Anwendungsfälle <<extends>> <<include>> Datenmodell Modul 2 Abläufe Datenmodell Team 2 PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 8
4+1 Sichtenmodell: 1. Logische Sicht (Kontext) Beschreibung der Objekte und ihre Zusammenhänge aus Sicht des Anwenders. 2. Entwicklungs Sicht (Module) Beschreibung der Objekte und ihrer Beziehungen aus Sicht des Entwicklers. 3. Prozess Sicht (Laufzeit) Beschreibt Abläufe und Interaktionen innerhalb der Anwendung. 4. Physikalische Sicht (Verteilung) Beschreibt die die Verteilung der Anwendung auf IT-Systemen. 5. Anwendungsfälle, Szenarien (Benutzung) Beschreibt die Abläufe die die Anwender mit Hilfe der Anwendung in der realen Welt durchführen wollen. PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 10 von Kästchen und Linien oder von Kanten und Pfeilen : Kasten, Form Kante Anordnungen (typisch): Hierarchie Pfeil, Verbindung Typen (Auswahl): Ablauf Zyklus, Stati PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 11
Woran orientiert sich der SW-Entwurf? Softwarequalitätskriterien (z.b. aus nichtfunktionalen Anforderungen): Modifizierbarkeit, Wartbarkeit, Sicherheit oder Performance FURPS: Functionality (Funktionalität) Usability (Benutzbarkeit) Reliability (Zuverlässigkeit) Performance (Effizienz) Supportability (Wartbarkeit) Die Übersetzungen in Klammern sind die Begriffe, wie sie auch in der ISO 9126 zu finden sind. Das P kann auch für Portability (Übertragbarkeit) stehen. PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 13 ARIS-Konzept (Architektur integrierter Informationssysteme) 1/2 Beschreibungssichten: Funktionssicht: Die Vorgänge, die Leistungen transformieren, und die zwischen ihnen bestehenden statischen Beziehungen werden in der Funktionssicht beschrieben. Die Begriffe Vorgang und Tätigkeit werden hierbei synonym verwendet. Alle funktionalen Elemente, ihre Gruppierungen und hierarchischen Beziehungen. Da Funktionen Ziele unterstützen und durch sie gesteuert werden, werden Ziele wegen dieser engen Verbindung ebenfalls der Funktionssicht zugeordnet.? Funktionsbaum Organisationssicht: Alle Ressourcen (menschliche Arbeitskräfte, Maschinen, Hardware), das heißt alle Organisationseinheiten und ihre Beziehungen. Datensicht: Alle Ereignisse (die Daten generieren) und Umfelddaten, wie Schriftverkehr, Dokumente etc., das heißt alle unternehmensrelevanten Informationsobjekte, siehe auch Entity-Relationship-Modell i ll Leistungssicht: Alle Dienst-, Sach- und finanziellen Leistungen, siehe auch Produktbaum Steuerungssicht: Integration der vorangegangenen Sichten in einen zeitlich logischen Ablaufplan, das heißt Verknüpfung der anderen Sichten, siehe auch Ereignisgesteuerte Prozessketten PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 14
ARIS-Konzept (Architektur integrierter Informationssysteme) 2/2 Beschreibungsebenen: Fachkonzept: Strukturierte Darstellung eines Prozesses mittels DV-fremden Beschreibungsmodellen (je nach Sicht z. B.: ERM, EPK, Organigramm, Funktionsbaum) DV-Konzept: Umsetzung des Fachkonzeptes in DV-nahe Beschreibungsmodelle (je nach Sicht z. B. Relationen, Struktogramme, Topologien) Implementierungsebene: DV-technische Realisierung der beschriebenen Prozessteile (je nach Sicht z. B. mittels Erstellung von Programmcode, Datenbanksystemen, Einsatz von Protokollen) PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 15 Strukturierte Darstellung eines Prozesses mittels DV-fremden Beschreibungsmodellen Entity-Relationship-Modell (ERM) Ereignisgesteuerte Prozesskette (EPK) Vorgangskettendiagramm (VPK) (Business Process Modelling Notation (BPMN)) Organigramm Funktionsbaum siehe Beispiele PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 16
Strukturierte Darstellung eines Prozesses Beispiel (EPK/VPK) 1/2 EPK: VPK: PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 17 Strukturierte Darstellung eines Prozesses Beispiel (EPK/VPK) 2/2 Ereignisgesteuerte Prozesskette (EPK) Vorgangskettendiagramm (VPK) PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 18
Strukturierte Darstellung eines Prozesses Beispiel Organigramm, Funktionsbaum Organigramm: g Funktionsbaum: PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 19 Daten: Entity-Relationship-Modell (ERM) Strukturelle Beschreibung der Tabellen und ihrer Relationen in einer Datenbank. Felddefinition oft in tabellarischer Form. PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 20
UML - Unified Modeling Language Strukturdiagramme (statisch): das Klassendiagramm das Kompositionsstrukturdiagramm das Komponentendiagramm das Verteilungsdiagramm das Objektdiagramm das Paketdiagramm das Profildiagramm Verhaltensdiagramme (dynamisch): das Aktivitätsdiagramm das Anwendungsfalldiagramm g (Use-Case) das Interaktionsübersichtsdiagramm das Kommunikationsdiagramm das Sequenzdiagramm das Zeitverlaufsdiagramm das Zustandsdiagramm UML-Tapete PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 21 UML - Strukturdiagramme System (Verteilungsdiagramm) Applikation (Paketdiagramm) ag a Modul (Komponentendiagramm) Obj.+Funktionen (Klassendiagramm) Klasse PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 22
UMS - Verhaltensdiagramme Auch als rein textuelle Beschreibung ( User-Story ) möglich. PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 23 BPMN - Business Process Modeling Notation Die Business Process Modeling Notation (BPMN) ist eine grafische Spezifikationssprache. Sie stellt Symbole zur Verfügung, mit denen Fach-und Informatikspezialisten i t Geschäftsprozesse und Arbeitsabläufe (techn.: Workflows) modellieren und dokumentieren können. Die grafischen Elemente der BPMN werden eingeteilt in Flow Objects - die Knoten (Activity, Gateway und Event) in den Geschäftsprozessdiagrammen Connecting Objects - die verbindenden Kanten in den Geschäftsprozessdiagrammen Pools und Swimlanes - die Bereiche, mit denen Aktoren und Systeme dargestellt werden Artifacts - weitere Elemente wie Data Objects, Groups und Annotations zur weiteren Dokumentation PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 24
BPMN Notation, Symbole Activity (Aufgaben) Connecting Objects (Verbindungen) Gateways (Entscheidungspunkte) Swimlanes (Strukturierung) Events (Ereignisse) Artefakte (Daten) PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 25 Was brauchen wir? Hierarchien: ConceptMap UML GUI? (MockUp) Entwurf Abläufe: Daten: BPMN UML ERM UML Zustände: UML PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 26
Bücher: UML / BPMN PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 28 Fragen: PD-TES/Hoyer, Frank-Michael SWE1: 05. Basiskonzepte - Sichten 16. Juli 2010 geändert: 4. Oktober 2013 29