Model Sketching - Ultraleichte Modellierung Methodenkarten 1
Modell-Sketching auf einen Blick 1 Konzentration Rolle: Kunde Fokus: Auftrag - Zieldefinition Elemente: Kundenziele, Kundenanforderungen Phasenergebnis: Business-Anforderungsmodell 2 Konzeption Rolle: Planer Fokus: System Elemente:, Anwendungsfälle, Fachobjekte, Masken Phasenergebnis: Fachliches Anforderungsmodell Afo 3 Konstruktion Rolle: Macher Fokus: Produkt Elemente: Implementierungsklassen Phasenergebnis: Quellcode Rolle: Macher Fokus: Technik (Architektur & Design) Elemente: Konstruktionskomponenten (GUI, Servicekomponenten) Phasenergebnis: Technisches Modell 4 Kodierung 2
1. Phase Konzentration Kundenziele Kundenanforderungen Ein Kundenziel beschreibt einen Zustand, der nach erfolgreicher Umsetzung und abgeschlossener Einführung des zu erstellenden Systems erreicht werden soll Eine Kundenanforderung ist eine direkt von den formulierten Zielen abgeleitete Bedingung an die Eigenschaften des zu entwickelnden Produkts Die Dokumentation von Kundenzielen erfolgt mit Hilfe standardisierter Vorlagen und kann zusätzlich angefügte Dateien enthalten, welche der Erläuterung der formulierten Ziele dienen Kundenanforderungen werden textuell nach einer festgelegten Textschablone (Formular) erfasst und einem oder mehreren Kundenzielen zugeordnet Business Anforderungsmodell 3
1. Phase Konzentration Kundenziele Ein Kundenziel beschreibt einen Zustand, Eine Kundenanforderung der nach erfolgreicher ist eine direkt Umsetzung von den und formulierten Zielen abgeschlossener abgeleitete Bedingung Einführung an des die zu erstellenden Eigenschaften des Systems zu entwickelnden erreicht werden Produkts soll Die Dokumentation von Kundenanforderungen Kundenzielen werden erfolgt textuell mit nach Hilfe einer festgelegten standardisierter Textschablone Vorlagen erfasst und besitzen mehr Aussagegehalt. Sie sind entweder einem oder mehreren Kundenzielen zugeordnet Kundenanforderungen Business Anforderungsmodell 4
2. Phase Konzeption Business Anforderungsmodell Anwendungsfälle Fachobjekte Masken Fachliches Modell Modellierte Anforderungen 5
2. Phase Konzeption Anwendungsfälle Fachobjekte Masken Anwendungsfälle Fachobjekte Die Systemanforderung grenzt die Eigenschaften des Produktes in Art und Funktion genauer ein und beschreibt auch konkrete Masken Vorgehensweisen oder Randbedingungen unter der das Entwicklungsprojekt ablaufen soll. werden textuell nach einer vorab definierten Vorlage (Formular) unter Verwendung etablierter Formulierungsschablonen erfasst. RUPP-Schablone zur Formulierung von Anforderungen 6
2. Phase Konzeption Aus formulierten Kunden- bzw. werden wesentliche Begriffe als dazu genutzt, (Eingangskorb-)Elemente zu erzeugen, die entweder nachverfolgbar in der Modellierung oder aber in der Dokumentation Verwendung finden sollen werden entsprechend ihrer Bestimmung als Wörterbucheinträge oder Eingangskorbelemente abgelegt. Anwendungsfälle Fachobjekte Masken Anwendungsfälle Fachobjekte Masken Modellierung Anwendungsfälle, Fachobjekte, Masken Dokumentation Glossar 7
2. Phase Konzeption Anwendungsfälle Fachobjekte Masken Anwendungsfälle Ein Anwendungsfall beschreibt eine fachlich abgegrenzte, durch das System Masken zu unterstützende Aufgabe. Anwendungsfälle mit ihren Beziehungen innerhalb eines spezifischen Systemkontextes werden in Anwendungsfalldiagrammen modelliert und dargestellt. Fachobjekte Für die Modellierung stehen folgende Notations-Elemente zur Verfügung 8
2. Phase Konzeption Anwendungsfälle Fachobjekte Masken Anwendungsfälle Fachobjekte Masken Fachobjekte im fachlichen Modell bilden die Grundlage für die Klassen im technischen Modell der Phase Konstruktion Notationselemente zur Erstellung von Informationsmodellen Fachobjekte mit ihren Eigenschaften und Verhalten sowie Beziehungen zu anderen Fachobjekten werden im Informationsmodell grafisch dargestellt. 9
2. Phase Konzeption Anwendungsfälle Fachobjekte Masken Masken sind eigene Modellelemente, welche mit einer Grafik, verschiedenen Maskenbuttons und -feldern beschrieben werden. Den Buttons können andere Masken zugewiesen werden, dass ein Maskenfluss erzeugt wird, der navigierbar ist. Anwendungsfälle Fachobjekte Formale Maskenflüsse können mit Mitteln der BPMN grafisch dargestellt werden, sodass ersichtlich wird, welches Ereignis welche Maske nach sich zieht Masken Notationselemente zur Erstellung von Maskenflüssen 10
3. Phase Konstruktion Fachliches Modell Modellierte Anforderungen Konstruktionskomponenten Servicekomponenten GUI-Komponenten Konstruktionsklassen Serviceschnittstellen Inhaltsbausteine Layoutbausteine Serviceoperationen Technisches Modell 11
3. Phase Konstruktion Konstruktionskomponenten dienen der technischen Aufteilung der Systembestandteile. Sie können aus den Elementen System, Benutzergruppe, Auslöser der Konzeptionsphase abgeleitet werden Konstruktionskomponente Servicekomponente GUI-Komponente Konstruktionsklasse Serviceschnittstelle Inhaltsbaustein Layoutbaustein Konstruktionskomponenten Serviceoperation Servicekomponenten Konstruktion der technischen Basis des künftigen Systems durch Transformation der Elemente Anwendungsfall und Fachobjekt aus der Konzeptionsphase Konstruktionsklassen Serviceschnittstellen GUI-Komponenten Konstruktion der Benutzerschnittstelle des künftigen Systems durch Transformation der Masken- Elemente des fachlichen Modells Inhaltsbausteine Layoutbausteine Serviceoperationen 12
3. Phase Konstruktion Konstruktionskomponente Servicekomponente GUI-Komponente Konstruktionsklasse Serviceschnittstelle Inhaltsbaustein Layoutbaustein Konstruktionskomponenten Serviceoperation Servicekomponenten Serviceschnittstellen werden nicht direkt aus der Konzeption abgeleitet. Sie treten ohne Abhängigkeit zur Konzeption erst in der Konstruktion auf. Nur die Serviceschnittstellen enthalten die Serviceoperationen und sind daher anzulegen, um Serviceoperationen aufzunehmen. GUI-Komponenten Konstruktionsklassen Konstruktionsklassen repräsentieren Objekte, welche das Zielsystem verarbeitet. Konstruktionsklassen können Attribute und Operationen besitzen, wobei Konstruktionsattribute bestimmen, welche Nachrichteninhalte die Servicekomponente verarbeiten kann. Serviceschnittstellen Serviceoperationen Serviceparameter Inhaltsbausteine Layoutbausteine Serviceoperationen realisieren die eigentliche Funktionalität einer Servicekomponente. Sie können aus Anwendungsfällen der Konzeption abgeleitet werden. Typisierung der Ein-, Aus- und Rückgabeparameter von Serviceoperationen. Sie besitzen Parameterattribute, die dem Austausch von Nachrichten zwischen Servicekomponenten dienen und stehen somit in Abhängigkeit zu Attributen der Konstruktionsklassen 13
3. Phase Konstruktion Konstruktionskomponente Servicekomponente GUI-Komponente Konstruktionsklasse Serviceschnittstelle Inhaltsbaustein Layoutbaustein Konstruktionskomponenten Serviceoperation Servicekomponenten GUI-Komponenten Konstruktionsklassen Serviceschnittstellen Inhaltsbausteine Layoutbausteine Inhaltsbausteine strukturieren die Maske und sind oftmals wiederverwendbare Konstruktionselemente (z.b. Hauptnavigation, Sidebar) um Seiten-inhalte strukturiert zusammen zu stellen. Seiteninhalte wiederum bündeln verschiedene Inhaltsbausteine Serviceoperationen Seiteninhalt Layout-Bausteine speichern Style-Guide konforme Anordnungen von Layoutstrukturen und ihrer Position auf einer Seite. Layout- Bausteine sind zu Seitenlayouts arrangierbar Seitenlayout 14
3. Phase Konstruktion Transformation von Elementen in der Phase Konstruktion Fachobjekt Service-Komponente Konstruktionsklasse Anwendungsfall Service-Schnittstelle Serviceoperation Maske Maskenfluss X Seiteninhalt GUI-Komponente Seitenlayout 15
4. Phase Kodierung Technisches Modell Servicekomponenten GUI-Komponenten Implementierungsklassen GUIs Software-Produkt 16
4. Phase Kodierung Technisches Modell Servicekomponenten GUI-Komponenten Implementierungsklassen GUIs Software-Produkt 17
Methodenunterstützung - Innovator Vollständige Unterstützung des Vorgehens durch Assistenten nach dem PULL-Prinzip 1 2 3 Konzentration Konzeption Konstruktion Beamer - Plugin Unterstützung der Beteiligten Rollen bei der nachvollziehbaren Erzeugung und Verknüpfung von Modellelementen der Konzentration für die Konzeption und Konzeption für die Konstruktion, z.b.: Kundenanforderungen zu Kundenzielen zuordnen zu Kundenanforderungen zuordnen Fach-, Anwendungsfall- und Maskenobjekte aus abgeleiteten n der natürlichsprachlichen Anforderungen erstellen Konstruktionsklassen, Serviceoperationen und Gestaltungselemente aus Anwendungsfällen, Fachobjekten und Masken erzeugen GUI Plugin Unterstützung beim Aufbau von Bildschirmseiten nach Styleguide und zur Erzeugung lauffähiger Oberflächen: Seiteninhalte aus Inhaltsbausteinen zusammenstellen (Inhaltsstruktur) Seitenlayouts aus Layoutbausteinen arrangieren (Layoutstruktur) Inhaltsbausteine eines Seiteninhalts den Layoutbausteinen eines Seitenlayouts zuordnen Pageflow allgemeingültig festlegen Erzeugung von Icons Umsetzung von Maskenabläufen und Funktionen 4 Kodierung M2C Model to Code Plugin Mit Hilfe des Model2Code-Plugin kann der Anwender beispielsweise Java-Klassen aus den Konstruktionsklassen der Vorphase generieren. 18
Modellsketching - Highlights Fokussierung auf die Abbildung der wesentlichen Merkmale der Realität ausgewogenes Verhältnis zwischen Modellierungsmächtigkeit und sonstigen Eigenschaften einer Modellierungsmethode Verringerung der Komplexität und Steigerung der Akzeptanz der Modelle Moderate Anforderungen an Modellierer und Modellnutzer durch Reduktion auf essentiell notwendigen Modellbausteine (Verzicht auf Aggregation, Komposition, Multiplizitäten etc.) Geringere Anforderungen an das Modellierungswerkzeug Durchgängigkeit der Modelle Traceability der Modellelemente wird durch technische Assistenten unterstützt Die Assistenten funktionieren nach dem Pull-Prinzip: Modellierer bestimmt die Elemente, welche er in der nachfolgenden Phase verwenden möchte und aus denen notwendige Modellelemente erstellt werden 19