Obligatorisches Lesen Vorgehensmodelle (Phasenmodelle)



Ähnliche Dokumente
Teil V: Projektmanagement 50 Projektplanung

Teil V: Projektmanagement 50 Projektplanung

Teil V: Projektmanagement 50 Projektplanung

Teil V: Projektmanagement 50 Projektplanung

Teil V: Projektmanagement 50 Projektplanung

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

Prozess-Modelle für die Softwareentwicklung

Informationswirtschaft II Rational Unified Process (RUP)

Informationswirtschaft II

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

IT-Projekt-Management

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

Grundlagen Software Engineering

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

Wirtschaftsinformatik I Teil 2. Sommersemester Übung

Kapitel 2: Der Software-Entwicklungsprozess

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

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

PM.2.1. Herstellung Großer Softwaresysteme Für Hängebrücken gibt es keine Bastler-Bausätze.

Das Wasserfallmodell - Überblick

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

Übungen zur Softwaretechnik

Software Systems Engineering

Abschnitt 16: Objektorientiertes Design

Übungsaufgaben zum Software Engineering: Management

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

Der Unified Process ist ein generischer Prozeß zur objektorientierten Software- Erstellung

Umfrage zum Informationsbedarf im Requirements Engineering

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

Software- Entwicklungsaktivitäten und Vorgehensmodelle. Lebenszyklusmodell

Software-Lebenszyklus

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

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

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

Softwareentwicklungsprozess im Praktikum. 23. April 2015

Kapitel 1 Software-Prozessmodelle

Software Engineering

ecambria experts IT-Projekte in der Krise Ursachen und Vermeidungsstrategien aus Sicht eines Gerichtssachverständigen

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

Die praktische Bedeutung der verschiedenen Vorgehensmodelle in der Software-Entwicklung

Übung Einführung in die Softwaretechnik

Datenschutzfreundliches Projektmanagement Sven Thomsen Unabhängiges Landeszentrum für Datenschutz Schleswig-Holstein

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

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

SPI-Seminar : Interview mit einem Softwaremanager

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

Requirements Engineering I. Der Spezifikationsprozess!

Lösungen zum Test objektorientierter Software

Softwareentwicklungsprozesse. 18. Oktober 2012

Projektmanagement: Prozessmodelle

Inhaltsverzeichnis. Inhaltsverzeichnis... I. 1 Problemstellung V-Modell Allgemeines Anwendung des V-Modells...

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

Systemdenken und Gestaltungsmethodik Einführung und Grundlagen II

PROJEKTMANAGEMENT GRUNDLAGEN_2

Herkömmliche Softwareentwicklungsmodelle vs. Agile Methoden

ZuuL - Entwicklung eines Adventures

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

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

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

Was versteht man unter einem Softwareentwicklungsmodell?

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

Teil V: Projektmanagement 50 Projektplanung

Software Engineering Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen

Software Engineering. Dokumentation! Kapitel 21

Software-Projektmanagement Vorgehensmodelle vor dem Hintergrund globaler Software Projekte

Konsolidierung und Neuimplementierung von VIT. Aufgabenbeschreibung für das Software Engineering Praktikum an der TU Darmstadt

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

Erfahrungen über den Einsatz einer agilen Entwicklungsmethode fürdie Produktentwicklung unterstützt durch Polarion ALM forsubversion

T1 - Fundamentaler Testprozess

Water-Scrum-Fall Ein Entwicklungsprozess mit Zukunft? Bernhard Fischer

Thomas Schissler Uwe Baumann

Vergleich von klassischer und agiler Entwicklungsmethodik anhand der Entwicklung eines in Statemate simulierbaren Modells eines Türsteuergeräts

07. November, Zürich-Oerlikon

Software Engineering

Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I)

Prüfung Software Engineering I (IB)

10 Jahre agile Softwareentwicklung Wie erwachsen sind wir geworden?

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit

Agile Softwareentwicklung

IT-Basics 2. DI Gerhard Fließ. Vorgehensmodelle

Dokumentation für die Software-Wartung

Vgl. Kapitel 5 aus Systematisches Requirements Engineering, Christoph Ebert

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

Vorgehensmodelle zur Softwareentwicklung

Validierung und Verifikation!

,$ -. "+0 *+*+ ! / -#$%$. #$%'' $ () 1 2$ #$%$! 1 2$3 )!

Agile Softwareentwicklung in der Versicherungs-IT Fehlschlag oder Heilsbringer?

9 Die Unified Modelling Language UML und der Rational Unified Process RUP / Objectory

WSR Softwarewartung und Prozessmodelle in Theorie und Praxis. Urs Kuhlmann Andreas Winter


360 -Feedback im Talent Management (Dr. Ernst Domayer)

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

Einführungsstrategien komplexer IT-Lösungen

Agile Softwareentwicklung mit Scrum

Kirkpatrick s Four Levels of Evaluation

Karriere in der IT und Informatik: Voraussetzungen für den Arbeitsplatz der Zukunft

Grundlegende Veränderungen in der Software-Dokumentation durch agile Entwicklung?

Objektorientierte Analyse

Projektmanagementsoftware: Standard vs. Individual

Kapitel 10: Dokumentation

Transkript:

Obligatorisches Lesen Vorgehensmodelle (Phasenmodelle) Zuser Kap. 1-3 oder Ghezzi Chapter 1 oder Pfleeger Chapter 1; Chap 8.1 http://homepages.cs.ncl.ac.uk/brian.randell/nato/ The first International Conference on Software Engineering (ICSE) 1968. Prof. Dr. rer. nat. habil. Uwe Aßmann Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Fakultät für Informatik TU Dresden 07-1.0, Jan 21, 2008 Softwaretechnologie, Prof. Uwe Aßmann 1 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? Prof. Uwe Aßmann, Softwaretechnologie 3 Phasenmodell (engl. process model) Einteilung des Herstellungsprozesses in defi nierte und abgegrenzte Phasen Vorgabe einer Reihenfolge in der Bearbeitung der Phasen Prof. Uwe Aßmann, Softwaretechnologie 2 Vorgehen nach einem Phasenmodell Phasenmodell (engl. process model oder software development life cycle SDLC) Einteilung des Herstellungsprozesses für ein (Software-) Produkt in definierte und abgegrenzte Abschnitte. 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: Validation (v.a., ) Evolution (v.a. Wartung) Prof. Uwe Aßmann, Softwaretechnologie 4

Wasserfall-Modell (pur) Ungefähre Verteilung des Arbeitsaufwandes Produktdefinition W. Royce (1970) 10 % s- Spezifikation 20 % 20 % 50 %, geprüfter, Änderungswünsche Wartung Prof. Uwe Aßmann, Softwaretechnologie 5 Wartung Prof. Uwe Aßmann, Softwaretechnologie 6 Qualitätssicherung im V-Modell 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 Grobentwurf fälle fälle Abnahmetest Systemtest Feinentwurf fälle stest Modultest Boehm 1979 ( V-Modell ) Prof. Uwe Aßmann, Softwaretechnologie 7 Prof. Uwe Aßmann, Softwaretechnologie 8

V-Modell des BMI (vereinfacht) Inkrementelle (evolutionäre) Entwicklung Abnahme- Grobentwurf Subsystem- & Feinentwurf Evolution Bröhl/Dröschel 1993 Prüfaktivitäten Prof. Uwe Aßmann, Softwaretechnologie 9 Evolutionäre Entwicklung Modifikation Prof. Uwe Aßmann, Softwaretechnologie 10 extreme Programming (XP) Typisch für kleinere Projekte oder experimentelle Systeme Bei Objektorientierung auch für größere Projekte anwendbar? Aufgabe Validation Prototypen, Vorversionen Prof. Uwe Aßmann, Softwaretechnologie 11 Aktuelle, kontrovers diskutierte Entwicklungsmethodik (Kent Beck) Konsequente evolutionäre Entwicklung Der Programmcode ist das ergebnis, das sdokument und die Dokumentation. wird permanent (Tagesrhythmus) lauffähig gehalten Diszipliniertes und automatisiertes en 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 stechniken 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 Prof. Uwe Aßmann, Softwaretechnologie 12

Spiralmodell Objektorientiertes Spiralmodell Zielbestimmung, Beurteilung von Alternativen Risikoanalyse Planung der nächsten Phase B. Boehm (1988) V&V V&V P1 P2 P3 P4 V&V = Verifikation & Validation Prototypen Entwicklung nächstes Teilprodukt Prof. Uwe Aßmann, Softwaretechnologie 13 Spiralmodell vs. evolutionäre Entwicklung Produkte (Releases) einschl. Prototypen Langfristige Vorplanung der Zyklen-Durchläufe Prof. Uwe Aßmann, Softwaretechnologie 14 Parallelität im Entwicklungsprozeß 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 Prof. Uwe Aßmann, Softwaretechnologie 15 Anforderungen Grobentwurf Feinentwurf Abnahme Anforderungsspezifikation Produktdefinition sspezifikation Subsystem 1 Subsystem 2 Subsystem 3 Subsystem 1 Subsystem 2 Subsystem 3 Ergebnisse "Makro-Phasen" // "Mikro-Phasen" // Prof. Uwe Aßmann, Softwaretechnologie 16 Zeit

Zweidimensionales Modell Aufwandsverteilung und Schwerpunkte Rational Unified Process 1999 (Jacobson et al., Kruchten) mit Mikro- und Makrophasen Zeit Konfi gurationsmanagement Projektmanagement Entstehung (inception) Ausarbeitung (elaboration) Erstellung (construction) Übergang (transition) Rational Unified Process 1999 (Jacobson et al., Kruchten) Konfi gurationsmanagement Projektmanagement Tätigkeit Entstehung (inception) Ausarbeitung (elaboration) Erstellung (construction) Zeit Übergang (transition) Tätigkeit Prof. Uwe Aßmann, Softwaretechnologie 17 Rational Unified Process (RUP) Prof. Uwe Aßmann, Softwaretechnologie 18 Teilprojekte und Überlappungsgrade konservativ I1 E1 C1 T1 Teilprojekt 1 Release 1 I2 E2 C2 T2 Teilprojekt 2 Release 2 aggressiv Release 1 I1 E1 C1 T1 Teilprojekt 1 Release 2 I2 E2 C2 T2 Teilprojekt 2 Prof. Uwe Aßmann, Softwaretechnologie 19 Release 1 Standard I1 E1 C1 T1 Teilprojekt 1 Release 2 I2 E2 C2 T2 Teilprojekt 2 Prof. Uwe Aßmann, Softwaretechnologie 20 I E C T Inception Elaboration Construction Transition

Vorgehen im Softwarepraktikum 4. Semester Was haben wir gelernt? Echte Kunden Vorgehensmodell: V-Modell mit Akzeptanztests Einfache Inkrementalität: Kunde hat einen Verbesserungswunsch frei, der erst zu einem späten Zeitpunkt bekanntgegeben wird 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 Intern kann ein inkrementelle Vorgehensmodell gewählt werden Prof. Uwe Aßmann, Softwaretechnologie 21 Prof. Uwe Aßmann, Softwaretechnologie 22 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. Prof. Uwe Aßmann, Softwaretechnologie 23