14 Ablauforganisation mit Vorgehensmodellen



Ähnliche Dokumente
14 Ablauforganisation mit Vorgehensmodellen

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Literatur. 14 Ablauforganisation. Prozessmodelle als Mittel der Ablauforganisation. Ablauforganisation. 1. Phasenmodelle 2.

Grundlagen Software Engineering

Das Wasserfallmodell - Überblick

Taking RM Agile. Erfahrungen aus dem Übergang von traditioneller Entwicklung zu Scrum

Informationswirtschaft II Rational Unified Process (RUP)

Informationswirtschaft II

Projektmanagement. Dokument V 1.1. Oliver Lietz - Projektmanagement. Wie kommt es zu einem Projektauftrag? Ausführung

Wirtschaftsinformatik I Teil 2. Sommersemester Übung

Übung Einführung in die Softwaretechnik

Wir erledigen alles sofort. Warum Qualität, Risikomanagement, Gebrauchstauglichkeit und Dokumentation nach jeder Iteration fertig sind.


Agile Softwareentwicklung mit Scrum

Ganzheitliches IT-Projektmanagement

Projektmanagement durch Scrum-Proxies

Der Projektmanager (nach GPM / IPMA) Fragen zur Selbsteinschätzung und für die Prüfungsvorbereitung. Kapitel B Vorgehensmodelle

3.3. Ablauforganisation V-Modell des Bundes

Praktische Erfahrungen beim Einsatz des Vorgehensmodells "SCRUM" bei AGFA HealthCare

Agile Softwareprozess-Modelle

IT-Projekt-Management

Agile Management Einführung in agiles Management

PROJEKTMANAGEMENT GRUNDLAGEN_2

Sollten folgende drei Fragen durch das Team positiv beantwortet werden, sind wichtige SCRUM-Elemente in Ihrem Team erfolgreich installiert.

Professionelles Projektmanagement mit dem V - Modell XT

Praktikum Grundlagen der Programmierung. Diverse Grundlagen. Dr. Karsten Tolle

SOFTWARETECHNIK. Kapitel 7 Vorgehensmodelle. Vorlesung im Wintersemester 2012/13 FG System- und Software-Engineering Prof. Dr.-Ing.

m.e.d. concept methode erfolg datenverarbeitung V-Modell XT im Überblick 2 V-Modell XT Einführung - Analyse und Roadmap 3

Übungsaufgaben zum Software Engineering: Management

Prozess-Modelle für die Softwareentwicklung

SCRUM. Legalisierung der Hackerei? GI Regionalgruppe Dortmund Dipl.-Inform. (FH) Dirk Prüter.

Gelebtes Scrum. Weg vom Management hin zur Führung

Softwaretechnik. Fomuso Ekellem WS 2011/12

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

Softwareentwicklungsprozesse optimieren. wie Sie die Vorteile klassischer und agiler Methoden erfolgreich kombinieren

The Rational Unified Process. Eine Einführung von T. Langer und A. Nitert

The big picture: Prince2 featuring SCRUM. Bernd Lehmann, Prince2-Tag Köln, 12. Mai 2011

Umfrage zum Informationsbedarf im Requirements Engineering

Warum sich das Management nicht für agile Softwareentwicklung interessieren sollte - aber für Agilität

Abschnitt 16: Objektorientiertes Design

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

IT-Basics 2. DI Gerhard Fließ. Vorgehensmodelle

Klausur zu den Teilgebieten Software-Management und Software-Qualitätsmanagement

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Software entwickeln mit extreme Programming

Einführung V-Modell XT. Das neue V-Modell XT Release Der Entwicklungsstandard für IT Systeme des Bundes

Einführung in das Scrum Framework & welche 10 Praktiken helfen, Scrum wirklich gut zu machen

Agile Software Development

Was versteht man unter einem Softwareentwicklungsmodell?

Agile Entwicklung nach Scrum

Übungen zur Softwaretechnik

Informationssystemanalyse Lebenszyklusmodelle 3 1. Lebenszyklusmodelle sollen hauptsächlich drei Aufgaben erfüllen:

Projektmanagement. Vorlesung von Thomas Patzelt 8. Vorlesung

SOFTWAREMANAGEMENT 14_ABLAUFORGANISATION

Lösungen zum Test objektorientierter Software

Softwaretechnik. Fomuso Ekellem WS 2011/12

Meetings in SCRUM. Leitfaden. Stand:

Microsoft SharePoint 2013 Designer

Scrum. Agile Software Entwicklung mit. Agile Software Entwicklung mit. Scrum. Raffael Schweitzer 18. November 2003

Softwareentwicklungsprozesse. 18. Oktober 2012

Projektplanung für Softwareprojekte: KLIPS 2.0 Prof. Dr. Manfred Thaller WS 2011/ Dana Wroblewski

Software Engineering. Sommersemester 2012, Dr. Andreas Metzger

Berliner XML Tage 2005: Abbildung des V-Modell XT in Projektron BCS

SCRUM. Software Development Process

Andrea Grass & Dr. Marcus Winteroll oose Innovative Informatik GmbH. Geschäftsprozessmanagement und Agilität geht das zusammen?

Di 7.2. Sprinten mit dem V-Modell XT. Olaf Lewitz. January 26-30, 2009, Munich, Germany ICM - International Congress Centre Munich

Agile Softwareentwicklung

Softwareentwicklungsprozess im Praktikum. 23. April 2015

Die Softwareentwicklungsphasen!

Probeklausur. Lenz Belzner. January 26, Lenz Belzner Probeklausur January 26, / 16

Systemdenken und Gestaltungsmethodik Einführung und Grundlagen II

Kapitel 2: Der Software-Entwicklungsprozess

Projektmanagement in der Spieleentwicklung

Einführung in Scrum. Agiles Projektmanagement. Martin Krüger Entwicklung von Workflowanwendungen

Sabotage in Scrum. dem Prozess erfolglos ins Knie schiessen. Andreas Leidig (andrena objects ag) Vortrag bei den XP Days 2007

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

Scrum in der Praxis (eine mögliche Umsetzung)

SDD System Design Document

Hilfe, mein SCRUM-Team ist nicht agil!

Scrum for Management Praxis versus Theorie oder Praxis dank Theorie. ALM Day 26.Oktober 2011 Urs Böhm

Klausur mit Lösungshinweisen zur Vorlesung Planung und Entwicklung von IuK-Systemen Sommersemester August 2005 Deckblatt Hinweise

Projektplan. Software Engineering Projekt. November 11 Fachbereich Informatik Software Engineering Projekt Sebastian Proksch 1

gallestro BPM - weit mehr als malen...

AGILE SOFTWAREPROJEKTE IN REINFORM WAS BEDEUTET DAS RECHTLICH? RA Daniel Schätzle Berlin, 22. April 2015

Scrum. Übung 3. Grundlagen des Software Engineerings. Asim Abdulkhaleq 20 November 2014

Erfolgreiche Realisierung von grossen Softwareprojekten

A Domain Specific Language for Project Execution Models

Projektmanagement Vorlesung 12/ 13

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Softwareanforderungsanalyse

Projektmanagement Vorlesung 14/ 15: Wiederholung ausgewählter Themen zur Klausurvorbereitung. Prof. Adrian Müller, PMP, PSM-1, CSM FH Kaiserslautern

Projektmanagement. Einleitung. Beginn. Was ist Projektmanagement? In dieser Dokumentation erfahren Sie Folgendes:

2. Workshop: Vorgehensmodelle in der Praxis Reife und Qualität

3.3 Ablauforganisation

Softwaretechnik (Allgemeine Informatik) Überblick

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail:

GPP Projekte gemeinsam zum Erfolg führen

Qualitätserlebnis statt Qualitätssicherung. Eine Mehrfachfallstudie agiler Teams

Agile Programmierung - Theorie II SCRUM

Transkript:

14 Ablauforganisation mit Vorgehensmodellen 1 Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl Softwaretechnologie Fakultät Informatik TU Dresden Version 14-0.2, 03.05.14 1. Phasenmodelle 2. Vorgehensmodelle 1. RUP 2. V-Modell-XT 3. Leichtgewichtige Vorgehensmodelle 1. XP 2. SCRUM Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Literatur 2 [Pichler] Roman Pichler. SCRUM- - Agiles Projektmanagement erfolgreich einsetzen. dpunktverlag. [Lippert] Lippert, M., Roock, S., Wolf, H.: Software entwickeln mit extreme Programming Erfahrungen aus der Praxis; dpunkt.verlag 2002 [ProjFachmann] Autorenkollektiv: Projektmanagement Fachmann Band 1 und 2; RKW-Verlag (5.Auflage) 1999 [Pomberger] Pomberger, G., Pree, W.: Software Engineering - Architektur-Design und Prozessorientierung; Carl Hanser Verlag (3. Aufl.), München 2004 [Zuser] Zuser, W. u.a.: Software-Engineering mit UML und dem Unified Process; Pearson Studium 2004 [Dröschel] Dröschel, W., Heuser, W., Midderhoff, R.: Inkrementelle und objektorientierte Vorgehensweisen mit dem V-Modell 97; Oldenbourg-Verlag 1998 [Hruschka] Hruschka, P., Rupp, Ch.: Agile Softwareentwicklung für Embedded Real-Time Systems mit der UML; Hanser Verlag 2002 Ove Armbrust, Jan Ebell, Ulrike Hammerschall, Jürgen Münch, Daniela Thoma. Prozesseinführung und -reifung in der Praxis: Erfolgsfaktoren und Erfahrungen. 14. Workshop der Fachgruppe WI-VM der Gesellschaft für Informatik. IESE-Report Nr. 034.07/D Version 1.0 31. Januar 2007 vmxt.fraunhofer.de/plaintext/downloads/erfolgsfaktoren034.07.pdf www.v-modell-xt.de

Ablauforganisation 3 Unter UnterAblauforganisation Ablauforganisationversteht verstehtman mandie dieaneinanderreihung Aneinanderreihung systeminterner Arbeitsabläufe, die räumlich und systeminterner Arbeitsabläufe, die räumlich undzeitlich zeitlichso soangeordnet angeordnetsind, sind, dass das System funktionsfähig ist und zielgerichtet arbeitet. dass das System funktionsfähig ist und zielgerichtet arbeitet. Arbeitsabläufe (workflows) dienen dazu, den Ablauf von Arbeitsvorgängen (Aktivitäten) innerhalb eines Projekts mit Hilfe von Prozessen zu organisieren Verantwortlichkeiten innerhalb der Vorgänge zu formalisieren (Rollen) zu rationalisieren, vereinfachen und standardisieren Prozessmodelle beschreiben schematisch die Methodik des Vorgehens, geben also Arbeitsabläufe schematisch vor ad-hoc, automatisiert oder formalisiert sequentiell oder iterativ

4

Prozessmodelle als Mittel der Ablauforganisation Es gibt viele verschiedene Prozessmodelle, die ihre Berechtigung haben, abhängig u.a. vom Produkt (Inhalt) und der Projektgröße Phasenmodelle: Phasen sind erkennbar Spiralmodell V-Modell Inception/ Vorgehensmodelle: Ohne Phasen, aber aus Schablonen/Mustern zusammengesetzt V-Modell des Bundes oder RUP Oft zyklisch:... Modelle zur inkrementellen SWE Evolutionäre Modelle Prototypisches Vorgehen Rückkopplung ist wichtig! Leichtgewichtige, agile Vorgehensmodelle: XP, SCRUM, EOS 5

14.1 Phasenmodelle 6 Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Phasenorganisation 7 Eine EineProjektphase Projektphaseist istein einzeitlicher zeitlicherabschnitt Abschnittinineinem einemprojektablauf, Projektablauf,der der sachlich sachlichgetrennt getrenntvon voneinem einemanderen anderenabläuft. abläuft. Die DieProjektphase Projektphasewird wirddurch durcheine einevernehmlassung Vernehmlassungan aneinem einemmeilenstein Meilenstein offiziell offiziellabgeschlossen. abgeschlossen. Die Phasenorganisation definiert eine Kette logisch aufeinander aufbauender Meilensteine (als Übergänge zwischen den Phasen) Die Phasen enthalten die Summe der Aktivitäten zwischen den Meilensteinen Die Phasenorganisation trägt zur Reduzierung des technischen wirtschaftlichen und terminlichen Risikos bei durch: schrittweises Vorgehen Vorgabe und Überwachung von Zwischenergebnissen (Meilensteinen) Transparenz über den Projektstand (Projektkontrolle, -regelung)

Vorteile der Projektphasen 8 Phasenweises Vorgehen ist ein einfaches Planungs- und ControllingInstrument hilft, den Überblick zu behalten und sich nicht im Detail zu verlieren zwingt zur periodischen Stellungnahme durch Meilensteine Verringerung des Risikos einer Fehlentwicklung durch bessere Überwachung hilft bei der Herstellung einer fortlaufenden Dokumentation Entscheidungsfreiheit des Projektleiters bleibt gewahrt durch Beeinflussung der Entwicklung an den vordefinierten Ergebniszeitpunkten [ Jenny, S. 68 ]

Meilensteine in der Planung von Phasenorganisation Meilensteine sind typisch für die Planung einer Phasenorganisation sind Eckpunkte der Planung und Durchführung an ihnen wird der Stand des Projekts evaluiert befinden sich am Ende einer Phase Basis der Bewertung sind: definierte Arbeitsprodukte an einem Termin Ein Meilenstein, der für eine Gruppe von Aktivitäten gilt, und an dem der Steuerfluss verzweigen kann, heisst Entscheidungspunkt (EP) Entscheidungspunkte kennzeichnen MiniMeilensteine im Projekt dienen der Entscheidung über weiteren Projektablauf Bestimmung von Korrekturmaßnahmen Freigabe des nächsten Abschnitts Entscheid über den Abbruch des Projekts Meilenstein-Spezifikationen müssen von hoher Qualität sein SMART, insb. überprüfbar (als Voraussetzung für nächste Phase) Meilensteinüberprüfung im Controlling durch Meilenstein-Trendanalyse CCC übergebbar (z. B. in die Produktbibliothek, dem AG, ) 9

Bsp: Reihenfolge der Meilensteine im linearen Modell (Wasserfall-Modell) 10 MS 1: Projektziele/ Pflichtenheft Anforderungskatalog MS 2: Fachliches Konzept Wie sieht die Lösung aus? Leistungsbeschreibung MS 3: Technisches Konzept Wie wird die Lösung technisch realisiert? Design-Spezifikation (Architektur) Realisierung Erstellung der Komponenten Komponenten Integration Arbeiten die Komponenten zusammen? System MS 4: MS 5: MS 6: Getestetes System Produkt MS 7: Eingeführtes System Was soll erreicht werden? Werden die Funktionen erfüllt? Einführung und Anwendung des Systems

Phasenmodell des Durchführungsprozesses INECT 11 Die Phasengliederung INECT des schwergewichtigen Vorgehensmodells RUP ist allgemein für Planung und Controlling verwendbar: Inception: Festlegung aller Projektbedingungen und Einrichtung einer Umgebung zur Durchführung aller folgenden Arbeitsschritte Elaboration: Durchführung der Analyse, Festlegung aller Anwendungsfälle und Entwurf der Architektur Construction: Fortführung des Entwurfs sowie Implementierung der Architektur und Durchführung des Tests Transition: Übergangsphase in der das Softwareprodukt beim Kunden auf der Zielplattform installiert und integriert wird; Nachstudien; Prozessverbesserung Inception Elaboration Construction Main phases Transition

Das V-Modell (nach B. Boehm) 12 Systemkonzept Betrieb Konzept- Anford. EntwurfsValidat. Validat. Validation TestValidat. Anforderungsspezifi kation Einführung VALIDATION Akzeptanz-, VERIFIKATION Systemtest Systementwurf Produktentw. Verifi k. Komponentenentwurf Modulentwurf Code Integrationstest Progr. entw. Verifi kation Einzeltest Zeit

Das V-Modell ist ein generisches Phasenmodell zum Problemlösen Ist-ZustandErmittlung Messung der Verbesserung Soll-Ermittlung Messung des Erreichens des Soll mit Erfolgskriterien ErfolgskriterienErmittlung Realisierung 13

Ein Phasenmodell mit Rückkopplung: Das Spiralmodell nach Boehm Zielanalyse Risiko- und Alternativenanalyse Zielanalyse Festlegung von Zielen, Lösungsvarianten, Nebenbedingungen und Einschränkungen 2 1 Erarbeitung und Beurteilung von Lösungsvarianten, Erkennen und Beseitigen von Risiken Zur Anzeige wird der QuickTime Dekompressor GIF benötigt. 4 Planung Planung der nächsten Phase [4 Buhl, S.15] Entwicklung 3 Entwicklung und Validierung der nächsten Produktstufe 14

Sprial 2 Month 0-12 18 months MAN DISS GOAL-1 FEAS-1 CASE-1 Sprial 2 Month 12-24 Other Integrated Projects of DC-2 15 Other Integrated Projects of DC-2 ASS-1 GOAL-2 REAL-2 Other Integrated Projects of DC-2 ASS-2 CASE-2 Sprial 3 Month 25-36 GOAL-3 Other Integrated Projects of DC-2 REAL-3 Other Integrated Projects of DC-2 ASS-3 CASE-3 GOAL4 Sprial 4 Month 37-48 Other Integrated Projects of DC-2 REAL-4 ASS-4 CASE-4

DP/2.1 DP/2.2 DP/2 DP21.3 DP/2.5 DP/2.4 REQ/3 REQ/3.1 REQ/3.2 16 REQ/3.4 REQ/3.5 REQ/3.3 COP/4 COP/4.1 COP/4.3 COP/4.2 COP/4.4 CCT/6 CCT/6.1 CCT/6.2 CCT/6.3 SPC/5 SPC/5.1 CTE/7 SPC/5.2 SPC/5.3 SPC/5.4 AS/9.1 CTE/7.1 CTE/7.2 CTE/7.3 CTE/7.4 CTE/7.5 CTE/7.6 UCM/8 UCM/8.1 UCM/8.2 UCM/8.3 AS/9.2 AS/9 AS/9.1 AS/9.2 AS/9.3 AS/9.4 AS.3 AS.4

Merkmale des Spiralmodells 17 Merkmale: Minimierung des Risikos steht im Mittelpunkt Jeder Spiralzyklus durchläuft dieselben Grundschritte Ziele eines Zyklus werden aus Ergebnissen des vorherigen abgeleitet Parallele Spiralzyklen für verschiedene Komponenten einer Anwendung [Prof. Dr. S. Seibert; FH Darmstadt] Vorteile: Hohe Flexibilität des Vorgehens durch rückgekoppelten Prozess (wie PDCA) Integrierte Risikoanalyse Qualitätssicherungsmaßnahmen gut integrierbar Auch für Wartungsprojekte geeignet Nachteile: Spiralen manchmal zu lang

Prototyping-Orientiertes Phasenmodell mit Rückkopplung Verfeinerung des iterativen Wasserfall-Modells oder des V-Modells Teile eines Produktes grob entwickeln, so, dass sie ausführbar werden Minimal viable product (MVP): welches ist das wichtigste Feature? Problemanalyse und Grobplanung Istzustands-Beschreibung, Projektauftrag, Grobplan Systemspezifi kation, Projektplan, Systemprototyp Systemspezifi kation User-InterfacePrototyping Entwurf Systemarchitektur, KomponentenStruktur, A.u.K.-Prototypen Architektur- und KomponentenPrototyping Implementierung Software (Code, Doku, Tests) fertiges Produkt Systemtest Betrieb und Wartung [Pomberger] Zeit 18

Objektorientiertes Phasenmodell mit Rückkopplung und Wiederverwendung 19 Problemanalyse Spezifi kation Entwurf Implementierung Test Einplanung Verwendung Bereitstellung Betrieb u. Wartung Implementierung Dokumentation nach [Pomberger] Klassenbibliothek Framework auf der Basis eines Komponentenmodells und Kompositionssystems [CBSE]

14.2 Vorgehensmodelle 20 Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Vorgehensmodellierung 21 Vorgehensmodelle Vorgehensmodelledefinieren definierentätigkeiten Tätigkeiten(Aktivitäten) (Aktivitäten)und undvon vonihnen ihnen erzeugte Arbeitsergebnisse (Artefakte, Dokumente, Produkte) sowie erzeugte Arbeitsergebnisse (Artefakte, Dokumente, Produkte) sowie ihr ihrkomplettes kompletteszusammenwirken Zusammenwirkeneinschließlich einschließlichbenötigter benötigterrollen, Rollen, Produktzustände und sämtlicher Ressourcen, die für den Produktzustände und sämtlicher Ressourcen, die für denprojektablauf Projektablauf benötigt werden. benötigt werden. Ziele: Modellierung als System ineinandergreifender Bestandteile soll sicherstellen, dass die vom Kunden gewünschte Leistung planmäßig in hervorragender Qualität erbracht wird Modellierung in ihrer Gesamtheit aus Aktivitäten, Artefakten (Produkten), Zuständen und Rollen und Ressourcen Modellierung des Arbeitsflusses (Workflow) unter Einschluss der beteiligten Rollen zur Entwicklung begleitende Tätigkeiten, wie Qualitätsmanagement (QM,QS), Konfigurationsmanagement (KM), Projektmanagement (PM) Modellierung der inkrementellen Softwareentwicklung durch stufenweises Vorgehen auf der Basis insgesamt gefestigter Anwenderforderungen organisationsneutrale Anwendung und Anpassung an spezielle Anwendungsfälle (Tailorisierung)

Einsatz von schwergewichtigen Vorgehensmodellen Bei Festpreisprojekten Kundeninvolvierung erlaubt agiles Vorgehen Wenn große Sicherheitsanforderungen herrschen Schätzung und Planung spielt dann eine große Rolle Wenn Kunde nicht vor Ort involviert sein will oder kann 22 und der Code gegen Anforderungsspezifikationen verifiziert und zertifiziert werden muss

Grundlegende Begriffe von Vorgehensmodellen Worker/Rollen: wer - Beschreiben, wie sich Personen im Prozess verhalten sollen und welche Verantwortlichkeiten sie besitzen. Üblicherweise geht es dabei um die Erstellung oder Überarbeitung von Artefakten. Arbeitsergebnisse/Produkte/Artefakte: was - Sind Informationsteile, welche durch einen Prozess erstellt, geändert oder genutzt werden. Ein Worker kann durch eine Person oder ein ganzes Team realisiert werden Eine Person kann im Laufe des Lebenszyklus verschiedene Rollen einnehmen. Aktivitäten: wie - Tätigkeiten, die ein Worker durchführen soll 23 Artefakte werden von Workern als Eingabe für Aktivitäten genutzt. Sie sind aber auch Ausgabe von Aktivitäten. Weiterhin es es möglich, dass sich Artefakte aus anderen Artefakten zusammensetzen. Arbeitsabläufe (Workflows): wann - Beschreiben aussagekräftig die Abfolge von Aktivitäten, damit es zu einem sinnvollen Ergebnis kommt. Außerdem werden die Interaktionen zwischen den Workern aufgezeigt.

14.2.1 (Rational) Unified Process 24 Ursprünglich von der Firma Rational, dann IBM Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Eigenschaften des Rational Unified Process (RUP) Durch Anwendungsfälle (use cases) gesteuert Aus ihnen werden alle Modelle bis hin zu den Testdaten zur Überprüfung der Anwendungsfälle entwickelt. Iterativer und inkrementeller Prozess Die Komplexität der Projekte erfordert nicht nur eine einmalige, sondern eine wiederholte Abfolge der Arbeitsschritte. Im Zuge der Iterationen werden so viel wie möglich Produkte parallel weiterentwickelt. Das gesamte Projekt wächst somit inkrementell. Architekturzentriert Die Architektur bildet die Grundlage für das gesamte System. Sie berücksichtigt alle Bedingungen für das Projekt einschließlich der nichtfunktionalen Anforderungen. Mit der Architektur werden die grundlegende Form und alle Anwendungsfälle umgesetzt. Vorhandene Architekturschablonen (Client-Server, Schichten...) können genutzt werden. [ Zuser, W. ] 25

Rational Unified Process (1) 26 Jeder Workflow, ob Kern- oder Supporting, wird in die Phasen des INECT eingeordnet.

Phasenmodell des Rational Unified Process (2) 27 Die Workflows sind über ein Phasenmodell mit 4 Haupt-Phasen gestreut: Inception: Festlegung aller Projektbedingungen und Einrichtung einer Umgebung zur Durchführung aller folgenden Arbeitsschritte Elaboration: Durchführung der Analyse, Festlegung aller Anwendungsfälle und Entwurf der Architektur Construction: Fortführung des Entwurfs sowie Implementierung der Architektur und Durchführung des Tests Transition: Übergangsphase in der das Softwareprodukt beim Kunden auf der Zielplattform installiert und integriert wird. Die Phasen werden iteriert Inception Elaboration Construction Main phases Transition

Core und Supporting Workflows 28 Der RUP enthält eine Bibliothek von Vorgehensbausteinen (workflows). Ein Vorgehensbaustein enthält: Verknüpfung der Aktivitäten über die Abhängigkeitsbeziehungen Aktivität als eine Einheit von Arbeitsschritten Aktivitäten können mehrmals durchgeführt werden Typen der weiterzugebenden Artefakte (Arbeitsprodukte): Textdokumente Modellelemente Modelle (Quell-)Code Testspezifikationen Zuordnung der Rollen zu den durchzuführenden Aktivitäten Wahrnehmung der Verantwortlichkeiten für die Artefakte durch die Rollen Eine konkrete Person kann mehrere Rollen übernehmen u. a. m.

Bsp: RUP Workflow Requirements Analysis 29

14.2.2 V-Modell-XT des Bundes (VMXT) 30 Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Historie 31 1986 1992 1994 1997 August 2004 Februar 2005 2009 2011 Das Bundesministerium der Verteidigung gibt ein Vorgehensmodell für die Softwareentwicklung auf Basis des V-Modells in Auftrag Erstes Modell V-Modell 92 vombundesamt für Wehrtechnik und Beschaffung (BWB) zusammen mit einem CASE-Tool-Hersteller entwickelt Erste Version wurde für die Bundesbehörden des Verteidigungsministeriums verbindlich Es folgten zahlreiche Änderungs- und Verbesserungsvorschläge Es wird die Nutzergemeinschaft ANSSTAND e.v. (Anwender des Softwareentwicklungsstandards der öffentlichen Verwaltung) gebildet, die regelmäßig Erfahrungsaustausche organisiert. Veröffentlichung des verbesserten V-Modell 97 (mit Objektorientierung) als IT-Standard der Bundes Es wurde weiter an der Verbesserung gearbeitet (Schwerpunkt Erweiterbarkeit) Vorstellung des V-Modell XT (VMXT) Veröffentlichung des V-Modell XT VMXT 1.3 VMXT 1.4

Ziele des VMXT 32 Prozessverbesserung: Lernen aus abgeschlossenen Projekten durch Erfahrungsmanagement Flexibilität bei der Projekt- und Projektrollenanpassung durch projektspezifisches V-Modell XT (Tailoring) Minimierung der Projektrisiken durch einen einfachen und klaren Prozess Verbesserung und Gewährleistung der Qualität Erweiterung von Anwendungsbereichen (durch Projekttypen) und Abstraktionsebenen Inkrementalität Kostenkontrolle: Senkung der Kosten mittels klarer Schnittstellen und definierter Rollen in jedem Einzelzyklus des Projektes Transparente Kontrolle der Kosten über den gesamten Systemlebenszyklus Quelle: Broy, M., Rausch, A.:Das neue V-Modell XT - Ein anpassbares Modell für Software und System Engineering; Informatik-Spektrum 28(2005) H.3, S.220-229

Aufbau und Auslieferungsstruktur des VModell XT Vorgehensbausteine Vorgehensbausteine(Moduln) (Moduln) beinhalten schematische l lows, beinhalten schematischeworkf Workf ows, die Aktivitäten, Produkte und Rollen die Aktivitäten, Produkte und Rollen ininsich sichorganisieren. organisieren. Teil 1: Grundlagen des V-Modells Teil 2: Eine Tour durch das V-Modell Teil 3: V-Modell-Referenz-Tailoring Teil 4: V-Modell-Referenz-Rollen Projekttypen Projekttypenlegen legengrobstrukturen Grobstrukturen von Projekten und von Projekten und Projektdurchführungsstrategien Projektdurchführungsstrategien (PDS) (PDS)fest. fest. Teil 5: V-Modell-Referenz-Produkte Teil 6: V-Modell-Referenz-Aktivitäten Teil 7: V-Modell-Referenz-Konventionsabbildungen Teil 8: Anhang [www.v-modell.iabg.de] Teil 9: Vorlagen 33

Projekttypen 34 Ein Projekttyp legt die Infrastruktur und Rahmenbedingungen eines Projekts fest. 1) Systementwicklungsprojekt 1) eines Auftraggebers (AG-Projekt) Der Projekttyp vereinigt die Projektdurchführungsstrategie des Auftraggebers 2) eines Auftragnehmers (AN-Projekt) Der Projekttyp vereinigt die Projektdurchführungsstrategie des Auftragnehmers 3) eines Auftragnehmers mit dem Auftraggeber (AG-AN-Projekt) Projekt ist in der gleichen Organisation oder in mehreren Organisationen, die bewusst miteinander arbeiten 2) Einführung eines organisationsspezifischen Vorgehensmodells Der Projekttyp vereinigt Projektdurchführungsstrategien, die für Auftraggeber und Auftragnehmer alle organisatorischen Maßnahmen bzgl. der Einführung eines organisationsspezifi schen V-Modells beinhalten.

Projekttypvarianten 35 Zu jedem Projekttyp gibt es Projekttypvarianten, die die Projektdurchführungsstrategie festlegen Beispiel: Projekttypvarianten des Projekttyps Systementwicklungprojekt (AG) AG-Projekt mit einem Auftragnehmer AG-Projekt mit mehreren Auftragnehmern Eine Projekttypvariante legt eine Projekt-Durchführungsstrategie (PDS) fest, die einen schematisch geordneten Projektablauf festlegt Festlegung der Reihenfolge, in der die für das Projekt relevanten Entscheidungspunkte durchlaufen werden müssen Unterteilung des Projektes in einzelne Abschnitte

Beispiele für PDS (1): Systementwicklungsprojekt eines Auftraggebers Das VMXT verwendet für die festlegung von PDS Meilenstein-Graphen (Entscheidungspunkt-Steuerfluß-Graphen) Ereignisknotengraph: Entscheidungspunkte werden durch Steuerfluss verbunden Von den Aktionen wird abstrahiert Beispiel: Vergabe und Durchführung von Systementwicklungsprojekten (Schritte des Auftraggebers während des Projektes System wird nicht selbst entwickelt) mit Abfolge der zugehörigen Entscheidungspunkte 36 http://v-modell.iabg.de/v-modell-xt-html/index.html

Beispiele für PDS (2): Agile Systementwicklung Diese Strategie basiert auf der Erwartung eines hohen Realisierungsrisikos, d.h. sie wird eingesetzt, wenn Anforderungen von vornherein nicht eindeutig definierbar sind. http://v-modell.iabg.de/v-modell-xt-html/index.html 37

Vorgehensbausteine im VMXT 38 Metamodell eines Vorgehensbausteins: beinhaltet untergeordnete Aktivitäten Aktivität 1 untergeordnete Produkte bearbeitet verantwortlich 1 Abhängigkeiten Produkt-Zustand geplant Produkt (Arbeitsergebnis, Artefakt) in Bearb. vorgelegt akzeptiert Rolle

Vorgehensbausteine und ihre Bestandteile Eine Produktgruppe ist eine Sammlung von einzelnen Produkten, welche einem Vorgehensbaustein zugeordnet sind. Arbeitsergebnisse (Produkte) sind bestimmte Dokumentations- und Teilergebnisse der Entwicklung. ( Produkt == Artefakt == Objekt == Ergebnis) Der Produkttyp beschreibt auf abstrakter Ebene Produktexemplare, die während eines Entwicklungsprozesses entstehen. Ein Produktexemplar ist die Ausprägung eines Produkttyps. Externe Produkte werden nicht im Rahmen des V-Modell Projekts erstellt. Ein initiales Produkt ist ein Produkt, das in jedem Fall genau einmal erstellt werden muss. Eine Aktivitätengruppe ist eine zusammenhängende Gruppe von Aktivitäten Vorgehensbaustein Produktgruppe Aktivitätsgruppe 1 * wirkt mit Rolle * hat Abhängigkeiten zu anderen 1.. * * * 1 I EArbeitsergebnis/Produkt 1 * * Thema 1..* ist verantwortlich 1 stellt fertig 0/1 Aktivität 1 * 0/1 39 berarbeitet * * Teilaktivität

Landkarte der Vorgehensbausteine: Modulbibliothek des VMXT http://v-modell.iabg.de/v-modell-xt-html/index.htm 40

Produktgruppen 41 Produktgruppen (Artefaktgruppen) können den Bereichen Projekt, Entwicklung und Organisation zugeordnet werden. Beispiele dafür wären: Bereich Projekt 6 Produktgruppen Planung und Steuerung beinhaltet organisatorische und essentielle Produkte des Projektmanagements Berichte beinhalten alle management-begleitenden Dokumente oder Produkte. Bereich Entwicklung 6 Produktgruppen Im Systementwurf werden alle Produkte gesammelt, welche zur technischen Realisierung benötigt werden Bereich Organisation 1 Produktgruppe Prozessverbesserung wird für die Einführung und Pfl ege eines spezifi schen Vorgehensmodell verwendet

Produktgruppe Bereich Projektmanagement 42 6 Produktgruppen V-Modell XT Teil 5

Rollen im VMXT 43 Jedem Arbeitsergebnis/Produkt wird eine eindeutige Rolle zugewiesen, der eine Person im Projekt entspricht. Eine Person kann auch mehrere Rollen einnehmen. Jede Rolle ist durch eine festgesetzte Struktur bestimmt, die besteht aus der Beschreibung, den Aufgaben und Befugnissen, dem Fähigkeitsprofi l, der Verantwortung oder Mitwirkung. Beispiele für Rollen sind: Anforderungsanalytiker(AN oder AG) Ausschreibungsverantwortlicher System-Designer DV-Analytiker DV-Designer SW-Architekt SW-Entwickler Programmierer Support-Berater Applikationsberater HW-Berater Technischer Autor Projektleiter Projektmanager Projektassistent Projektmanager beim AG QS-Manager QS-Verantwortlicher (AN oder AG) Qualitätsprüfer QS-Assistent KM-Verantwortlicher Konf.-Administrator Datenschutz- und Sicherheitsberater

Aktivitäten 44 In einer Aktivität wird festgelegt, welches Arbeitsergebnis (Produkt, Artefakt) von wem, wie erstellt wird. Meist wird unter einer Aktivität auch ein Aktivitätstyp verstanden. Aktivitäten können in Aktivitätsgruppen zusammengefasst werden. Die Aktivitätsgruppen können analog den Produktgruppen den Bereichen zugeordnet werden:... Projekt Entwicklung Organisation Die Aktivitätsstruktur bildet die Menge aller Aktivitätsexemplare eines Projekts und deren Beziehungen zueinander.

Aktivitätsgruppen im Bereich Projektmanagement 45 6 Aktivitätsgruppen [V-Modell XT Teil 6]

Vorgehensbaustein Projektmanagement: Gruppierung von Aktivitäten und Produkten durch Kombination 46 [V-Modell XT Teil 3]

Projektspezifische Anpassung - Tailoring 47 Die Anpassung des V-Modells an konkrete Projektbedingungen wird projektspezifisches Tailoring genannt. Auswahl einer der vier unterstützten Projekttypen u. Projekttypvarianten Definition von Streichbedingungen, um die Anzahl der Aktivitäten und Produkte auf das notwendige Maß zu reduzieren Festlegung des Anwendungsprofils. Das Anwendungsprofil legt die Auswahl der zu verwendenden Vorgehensbausteine und die Projektdurchführungsstrategie fest.

Tailoringwerkzeug Projektassistent 48

VMXT Regelkreis als Ausprägung des PDCA Insgesamt werden Projekte im Regelkreis geführt 49

Bewertung des VModells des Bundes 50 Vorteile: Integrierte Behandlung von Systementwicklung, Qualitätssicherung, Konfigurationsmanagement, Projektmanagement sowie anderen Prozessen Generisches Vorgehensmodell mit definierten Möglichkeiten zum Maßschneidern auf projektspezifische Anforderungen Ermöglicht eine standardisierte Abwicklung von Systemerstellungs-Projekten Eine sehr gute Basis für die Prozesszertifizierung nach ISO 9000 Gut geeignet für große Projekte, auch für eingebettete Systeme Nachteile: Führt zu einer großen Produktvielfalt und Softwarebürokratie bei kleinen und mittleren Softwareentwicklungen bzw. -unternehmen Ohne Werkzeugunterstützung insbesondere zur Unterstützung der Produkterstellung (Dokumentation) ist V-Modell schwer handhabbar 23 definierte Rollen erscheinen überdimensioniert Gefahr des unkritischen Übertragens der Vorgehenskonzepte auf andere Produkttypen bzw. Anwendungsprofile

14.3 Leichtgewichtige Vorgehensmodelle 51 Evolutionäres Vorgehen auf der Basis des PDCA, in kleinen, kurzen Zyklen mit rascher Rückkopplung Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Agile Softwareentwicklung 52 schwergewichtiges leichtgewichtiges (agil) Vor gehensmodell Best Practices Vorgehensmodell Best Practices Best Practices heißt kontinuierlich die Projektsituation beurteilen und entscheiden (kurze Feedback-Zyklen) so wenig wie möglich, aber soviel wie nötig ( lean management ) der Ablauf wird ständig an neue Rahmen-bedingungen angepasst und verbessert am wichtigsten ist, zuerst der Mensch, dann die Methode und zuletzt das Werkzeug wenn ein Tool hilft, wird der Bearbeiter es kaum missen wollen Veränderungspotential aus der Gruppe heraus entwickeln. Mitarbeiter akzeptieren Veränderungen erst nach und nach Change Management eher Angemessenheit als Extremismus embrace change! [16]

Maxime des agilen Handelns 53 Eher offen für Änderungen Eher Menschen und Motivation Eher Vertrauen Eher ergebnis-orientiert Eher darüber miteinander reden! Eher Best Practices aus Erfahrung Cziharz, T.: Agilität Spagat zwischen Ultraleichtbau und Giganten; Vortrag GIRegDD am 15.07.04 als starres Festhalten an Plänen als Prozesse und Tools als Kontrolle als prozess-orientiert als gegeneinander schreiben als verordnete Vorgaben

14.3.1 Extreme Programming 54 Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Was heißt Extreme Programming? 55 XP ist ein evolutionärer (agiler) Softwareentwicklungsprozess für kleine Teams in der Größe von zwei bis etwa zwölf Programmierern Werte des XP: Prinzipien des XP: Kommunikation, Einfachheit, Feedback, Disziplin, Lernen, Qualität und Respekt offene Arbeitsumgebung in größerem Raum mit Flipcharts mit täglichem StandupMeeting kurze Iterationen in Perioden von ein bis drei Wochen, am Ende einer Periode steht ein getestetes System mit neuer Funktionalität verständliche Sprache und gemeinsames Vokabular im Team, um über das zu erstellende System effektiv diskutieren zu können jede Iteration endet damit, in einem Rückblick die eigene Arbeitsweise kritisch zu reflektieren --> Retrospektive Anforderungsanalyse in Form einfacher Geschichten als User Stories, die mittels vom Nutzer geschriebener Story-Karte festgehalten werden Techniken Westphal, F.: Extreme Programming; Copyright 2000-2004; URL: http://www.frankwestphal.de/extremeprogramming.html

5 zentrale Prinzipien von XP 56 Unmittelbares Feedback Einfachheit anstreben Durch Änderungen in kleinen Schritten bleiben Effekte beherrschbar; jede Änderung basiert auf der vorherigen, so dass Reihenfolge überschaubar bleibt (Vermeidung von Seiteneffekten) Veränderung willkommen heißen (embrace change) Einfache Lösungen haben eine Reihe wichtiger Vorteile gegenüber komplizierten Lösungen; daher verständlicher, leichter änderbar, schnellere Reaktion Inkrementelle Veränderung Je kürzer der zeitliche Abstand zwischen Aktion und Rückmeldung ist, desto größer ist der Lernerfolg Änderungen auf Basis von Anforderungen, Entwicklungsprozessen, Systembestandteilen sind nichts Ungewolltes; sie führen in ihrer Gesamtheit zum neuen Produkt Qualitätsarbeit [15 Balzert2] Gute Software befriedigt Softwareentwickler; sie möchten Qualitätsarbeit abliefern, dazu müssen die Qualitätsmaßstäbe vorgegeben werden.

XP-Techniken im Zusammenhang 57 Kunde vor Ort (On-Site Customer) Planungsspiel (Planning Game) 40-Stunden-Woche (40 Hour Week) Metapher (Metaphor) Einfaches Design (Simple Design) Refactoring Programmieren in Paaren (Pair Programming) Testen (Testing) Programmierstandards (Coding Standards) Gemeinsame Verantwortlichkeit (Collective Ownership) Kurze Releasezyklen (Short Releases) Fortlaufende Integration (Continuous Integration)

14.3.2 Scrum 58 Leichtgewichtiges Vorgehensmodell im Rahmen der agilen SW-Entwicklung Zeit-Schachtelung (time boxing) Hauptmerkmale: für komplexe Projekte mit unklar definierten Anforderungen Einbeziehung des Kunden, um nicht fehl zu entwickeln Iteratives Vorgehen, ständige Kontrolle Wenig Rollen Teams organisieren ihren Tagesablauf selbst Ständige Neupriorisierung der Anforderungen http://www.scrum.org/portals/0/documents/scrum %20Guides/Scrum_Guide.pdf http://scrum-master.de

Literature 59 SCRUM Alliance SCRUM certification (SCRUM master) http://www.scrumalliance.org/certifications List of SCRUM tools (Florian Markert) http://www.scrumalliance.org/ http://www.scrum-tools.de/ ICESCRUM Freemium SCRUM tool, web based http://www.icescrum.org/

Scrum: Vorgehensweise 60 14 Tage

Rollen im Scrum 61 Product Owner Scrum-Master vertritt den Auftraggeber aus fachlicher Sicht verantwortlich für das Product-Backlog Priorisierung der einzelnen Product-Backlog-Elemente ist Ansprechpartner für das Team ist verantwortlich für den gesamten Prozess moderiert die Meetings überwacht die Entwicklung (Product-Backlog; Sprint-Backlog..) Team 5 bis 10 Personen verantwortlich für die Umsetzung der Product-Backlogs, bzw. der einzelnen SprintBacklogs Aufwandsschätzung der einzelnen Backlog-Elemente Team organisiert sich selbst

Scrum-Rollen Pigs & Chickens 62 Diese direkt am Prozess beteiligte Rollen werden Pigs genannt, Außenstehende Chickens. Der Ursprung kommt aus einem englischen Witz A chicken and a pig were brainstorming Chicken: Let`s start a restaurant! Pig : What would we call it? Chicken: Ham `n`eggs! Pig : No thanks. I`d be commited, but you`d only be involved! scrum.master.de

Daily SCRUM Meetings 63 Berichten über den Zustand des Sprints und aufgetretene Probleme. KEIN Meeting zum Diskutieren der Architektur oder von Problemen! 3 Fragen soll jedes Team-Mitglied beantworten [ScrumGuide] Was habe ich seit dem letzten Meeting getan? Was werde ich nächstens tun? Welche Hindernisse habe ich erkannt? Der SCRUM-Master muss die erkannten Hindernisse asap ausräumen. Er kämpft für das Team nach außen

Sprint Kanban Board 64 Requirements eines Sprints werden als user stories an eine Wand gepinnt Ihr Zustand wird in weiteren Spalten verfolgt: noch zu tun laufend zu testen getan http://en.wikipedia.org/wiki/kanban_board http://en.wikipedia.org/wiki/scrum_(development)

Sprint Burndown Chart 65 Ein burndown chart hält den Fortschritt des Sprints fest, in Termini von erfüllten Anforderungen http://upload.wikimedia.org/wikipedia/commons/0/05/sampleburndownchart.png

Sprint Review Meetings 66 Sprint Review Meeting: Sprint Retrospektive Meeting: Nach Abschluss des Springs zur Diskussion, was alles erreicht und nicht erreicht wurde zur Repriorisierung des Product Backlogs Diskussion über Prozessverbesserung: was lief gut? was lief schlecht? was kann man besser machen? Ständige Prozessverbesserung Sprint Planning Meeting: zur Fixierung der User Stories für den nächsten Sprint

SCRUM 67 SCRUM ist sehr beliebt; wird schätzungsweise heute in ca. 60% aller Firmen angewendet SCRUM wird oft in parallel arbeitenden Teams durch divide-and-conquer auf größere Probleme angewandt (many scrums) SCRUM wird auch mit VMXT und SPICE kombiniert SCRUM braucht aber den Kunden SCRUM geht nicht so einfach bei Festpreis-Projekten, z.b. auf Ausschreibungen hin

The End 68

Der S.P.A.L.T.E.N. Prozess 69 Der SPALTEN-Prozess ist ein allgemeiner Problemlöseprozess, bestehend aus einem LösungsGenerierungsprozess und einem Realisationsprozess. Seine einzelnen Schritte sind: [Wikipedia/Problemlösen] Situationsanalyse (Ist-Analyse) Problemeingrenzung Alternativen aufzeigen (Lösungsgenerierung) Lösungsauswahl Tragweite analysieren - Chancen und Risiken abschätzen Einführung und Umsetzung - Maßnahmen und Prozesse Nachbearbeitung und Lernen Lösungs-Generierungsprozess Situationsanalyse Problemeingrenzung Alternativengenerierung Lösungsauswahl SPALTEN Tragweite ermitteln Einführung Umsetzung Nachbereitung Lernen

Appendix Spezielle betriebliche Vorgehen 70 Große Firmen fassen ihre eigenen Vorgehensmodelle ab Cap Gemini (SD+M) Quasar Enterprise www.openquasar.de Accenture ADM

71

72

14 Ablauforganisation mit Vorgehensmodellen 1 Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl Softwaretechnologie Fakultät Informatik TU Dresden Version 14-0.2, 03.05.14 1. Phasenmodelle 2. Vorgehensmodelle 1. RUP 2. V-Modell-XT 3. Leichtgewichtige Vorgehensmodelle 1. XP 2. SCRUM Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Literatur 2 [Pichler] Roman Pichler. SCRUM- - Agiles Projektmanagement erfolgreich einsetzen. dpunktverlag. [Lippert] Lippert, M., Roock, S., Wolf, H.: Software entwickeln mit extreme Programming Erfahrungen aus der Praxis; dpunkt.verlag 2002 [ProjFachmann] Autorenkollektiv: Projektmanagement Fachmann Band 1 und 2; RKW-Verlag (5.Auflage) 1999 [Pomberger] Pomberger, G., Pree, W.: Software Engineering - Architektur-Design und Prozessorientierung; Carl Hanser Verlag (3. Aufl.), München 2004 [Zuser] Zuser, W. u.a.: Software-Engineering mit UML und dem Unified Process; Pearson Studium 2004 [Dröschel] Dröschel, W., Heuser, W., Midderhoff, R.: Inkrementelle und objektorientierte Vorgehensweisen mit dem V-Modell 97; Oldenbourg-Verlag 1998 [Hruschka] Hruschka, P., Rupp, Ch.: Agile Softwareentwicklung für Embedded Real-Time Systems mit der UML; Hanser Verlag 2002 Ove Armbrust, Jan Ebell, Ulrike Hammerschall, Jürgen Münch, Daniela Thoma. Prozesseinführung und -reifung in der Praxis: Erfolgsfaktoren und Erfahrungen. 14. Workshop der Fachgruppe WI-VM der Gesellschaft für Informatik. IESE-Report Nr. 034.07/D Version 1.0 31. Januar 2007 vmxt.fraunhofer.de/plaintext/downloads/erfolgsfaktoren034.07.pdf www.v-modell-xt.de

Ablauforganisation 3 Unter UnterAblauforganisation Ablauforganisationversteht verstehtman mandie dieaneinanderreihung Aneinanderreihung systeminterner systeminternerarbeitsabläufe, Arbeitsabläufe,die dieräumlich räumlichund undzeitlich zeitlichso soangeordnet angeordnetsind, sind, dass das System funktionsfähig ist und zielgerichtet arbeitet. dass das System funktionsfähig ist und zielgerichtet arbeitet. Arbeitsabläufe (workflows) dienen dazu, den Ablauf von Arbeitsvorgängen (Aktivitäten) innerhalb eines Projekts mit Hilfe von Prozessen zu organisieren Verantwortlichkeiten innerhalb der Vorgänge zu formalisieren (Rollen) zu rationalisieren, vereinfachen und standardisieren Prozessmodelle beschreiben schematisch die Methodik des Vorgehens, geben also Arbeitsabläufe schematisch vor ad-hoc, automatisiert oder formalisiert sequentiell oder iterativ

4

Prozessmodelle als Mittel der Ablauforganisation Es gibt viele verschiedene Prozessmodelle, die ihre Berechtigung haben, abhängig u.a. vom Produkt (Inhalt) und der Projektgröße Phasenmodelle: Phasen sind erkennbar Spiralmodell V-Modell Inception/ Vorgehensmodelle: Ohne Phasen, aber aus Schablonen/Mustern zusammengesetzt V-Modell des Bundes oder RUP Oft zyklisch:... Modelle zur inkrementellen SWE Evolutionäre Modelle Prototypisches Vorgehen Rückkopplung ist wichtig! Leichtgewichtige, agile Vorgehensmodelle: XP, SCRUM, EOS 5

14.1 Phasenmodelle 6 Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Phasenorganisation 7 Eine EineProjektphase Projektphaseist istein einzeitlicher zeitlicherabschnitt Abschnittinineinem einemprojektablauf, Projektablauf,der der sachlich sachlichgetrennt getrenntvon voneinem einemanderen anderenabläuft. abläuft. Die DieProjektphase Projektphasewird wirddurch durcheine einevernehmlassung Vernehmlassungan aneinem einemmeilenstein Meilenstein offiziell offiziellabgeschlossen. abgeschlossen. Die Phasenorganisation definiert eine Kette logisch aufeinander aufbauender Meilensteine (als Übergänge zwischen den Phasen) Die Phasen enthalten die Summe der Aktivitäten zwischen den Meilensteinen Die Phasenorganisation trägt zur Reduzierung des technischen wirtschaftlichen und terminlichen Risikos bei durch: schrittweises Vorgehen Vorgabe und Überwachung von Zwischenergebnissen (Meilensteinen) Transparenz über den Projektstand (Projektkontrolle, -regelung)

Vorteile der Projektphasen 8 Phasenweises Vorgehen ist ein einfaches Planungs- und ControllingInstrument hilft, den Überblick zu behalten und sich nicht im Detail zu verlieren zwingt zur periodischen Stellungnahme durch Meilensteine Verringerung des Risikos einer Fehlentwicklung durch bessere Überwachung hilft bei der Herstellung einer fortlaufenden Dokumentation Entscheidungsfreiheit des Projektleiters bleibt gewahrt durch Beeinflussung der Entwicklung an den vordefinierten Ergebniszeitpunkten [ Jenny, S. 68 ]

Meilensteine in der Planung von Phasenorganisation Meilensteine sind typisch für die Planung einer Phasenorganisation sind Eckpunkte der Planung und Durchführung an ihnen wird der Stand des Projekts evaluiert befinden sich am Ende einer Phase Basis der Bewertung sind: definierte Arbeitsprodukte an einem Termin Ein Meilenstein, der für eine Gruppe von Aktivitäten gilt, und an dem der Steuerfluss verzweigen kann, heisst Entscheidungspunkt (EP) Entscheidungspunkte kennzeichnen MiniMeilensteine im Projekt dienen der Entscheidung über weiteren Projektablauf Bestimmung von Korrekturmaßnahmen Freigabe des nächsten Abschnitts Entscheid über den Abbruch des Projekts Meilenstein-Spezifikationen müssen von hoher Qualität sein SMART, insb. überprüfbar (als Voraussetzung für nächste Phase) Meilensteinüberprüfung im Controlling durch Meilenstein-Trendanalyse CCC übergebbar (z. B. in die Produktbibliothek, dem AG, ) 9

Bsp: Reihenfolge der Meilensteine im linearen Modell (Wasserfall-Modell) 10 MS 1: Projektziele/ Pflichtenheft Anforderungskatalog MS 2: Fachliches Konzept Wie sieht die Lösung aus? Leistungsbeschreibung MS 3: Technisches Konzept Wie wird die Lösung technisch realisiert? Design-Spezifikation (Architektur) Realisierung Erstellung der Komponenten Komponenten Integration Arbeiten die Komponenten zusammen? System MS 4: MS 5: MS 6: Getestetes System Produkt MS 7: Eingeführtes System Was soll erreicht werden? Werden die Funktionen erfüllt? Einführung und Anwendung des Systems

Phasenmodell des Durchführungsprozesses INECT 11 Die Phasengliederung INECT des schwergewichtigen Vorgehensmodells RUP ist allgemein für Planung und Controlling verwendbar: Inception: Festlegung aller Projektbedingungen und Einrichtung einer Umgebung zur Durchführung aller folgenden Arbeitsschritte Elaboration: Durchführung der Analyse, Festlegung aller Anwendungsfälle und Entwurf der Architektur Construction: Fortführung des Entwurfs sowie Implementierung der Architektur und Durchführung des Tests Transition: Übergangsphase in der das Softwareprodukt beim Kunden auf der Zielplattform installiert und integriert wird; Nachstudien; Prozessverbesserung Inception Elaboration Construction Main phases Transition

Das V-Modell (nach B. Boehm) 12 Systemkonzept Betrieb Konzept- Anford. EntwurfsValidat. Validat. Validation TestValidat. Anforderungsspezifi kation Einführung VALIDATION Akzeptanz-, VERIFIKATION Systemtest Systementwurf Produktentw. Verifi k. Komponentenentwurf Modulentwurf Code Integrationstest Progr. entw. Verifi kation Einzeltest Zeit

Das V-Modell ist ein generisches Phasenmodell zum Problemlösen Ist-ZustandErmittlung Messung der Verbesserung Soll-Ermittlung Messung des Erreichens des Soll mit Erfolgskriterien ErfolgskriterienErmittlung Realisierung 13

Ein Phasenmodell mit Rückkopplung: Das Spiralmodell nach Boehm Zielanalyse Risiko- und Alternativenanalyse Zielanalyse Festlegung von Zielen, Lösungsvarianten, Nebenbedingungen und Einschränkungen 2 1 Erarbeitung und Beurteilung von Lösungsvarianten, Erkennen und Beseitigen von Risiken Zur Anzeige wird der QuickTime Dekompressor GIF benötigt. 4 Planung Planung der nächsten Phase [4 Buhl, S.15] Entwicklung 3 Entwicklung und Validierung der nächsten Produktstufe 14

Sprial 2 Month 0-12 18 months MAN DISS GOAL-1 FEAS-1 CASE-1 Sprial 2 Month 12-24 Other Integrated Projects of DC-2 15 Other Integrated Projects of DC-2 ASS-1 GOAL-2 REAL-2 Other Integrated Projects of DC-2 ASS-2 CASE-2 Sprial 3 Month 25-36 GOAL-3 Other Integrated Projects of DC-2 REAL-3 Other Integrated Projects of DC-2 ASS-3 CASE-3 GOAL4 Sprial 4 Month 37-48 Other Integrated Projects of DC-2 REAL-4 ASS-4 CASE-4

DP/2.1 DP/2.2 DP/2 DP21.3 DP/2.5 DP/2.4 REQ/3 REQ/3.1 REQ/3.2 16 REQ/3.4 REQ/3.5 REQ/3.3 COP/4 COP/4.1 COP/4.3 COP/4.2 COP/4.4 CCT/6 CCT/6.1 CCT/6.2 CCT/6.3 SPC/5 SPC/5.1 CTE/7 SPC/5.2 SPC/5.3 SPC/5.4 AS/9.1 CTE/7.1 CTE/7.2 CTE/7.3 CTE/7.4 CTE/7.5 CTE/7.6 UCM/8 UCM/8.1 UCM/8.2 UCM/8.3 AS/9.2 AS/9 AS/9.1 AS/9.2 AS/9.3 AS/9.4 AS.3 AS.4

Merkmale des Spiralmodells 17 Merkmale: Minimierung des Risikos steht im Mittelpunkt Jeder Spiralzyklus durchläuft dieselben Grundschritte Ziele eines Zyklus werden aus Ergebnissen des vorherigen abgeleitet Parallele Spiralzyklen für verschiedene Komponenten einer Anwendung [Prof. Dr. S. Seibert; FH Darmstadt] Vorteile: Hohe Flexibilität des Vorgehens durch rückgekoppelten Prozess (wie PDCA) Integrierte Risikoanalyse Qualitätssicherungsmaßnahmen gut integrierbar Auch für Wartungsprojekte geeignet Nachteile: Spiralen manchmal zu lang

Prototyping-Orientiertes Phasenmodell mit Rückkopplung 18 Verfeinerung des iterativen Wasserfall-Modells oder des V-Modells Teile eines Produktes grob entwickeln, so, dass sie ausführbar werden Minimal viable product (MVP): welches ist das wichtigste Feature? Problemanalyse und Grobplanung Istzustands-Beschreibung, Projektauftrag, Grobplan Systemspezifi kation, Projektplan, Systemprototyp Systemspezifi kation User-InterfacePrototyping Entwurf Systemarchitektur, KomponentenStruktur, A.u.K.-Prototypen Architektur- und KomponentenPrototyping Implementierung Software (Code, Doku, Tests) fertiges Produkt Systemtest Betrieb und Wartung [Pomberger] Zeit Prototyping ist ein Vorgehensmodell, das schneller realitätsnahe Funktionstests ermöglicht Das zugrundeliegende Modell ist ein iteratives Spiralmodell Es wird so früh wie möglich implementiert ( release-often ) Folgen für Produkt: Frühe Vervollständigung der Zielerforschung, Veranschaulichung des Design und frühzeitige Überprüfung der Implementierung Frühzeitige Fehlererkennung erleichtert die Qualitätssicherung. Qualitätsmerkmale Benutzerfreundlichkeit, funktionale Adäquatheit, Änder- und Erweiterbarkeit, Korrektheit und Zuverlässigkeit werden gesteigert. Folgen für Stakeholder und Kunden: Durch unmittelbaren Beteiligung der Anwender erhöht sich die Akzeptanz des späteren Produktes Größere Sicherheit von Anforderungsanalyse und Entwurf ist Basis für eine bessere Planbarkeit, Aufwandsabschätzung und Termintreue. Die frühzeitige Auseinandersetzung mit dem Prototypen führt zu einer vorgezogenen Einsatzvorbereitung, während der die Benutzer geschult und trainiert werden

Objektorientiertes Phasenmodell mit Rückkopplung und Wiederverwendung 19 Problemanalyse Spezifi kation Entwurf Implementierung Test Einplanung Verwendung Bereitstellung Betrieb u. Wartung Implementierung Dokumentation nach [Pomberger] Klassenbibliothek Framework auf der Basis eines Komponentenmodells und Kompositionssystems [CBSE] EOS ist ein spezielles Phasenmodell

14.2 Vorgehensmodelle 20 Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Vorgehensmodellierung 21 Vorgehensmodelle Vorgehensmodelledefinieren definierentätigkeiten Tätigkeiten(Aktivitäten) (Aktivitäten)und undvon vonihnen ihnen erzeugte Arbeitsergebnisse (Artefakte, Dokumente, Produkte) erzeugte Arbeitsergebnisse (Artefakte, Dokumente, Produkte)sowie sowie ihr ihrkomplettes kompletteszusammenwirken Zusammenwirkeneinschließlich einschließlichbenötigter benötigterrollen, Rollen, Produktzustände Produktzuständeund undsämtlicher sämtlicherressourcen, Ressourcen,die diefür fürden denprojektablauf Projektablauf benötigt benötigtwerden. werden. Ziele: Modellierung als System ineinandergreifender Bestandteile soll sicherstellen, dass die vom Kunden gewünschte Leistung planmäßig in hervorragender Qualität erbracht wird Modellierung in ihrer Gesamtheit aus Aktivitäten, Artefakten (Produkten), Zuständen und Rollen und Ressourcen Modellierung des Arbeitsflusses (Workflow) unter Einschluss der beteiligten Rollen zur Entwicklung begleitende Tätigkeiten, wie Qualitätsmanagement (QM,QS), Konfigurationsmanagement (KM), Projektmanagement (PM) Modellierung der inkrementellen Softwareentwicklung durch stufenweises Vorgehen auf der Basis insgesamt gefestigter Anwenderforderungen organisationsneutrale Anwendung und Anpassung an spezielle Anwendungsfälle (Tailorisierung)

Einsatz von schwergewichtigen Vorgehensmodellen Bei Festpreisprojekten Kundeninvolvierung erlaubt agiles Vorgehen Wenn große Sicherheitsanforderungen herrschen Schätzung und Planung spielt dann eine große Rolle Wenn Kunde nicht vor Ort involviert sein will oder kann 22 und der Code gegen Anforderungsspezifikationen verifiziert und zertifiziert werden muss

Grundlegende Begriffe von Vorgehensmodellen Worker/Rollen: wer - Beschreiben, wie sich Personen im Prozess verhalten sollen und welche Verantwortlichkeiten sie besitzen. Üblicherweise geht es dabei um die Erstellung oder Überarbeitung von Artefakten. Arbeitsergebnisse/Produkte/Artefakte: was - Sind Informationsteile, welche durch einen Prozess erstellt, geändert oder genutzt werden. Ein Worker kann durch eine Person oder ein ganzes Team realisiert werden Eine Person kann im Laufe des Lebenszyklus verschiedene Rollen einnehmen. Aktivitäten: wie - Tätigkeiten, die ein Worker durchführen soll 23 Artefakte werden von Workern als Eingabe für Aktivitäten genutzt. Sie sind aber auch Ausgabe von Aktivitäten. Weiterhin es es möglich, dass sich Artefakte aus anderen Artefakten zusammensetzen. Arbeitsabläufe (Workflows): wann - Beschreiben aussagekräftig die Abfolge von Aktivitäten, damit es zu einem sinnvollen Ergebnis kommt. Außerdem werden die Interaktionen zwischen den Workern aufgezeigt.

14.2.1 (Rational) Unified Process 24 Ursprünglich von der Firma Rational, dann IBM Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Eigenschaften des Rational Unified Process (RUP) Durch Anwendungsfälle (use cases) gesteuert Aus ihnen werden alle Modelle bis hin zu den Testdaten zur Überprüfung der Anwendungsfälle entwickelt. Iterativer und inkrementeller Prozess Die Komplexität der Projekte erfordert nicht nur eine einmalige, sondern eine wiederholte Abfolge der Arbeitsschritte. Im Zuge der Iterationen werden so viel wie möglich Produkte parallel weiterentwickelt. Das gesamte Projekt wächst somit inkrementell. Architekturzentriert Die Architektur bildet die Grundlage für das gesamte System. Sie berücksichtigt alle Bedingungen für das Projekt einschließlich der nichtfunktionalen Anforderungen. Mit der Architektur werden die grundlegende Form und alle Anwendungsfälle umgesetzt. Vorhandene Architekturschablonen (Client-Server, Schichten...) können genutzt werden. [ Zuser, W. ] 25

Rational Unified Process (1) 26 Jeder Workflow, ob Kern- oder Supporting, wird in die Phasen des INECT eingeordnet.

Phasenmodell des Rational Unified Process (2) 27 Die Workflows sind über ein Phasenmodell mit 4 Haupt-Phasen gestreut: Inception: Festlegung aller Projektbedingungen und Einrichtung einer Umgebung zur Durchführung aller folgenden Arbeitsschritte Elaboration: Durchführung der Analyse, Festlegung aller Anwendungsfälle und Entwurf der Architektur Construction: Fortführung des Entwurfs sowie Implementierung der Architektur und Durchführung des Tests Transition: Übergangsphase in der das Softwareprodukt beim Kunden auf der Zielplattform installiert und integriert wird. Die Phasen werden iteriert Inception Elaboration Construction Main phases Transition

Core und Supporting Workflows 28 Der RUP enthält eine Bibliothek von Vorgehensbausteinen (workflows). Ein Vorgehensbaustein enthält: Verknüpfung der Aktivitäten über die Abhängigkeitsbeziehungen Aktivität als eine Einheit von Arbeitsschritten Aktivitäten können mehrmals durchgeführt werden Typen der weiterzugebenden Artefakte (Arbeitsprodukte): Textdokumente Modellelemente Modelle (Quell-)Code Testspezifikationen Zuordnung der Rollen zu den durchzuführenden Aktivitäten Wahrnehmung der Verantwortlichkeiten für die Artefakte durch die Rollen Eine konkrete Person kann mehrere Rollen übernehmen u. a. m.

Bsp: RUP Workflow Requirements Analysis 29

14.2.2 V-Modell-XT des Bundes (VMXT) 30 Softwaremanagement, Prof. Uwe Aßmann, Technische Universität Dresden, Fakultät Informatik

Historie 31 1986 1992 1994 1997 August 2004 Februar 2005 2009 2011 Das Bundesministerium der Verteidigung gibt ein Vorgehensmodell für die Softwareentwicklung auf Basis des V-Modells in Auftrag Erstes Modell V-Modell 92 vombundesamt für Wehrtechnik und Beschaffung (BWB) zusammen mit einem CASE-Tool-Hersteller entwickelt Erste Version wurde für die Bundesbehörden des Verteidigungsministeriums verbindlich Es folgten zahlreiche Änderungs- und Verbesserungsvorschläge Es wird die Nutzergemeinschaft ANSSTAND e.v. (Anwender des Softwareentwicklungsstandards der öffentlichen Verwaltung) gebildet, die regelmäßig Erfahrungsaustausche organisiert. Veröffentlichung des verbesserten V-Modell 97 (mit Objektorientierung) als IT-Standard der Bundes Es wurde weiter an der Verbesserung gearbeitet (Schwerpunkt Erweiterbarkeit) Vorstellung des V-Modell XT (VMXT) Veröffentlichung des V-Modell XT VMXT 1.3 VMXT 1.4