mit Innovator und Microsoft Word MID Insight 09, Nürnberg, 10 November 2009
Vortrag auf der Innovator-Anwenderkonferenz MID Insight 09 Track: Technologie & Integration Modelle und Anforderungen integrieren mit Innovator und Microsoft Word Inhalt Über viele Jahre Projektpraxis in der modellbasierten Systemanalyse stießen wir immer wieder auf das gleiche Problem: Die bisherigen Lösungsansätze können die Kluft zwischen textuellen Anforderungen und Modellen nicht hinreichend überwinden Eine durchgängige Traceability vom textuellen Requirement bis ins Modell ist jedoch entscheidend für ein erfolgreiches Änderungsmanagement Der Vortrag zeigt auf, welche Integrationsmöglichkeiten es hier gibt und wie diese zusammenspielen 2
I N H A L T 1 Die Idee 2 Das Konzept 3 Die Lösung 4 Anforderungen aus Modellen ableiten 5 Mögliche Szenarien 6 Ihre Fragen
Die Idee
Die Idee Um eine durchgängige Traceability zu erreichen, müssen die Anforderungen mit den daraus abgeleiteten Modellelementen verbunden werden Die Anforderungen im RM-Tool müssen mit den Modellelementen im Modellierungs-Tool verbunden werden RM-Tool Modellierungs-Tool Anforderung 1 Modellelement 1 Anforderung 2 verbinden Anforderung n Modellelement m 5
Die Idee Zu jeder Anforderung wird ein Stellvertreter (Proxy) im Modellierungs-Tool erstellt und per automatischer Synchronisation aktuell gehalten 1:11 Abbildung der Anforderungen zwischen RM-Tool und Modellierungs-Tool l Traceability über Verbindung der Anforderung mit dem Stellvertreter und den «satisfy» Beziehungen zu den Modellelementen RM-Tool Modellierungs-Tool Anforderung 1 Anforderung 1 «satisfy» Modellelement 1 Anforderung 2 Anforderung 2 automatische Synchronisation i Anforderung n Anforderung n «satisfy» Modellelement m 6
Die Idee Zusätzlich können im RM-Tool Stellvertreter für Modellelemente angelegt und mit den Anforderungen verknüpft werden Auch der Anforderungsanalytiker soll im RM-Tool die Traceability nachvollziehen können Synchronisationsaufwand steigt extrem an RM-Tool Anforderung 1 automatische Synchronisation Anforderung 1 Modellierungs-Tool «satisfy» Modellelement 1 Anforderung 2 Anforderung n Link Proxys Modellelement 1 Anforderung n «satisfy» Modellelement m Modellelement m 7
Die Idee Die Idee der doppelten Stellvertreter hat Vor- und Nachteile Vorteile Beide Rollen (Anforderungsanalytiker und Modellierer) können Traceability nachvollziehen Kein Werkzeugwechsel notwendig Nachteile Doppelte Datenhaltung Synchronisationsaufwand extrem hoch Granularität der Modellelemente oft unklar 8
Das Konzept
Das Konzept Textuelle Anforderungen werden zu Modellelemente Die SysML-Spezifikation definiert die Anforderung als Modellelement mit zugehörigen Requirement Diagram 10
Das Konzept Anforderungen werden integraler Bestandteil des Modells Anforderungen werden Modellelemente mit Eigenschaften und Beziehungen Traceability über Verbindung der Anforderung mit «satisfy» Beziehungen zu den normalen normalen Modellelementen Modellierungs-Tool Anforderung 1 «satisfy» Modellelement 1 Anforderung 2 «businessrequirement» Stammdatenerfassung "17" "Ein Kunde muss die Möglichkeit haben, seine Stammdaten zu erfassen Doubletten müssen dabei verhindert werden" Anforderung n «satisfy» Modellelement m 11
Das Konzept Die Beziehungen zwischen Anforderungen können im Requirements Diagramm dargestellt werden Requirements Diagramm der SysML «requirement» Kernanforderungen Parkhaus «functionalrequirement» Videoüberwachung «functionalrequirement» Parkgebühren bezahlen «requirement» Beleuchtung steuern «functionalrequirement» Ausfahrten Id = "P235" Text = "Das Parkhaus muss mittels Videokameras durch einen Angestellten überwacht werden können" Id = "P041" Text = "Der Kunde muss die Gebühr bezahlen können, die der Kassenautomat mittels Parkdauer und Tarif errechnet hat" Id = "P089" Text = "Es muss dem Angestellten möglich sein, den Beleuchtungsmodus zu ändern" Id = "P523" Text = "Der Kunde muss das Parkhaus mit seinem Fahrzeug verlassen können, wenn er die angefallenen Gebühren beglichen hat" «trace» «functionalrequirement» Einfahrten Id = "P569" Text = "Dem Kunden muss die Einfahrt zum Parkhaus gewährt sein, wenn ein Parkplatz frei ist und der Schadstoffgrenzwert nicht überschritten ist" «requirement» Luftkontrolle Id = "P886" Text = "Der Schadstoffgehalt der Luft muss regelmäßig übrprüft werden" «usabilityrequirement» Freie Parkplätze verwalten Id = "P756" Text = "Der Kunde muss mittels Anzeigedisplays darauf aufmerksam gemacht werden, wo Parkplätze frei sind" «trace» 12
Das Konzept Die Beziehungen zwischen Anforderungen und Modellelementen werden über sog Callout-Notizen angezeigt Callout-Notizen Satisfies: SatisfiedBy: Listet alle Anforderungen auf, die das Modellelemente erfüllt Listet alle Modellelemente auf, die die Anforderung erfüllen OnlineBanking-Client CoreBanking-Service ein Kunde Internet Banking starten Beauftragung mit TAN authorisieren Überweisung online beauftragen Satisfies «requirement» Plattformunabhängigkeit «usabilityrequirement» Sprache deutsch «usabilityrequirement» Kontextsensitive Hilfe «usabilityrequirement» Maskengestaltung Zentrale Datenbank K K K V K SatisfiedBy OnlineBanking-Client «usabilityrequirement» Maskengestaltung "Die Gestaltung der Eingabemaske soll so erfolgen, daß die vorhandenen Papierformularen möglichst originalgetreu nachgebildet werden" Satisfies «reliabilityrequirement» Sicherheit der Anwendung «reliabilityrequirement» Datensicherheit «supportabilityrequirement» Komponentenorientierte Entwicklung «supportabilityrequirement» Dokumentation gemäß UML 13
Das Konzept Die Integration der Anforderungen in das Modell hat folgende Vor- bzw Nachteile Vorteile Keine doppelte Datenhaltung Synchronisationsaufwand entfällt Beide Rollen (Anforderungsanalytiker und Modellierer) nutzen gleiches Werkzeug Nachteile Modellierungs-Tool haben meist keine spezielle RM-Funktionalität Komfortable textuelle Erfassung fehlt Anforderungsanalytiker ohne Modellierungserfahrung 14
Die Lösung
Die Lösung Modellierungs-Tool erhält komfortable textuelle Erfassungsmöglichkeit und RM-Funktionalität Anforderungsanalytiker arbeiten in ihrer gewohnten Umgebung mit Microsoft Word Versionierung und Vergleich erfolgt mit Modellierungsfunktionalität Modellierungs-Tool Anforderung 1 «satisfy» Modellelement 1 Anforderung 2 Bearbeiten Anforderung n «satisfy» Modellelement m 16
2007 MID GmbH 17
Die Lösung Modellierungs-Tool erhält komfortable textuelle Erfassungsmöglichkeit und RM-Funktionalität Impact- und Traceability-Analysen über Abhängigkeiten-Matrix Modellierungs-Tool «satisfy» «satisfy» Anforderung 1 Modellelement 1 Anforderung 2 Anforderung n «satisfy» «satisfy» Modellelement m 18
Die Lösung Modellierungs-Tool erhält komfortable textuelle Erfassungsmöglichkeit und RM-Funktionalität Weak-Word-Analysen auf textuelle Inhalte der Anforderungen in Microsoft Word 19
Anforderungen aus Modellen ableiten Modellbasiertes Requirements Engineering
Anforderungen aus Modellen ableiten Anforderungen Modell Benutzer-Anforderungen Benutzer- Anforderung 1 «satisfy» Modellelement 1 Use Case Benutzer- Anforderung 11 «satisfy» «trace» Benutzer- Anforderung «satisfy» 12 Aktivitätsdiagramm System-Anforderungen «trace» System-Anforderung n «satisfy» Modellelement m 21
Mögliche Szenarien
Mögliche Szenarien Folgende Szenarien werden unterstützt: 1 Die in einem gefüllten Word-Dokument vorliegenden textuellen Anforderungen werden in Requirements umgewandelt und in ein Innovator-Modell synchronisiert und integriert Abhängigkeiten Gefülltes Word- Dokument mit textuellen Anforderungen liegt vor Anforderungen werden in Requirements umgewandelt Requirements werden mit Innovator synchronisiert Requirements werden ins Modell integriert (zb Abhängigkeiten zu anderen Modellelementen angelegt) Abhängigkeiten der Requirements zu anderen Modellelementen wird synchronisiert 23
Mögliche Szenarien Folgende Szenarien werden unterstützt: 2 In ein Word-Dokument mit einer Dokumentvorlage für zb ein Lasten- bzw Pflichtenheft sollen die in einem bzw mehreren Innovator-Modellen vorliegenden Requirements eingebettet und gepflegt werden Spezifikation Überschrift und Marke zum Einfügen der Requirements Eine Dokumentvorlage für ein Lasten- bzw Pflichtenheft wird geöffnet Requirements werden an die vorgegebenen Stellen im Dokument synchronisiert Requirements werden im Word spezifiziert Änderungen an den Requirements werden mit Innovator synchronisiert 24
Mögliche Szenarien Folgende Szenarien werden unterstützt: 3 In einem leeren Word-Dokument sollen neue Requirements angelegt und in ein neues bzw bestehendes Innovator-Modell synchronisiert werden Abhängigkeiten Ein leeres Word- Dokument wird geöffnet Requirements werden im Word- Dokument angelegt Requirements werden mit Innovator synchronisiert Requirements werden ins Modell integriert (zb Abhängigkeiten zu anderen Modellelementen angelegt) Abhängigkeiten der Requirements untereinander werden synchronisiert 25
Blick in die Zukunft Innovator for Requirements
Blick in die Zukunft Mit Innovator for Requirements wird ein leistungsfähiger Browser für das modellbasierte Requirements Engineering zur Verfügung stehen Eigenschaften der markierten Version Historie aller Versionen 27
Blick in die Zukunft Modellelemente werden zu Requirements Jedem Modellelement kann die Eigenschaft, eine Anforderung zu sein, zugeordnet werden Benutzer- Anforderung 1 Modellelement 1 Use Case ID = UR101 Text = Der Benutzer Priorität = hoch ID = UR101 Text = Der Benutzer Priorität = hoch Dadurch kann die 1:1 Zuordnung eines Modellelements zu einem Requirement entfallen, da das Modellelement selbst das Requirement darstellt 28
Ihre Fragen <Titel für Details eintragen> Ansprechpartner: Andreas Ditze, aditze@midde de 29
Hauptverwaltung Nürnberg Eibacher Hauptstraße 141 90451 Nürnberg Telefon: +49 (0)911-968 36-0 Telefax: +49 (0)911-968 36-10 wwwmidde de