Teil V: Projektmanagement 50 Projektplanung



Ähnliche Dokumente
Teil V: Projektmanagement 50 Projektplanung

Obligatorisches Lesen Vorgehensmodelle (Phasenmodelle)

Projektmanagement und Software-Qualität

Teil V: Projektmanagement 50 Projektplanung

Teil V: Projektmanagement 50 Projektplanung

Teil V: Projektmanagement 50 Projektplanung

8. Projektmanagement und Software-Qualität

Prozess-Modelle für die Softwareentwicklung

Softwareentwicklungsprozess im Praktikum. 23. April 2015

Informationswirtschaft II Rational Unified Process (RUP)

Informationswirtschaft II

Teil V: Projektmanagement 50 Projektplanung

IT-Projekt-Management

Grundlagen Software Engineering

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

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

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

SPI-Seminar : Interview mit einem Softwaremanager

PROJEKTMANAGEMENT GRUNDLAGEN_2

Das Wasserfallmodell - Überblick

Wirtschaftsinformatik I Teil 2. Sommersemester Übung

Kapitel 2: Der Software-Entwicklungsprozess

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

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

Lösungen zum Test objektorientierter Software

Projektmanagement. Stand Projektmanagement 1

WAS IST DAS prorm PROJEKT GANTT? 2. prorm Projekt Gantt Überblick 2. DIE VORTEILE DES prorm PROJEKT GANTT 3. Gesamtkonzept 3

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

Software Systems Engineering

Software Engineering. Dokumentation. Wintersemester 2005/06. Kapitel 21. Universität Zürich Institut für Informatik

3. Vorgehensmodelle Software Engineering. Prof. Dr. Bernhard Humm Hochschule Darmstadt, 23. Oktober 2006

oose. Was (noch) klassische Projekte von Scrum & Co lernen können eine empirische Studie

Software Engineering

Aussage: Das Seminar ist hilfreich für meine berufliche Entwicklung

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

07. November, Zürich-Oerlikon

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

Produktionsplanung und steuerung (SS 2011)

Stuttgart, Scrum im Wasserfall... oder wie kann Agilität dem Kunden schmackhaft gemacht werden?

17 Architekturentwurf Vorgehen und Dokumentation

Checkliste: Projektphasen

Software Engineering. Dokumentation! Kapitel 21

Umfrage zum Informationsbedarf im Requirements Engineering

Änderungsmanagement bei iterativer SW-Entwicklung

Projekt- Management. Landesverband der Mütterzentren NRW. oder warum Horst bei uns Helga heißt

3.2,,Eichung von Function Points (Berichtigte Angabe)

Konzentration auf das. Wesentliche.

Übungsaufgaben zum Software Engineering: Management

T1 - Fundamentaler Testprozess

ÜBUNG. Einführung in das IT- Projektmanagement WS 2012/13. Dr. The Anh Vuong

Projektstart für Auftraggeber und Entscheider. Bern, 27. August 2013

Abschnitt 16: Objektorientiertes Design

9.6 Korrekturmaßnahmen, Qualitätsverbesserung

SPC Lehrgang Projektmanagement Basic

Wir machen neue Politik für Baden-Württemberg

WORKFLOWS UND INITIALISIERUNG DER ARCHITEKTURENTWICKLUNG MANAGEMENT VON IT ARCHITEKTUREN

Mind Mapping am PC. für Präsentationen, Vorträge, Selbstmanagement. von Isolde Kommer, Helmut Reinke. 1. Auflage. Hanser München 1999

IT-Basics 2. DI Gerhard Fließ. Vorgehensmodelle

Softwareentwicklung bei KMU - Ergebnisse einer Studie zum Entwicklungs-, Projekt- und Qualitätsmanagement

Software Engineering. Bibliographisches Institut & F. A. Brockhaus AG, Mannheim; Spektrum Akademischer Verlag GmbH, Heidelberg, 2003

Agile Softwareentwicklung mit Scrum

Software Engineering


Software- Entwicklungsaktivitäten und Vorgehensmodelle. Lebenszyklusmodell

Agile Software Development

3.4 Unified Process Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process.

Geld Verdienen im Internet leicht gemacht

Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen. Wir bringen Qualität. Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen

IT-Projekt Management

«PERFEKTION IST NICHT DANN ERREICHT, WENN ES NICHTS MEHR HINZUZUFÜGEN GIBT, SONDERN DANN, WENN MAN NICHTS MEHR WEGLASSEN KANN.»

Software Projekt 2 / Gruppe Knauth Lernziele:

Erfahrungen mit Hartz IV- Empfängern

Projektmanagement in der Spieleentwicklung

Projektmanagement Kapitel 3 Tools die Werkzeuge. Projektstrukturplan PSP

Dokumentation des Reflexionsworkshops 1 im Projekt QA am 15. Dezember 2005 im Haus Eckstein, Nürnberg

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

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

Übung Einführung in die Softwaretechnik

Ein Vorwort, das Sie lesen müssen!

Geyer & Weinig: Service Level Management in neuer Qualität.

INFOGEM AG Informatiker Gemeinschaft für Unternehmensberatung. Robust und Agil gegeneinander oder miteinander?

Hermann-Hesse-Realschule Tuttlingen

arbeitspaketbasierendes Projektmanagement im Anlagenbau: Smart Pro Webinar: Christian Eichlehner, Anton Lorenz Primas CONSULTING

Lernerfolge sichern - Ein wichtiger Beitrag zu mehr Motivation

Was sind Jahres- und Zielvereinbarungsgespräche?

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?

Einführung und Motivation

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Auktionen erstellen und verwalten mit dem GV Büro System und der Justiz Auktion

Qualitätsmanagement: Dokumentieren. Kontrollieren. Verfolgen.

Agile Softwareentwicklung

Testen Prinzipien und Methoden

Softwareentwicklung aus Sicht des Gehirns

Repräsentative Umfrage zur Beratungsqualität im deutschen Einzelhandel (Auszug)

Glaube an die Existenz von Regeln für Vergleiche und Kenntnis der Regeln

Einführung von Test-Prozessen laut TMMi. Egon Valentini 1. März 2010

10. Fachtagung IT-Beschaffung 2014 Fachforum 6

Welches Übersetzungsbüro passt zu mir?

Software-Praktikum. Gabriele Taentzer Philipps-Universität Marburg Sommersemester 2013

Lösungsvorschlag zur Klausur zu Projektorganisation und Management in der Software-Entwicklung

Transkript:

Teil V: Projektmanagement 50 Projektplanung Ja, mach nur einen Plan Sei nur ein großes Licht! Und mach' dann noch 'nen zweiten Plan Geh'n tun sie beide nicht. Bertolt Brecht, Die Dreigroschenoper Softwaretechnologie, Prof. Uwe Aßmann 1 Projektstruktur: Beispiele Diplomarbeit 1. Literaturrecherche 2. Entwurf des eigenen Ansatzes 3. 4. Ausarbeitung......... 1.1 vorgegebene Literatur auswerten 1.2 weitere Quellen identifi zieren 1.3. weitere Literatur beschaffen 1.4 beschaffte Literatur auswerten SW-Projekt X 1. 2. Entwurf 3....... 2.1 Grob-E. 2.2 Fein-E. 4. Infrastruktur... 2

Hausbau Hausbau 1. Baugenehmigung 2. Aushub 3. Keller 4. Erdgeschoß... 2.1 Bagger 2.2 Hand justierung... 3.1 Bodenplatte 3.2 Kellermauerwerk 3.3 Kellerdecke 5. Dachgeschoß 6. Elektro 7. Estrich 8. Innenputz 3 Aufwandsschätzung Schätzungen für: relativen Aufwand der Teilaufgaben absoluten Aufwand für Subsysteme Faustregeln, Erfahrungswerte Techniken der Aufwandsschätzung: Befragung von Entwicklern Klassifikation z.b. durch "Function Point"-Methode Wie viele Teilfunktionen? Wie schwierig ist jede Teilfunktion? Metriken für Spezifikationen "Kalibrierung" durch eigene Erfahrungswerte Mehr in Vorlesung Softwaremanagement, SS 4

Abhängigkeiten Welche Aktivitäten hängen von Ergebnissen anderer Aktivitäten ab? (Abhängigkeitsgraph) Aufwandsschätzung + feste Termine + Abhängigkeiten: Netzplantechniken (z.b. PERT) GANTT-Diagramm Beispiel für Abhängigkeiten, erfaßbar in Aktivitätendiagramm: 1. 2. Entwurf 4. Infrastruktur 3. 2.1 Grob-Entwurf 2.2 Fein-Entwurf 3.1 Impl. Subsystem 1 3.2 Impl. Subsystem 2 5 Zeitplanung: Gantt-Diagramm Arbeitspaket 1.1 Projektwochen 1 2 3 4 5 6 7 8... 2.1 Grobentwurf 2.2 Feinentwurf 3.1 Impl. Subsys. 1 3.2 ff... 4.1 Werkzeuge Identifikation kritischer und unkritischer (4.1, 3.1) Arbeitspakete (kritisch = Verlängerung verlängert Gesamtprojektdauer) 6

Zeitplanung Hausbau: Gantt-Diagramm Arbeitspaket Projektwochen 1 2 3 4 5 6 7 8... 1.1 Baugenehmig. 2.1 Aushub 2.2 Keller 3.1 Erdgeschoß 3.2 Dachgeschoß... 14.1 Hausanschluß 7 Ressourcenplanung Umplanung mit dem Ziel: Anpassung an vorhandene Ressourcen Packen in Flächen über Anz. Personen und Projektwochen Anzahl Personen 5 4 3 2 4.1 4.1 4.1 2.2 3.1 1 1.1 2.1 3.2 1 2 3 4 5 6 7 8... Projektwochen 8

Meilensteine Ein Meilenstein ist ein klar definiertes Zwischenresultat, an Hand dessen der Projektfortschritt beurteilt werden kann. Beispiele: "Anforderungsspezifikation zusammen mit Auftraggeber verabschiedet" "Erster Prototyp lauffähig" Schlechtes Beispiel: "Code zu 50% fertig" Meilensteine im Gantt-Diagramm: Arbeitspaket 1.1 2.1 Grobentwurf Projektwochen 1 2 3 4 5 6 7 8... M1 9 Projektverfolgung Das Projektmanagement muß ein "Frühwarnsystem" für eventuelle Probleme betreiben (Projektverfolgung). Informationsquellen: Laufende (z.b. wöchentliche) Management-Berichte Arbeitszeit-Kontierung Resultate (deliverables) Rückkopplung zum Projektteam Regelmäßige Projektbesprechungen Beispiel: Akkumulierter Ressourcenverbrauch Akkumulierte Kosten Ist Budget Soll geplantes Projektende Berichtszeitpunkt Zeit 10

Meilenstein-Trendanalyse Anhand jedes Managementberichts sagt das Management die Meilensteine neu voraus Projektwochen 1 2 3 4 5 6 7 8... A B C 1 2 3 4 5 6 7 Jeweilige Vorhersage Erreicht 8 11 Teamzusammenstellung (Staffing) Regeln für Teamproduktivität: Optimale Teamgröße: ca. 5-7 Personen Gemischte Qualifikationen Team von externer Kommunikation entlastet Große Projekte aus vielen Teams zusammengesetzt Harlan Mills / Baker 1972: Chefprogrammierer-Struktur Berichtswochen Chef- Programmierer Stellvertreter Spezialisten & Bibliothekar Testverantwortlicher Qualitätsverantwortlicher Dokumentationsverantwortlicher 12

Organisation von Sitzungen Vor Sitzungen sollte man immer folgendes (schriftlich) fixieren: Ziele Zweck des Treffens (was wollen wir erreichen?) Agenda Erfolgskriterien des Treffens (wie können wir kontrollieren, dass wir das Ziel erreicht haben?) Welche Teilnehmer? Haben diese versteckte Zielkonflikte? Zeitplanung: Wie lange welcher Punkt? Verantwortlicher für ein Ergebnisprotokoll 13 Typische Gliederung eines Ergebnisprotokolls: Name der Sitzung Teilnehmer, Moderator, Ort, Zeit Tagesordnung Standard-Tagesordnungspunkte: Ergebnisse Protokollkontrolle Bericht über den erreichten Stand Einzelaufgaben Nächster Termin gegliedert nach Tagesordnungspunkten (TOPs) 14

Einzelaufgaben (Action Items) Einzelaufgabe (action item, action point) besteht aus: Lfd. Nr. Verantwortliche Person Kurztitel Beschreibung Ursprung (Sitzung, auf der Aufgabe definiert wurde) Termin Status (offen, verlängert, erledigt) Liste der Einzelaufgaben wird bei jedem Treffen durchgegangen und aktualisiert: Welche Aufgaben sind fällig? Was ist das Ergebnis? Was ist weiter zu tun? Termin verlängern Neue Aufgaben definieren 15 50.2 Vorgehensmodelle (Phasenmodelle) Softwaretechnologie, Prof. Uwe Aßmann 16

Obligatorisches Lesen Zuser Kap. 1-3 oder Ghezzi Chapter 1 oder Pfleeger Chapter 1; Chap 8.1 Vorgehensmodell (engl. process model) Strukturiertes Modell zum Erstellen von Software Phasenmodell Vorgehensmodell, das den Herstellungsprozesses in defi nierte und abgegrenzte Phasen einteilt Vorgabe einer Reihenfolge in der Bearbeitung der Phasen 17 Wie gehe ich vor, um Software zu entwickeln? Ad hoc Es lief schon oft schief... Denver International Airport, Krise 1993-95 Bahncard 50 Hamburger Güterbahnhof 1995 Gibt es nicht irgendwelche Hilfen, strukturiert vorzugehen? 18

Vorgehen nach einem Phasenmodell Phasenmodell (process model, software development life cycle) Einteilung des Herstellungsprozesses für ein (Software-) Produkt in definierte und abgegrenzte Abschnitte, abgegrenzt durch Meilensteine Grobgliederung: Phasen (phases) Feingliederung: Schritte (stages, steps) Vorgabe einer Reihenfolge in der Bearbeitung der Phasen Richtlinie für die Definition von Zwischenergebnissen Detailliertes Phasenmodell + Zwischenergebnisdefinition = Vorgehensmodell Grundaktivitäten: Entwurf Validation (v.a. Test, Integration) Evolution (v.a. Wartung) 19 Wasserfall-Modell (pur) W. Royce (1970) Entwurf Produktdefinition Entwurfs- Spezifikation Code Test, Integration geprüfter Code Änderungswünsche Wartung Das Wasserfallmodell ist nicht realistisch. Für ein Produkt müssen, schon um des Geschäftsmodells willen, Verbesserungen (Lebenszyklen) eingeplant werden Ein Lebenszyklus dauert i.d. 2 Jahre Dennoch muss ein Softwareingenieur den Wasserfall beherrschen, denn viele andere Vorgehensmodelle setzen darauf auf 20

Ungefähre Verteilung des Arbeitsaufwandes 10 % Entwurf 20 % 20 % 50 % Test, Integration Wartung 21 Qualitätssicherung im V-Modell Testfälle Abnahmetest Grobentwurf Testfälle Systemtest Feinentwurf Testfälle Integrationstest Modultest Boehm 1979 ( V-Modell ) 22

V-Modell des BMI (vereinfacht) Abnahme-Test Grobentwurf Subsystem-Test Test & Integration Feinentwurf Bröhl/Dröschel 1993 Prüfaktivitäten 23 Inkrementelle (evolutionäre) Entwicklung Entwurf Evolution Modifikation 24

Evolutionäre Entwicklung Typisch für kleinere Projekte oder experimentelle Systeme Bei Objektorientierung auch für größere Projekte anwendbar? Aufgabe Prototypen, Vorversionen Entwurf Validation 25 extreme Programming (XP) Aktuelle, kontrovers diskutierte Entwicklungsmethodik (Kent Beck) Konsequente evolutionäre Entwicklung Der Programmcode ist das ergebnis, das Entwurfsdokument und die Dokumentation. Code wird permanent (Tagesrhythmus) lauffähig gehalten Diszipliniertes und automatisiertes Testen als Qualitätssicherung Diverse weitere innovative Techniken (z.b. Paar-Programmierung) liefert schnell Ergebnisse, aber u.u. auf Kosten der Langlebigkeit kann prinzipiell mit traditionelleren - und Entwurfstechniken kombiniert werden Nachteile wird manchmal als Gegenbewegung zu sauberem Softwareentwurf mißverstanden ist nur geeignet für relativ überschaubare, isolierte Anwendungen "Agile" Softwareentwicklung (www.agilemanifesto.org): weitere Ansätze, z.b. Crystal, Scrum 26

Spiralmodell Zielbestimmung, Beurteilung von Alternativen Risikoanalyse Planung der nächsten Phase B. Boehm (1988) V&V V&V Integration Abnahme P1 P2 P3 P4 Test Feinentwurf Code Anforderungen Grobentwurf V&V = Verifikation & Validation Prototypen Entwicklung nächstes Teilprodukt 27 Objektorientiertes Spiralmodell Entwurf Test Produkte (Releases) einschl. Prototypen Langfristige Vorplanung der Zyklen-Durchläufe 28

Spiralmodell vs. evolutionäre Entwicklung Grundidee identisch: Zyklisches Durchlaufen von Entwicklungsaktivitätem Aufeinanderfolgende Prototypen Evolutionäre und agile Entwicklung: Reaktion auf Änderungen ist wichtiger als Verfolgung eines Plans Planung nur für sehr kurze Zeiträume (Tage, Wochen) im voraus Viele, häufige Durchläufe (z.b. Tagesrhythmus) Spiralmodell: Einsetzbar in verschiedener "Strenge" Vorausplanung von Durchläufen Anzahl Durchläufe manchmal schon bei Projektbeginn festgelegt Wenige Durchläufe (z.b. Quartalsrhythmus) Kompromiß zwischen Planbarkeit und Agilität 29 Parallelität im Entwicklungsprozeß Anforderungsspezifikation Produktdefinition Entwurfsspezifikation Subsystem 1 Subsystem 2 Subsystem 3 Code Subsystem 1 Subsystem 2 Subsystem 3 Ergebnisse "Makro-Phasen" /Entwurf/ "Mikro-Phasen" /Entwurf/ Zeit 30

Zweidimensionales Modell Rational Unified Process 1999 (Jacobson et al., Kruchten) mit Mikround Makrophasen Entstehung (inception) Ausarbeitung (elaboration) Erstellung (construction) Zeit Übergang (transition) Entwurf Test Konfi gurationsmanagement Projektmanagement Tätigkeit 31 Aufwandsverteilung und Schwerpunkte Rational Unified Process 1999 (Jacobson et al., Kruchten) Entwurf Test Entstehung (inception) Ausarbeitung (elaboration) Erstellung (construction) Zeit Übergang (transition) Konfi gurationsmanagement Projektmanagement Tätigkeit 32

Rational Unified Process (RUP) von IBM Rational: 33 Teilprojekte und Überlappungsgrade konservativ I1 E1 C1 T1 Teilprojekt 1 Release 1 I2 E2 C2 T2 Teilprojekt 2 Release 2 aggressiv I1 E1 C1 T1 Teilprojekt 1 I2 E2 C2 T2 Teilprojekt 2 Release 1 Release 2 Standard I1 E1 C1 T1 Teilprojekt 1 Release 1 I2 E2 C2 T2 Teilprojekt 2 Release 2 I E C T Inception Elaboration Construction Transition 34

Vorgehen im Softwarepraktikum 4. Semester Echte Kunden Vorgehensmodell: V-Modell mit Akzeptanztests Einfache Inkrementalität: Kunde hat einen Verbesserungswunsch frei, der erst zu einem späten Zeitpunkt bekanntgegeben wird Intern kann ein inkrementelle Vorgehensmodell gewählt werden 35 Was haben wir gelernt? Vorgehen nach einem strukturierten Phasenmodell ist gewöhnlich besser als ad-hoc Vorgehen Realistische Vorgehensmodelle sind iterativ und inkrementell Der Ingenieur misst, entwirft, validiert und verbessert 36

Referenz Die deutschen Folien der Softwaretechnologie-Vorlesung stammen zu grossen Teilen aus den Jahren 2000-2003 und wurden von Prof. Dr. Heinrich Hussmann, jetzt LMU München, erstellt. Used by permission. 37