IT-Projektmanagement Teil 2: Der Gegenstand von SW-Projekten · PDF fileDV-Konzept,...
date post
27-Aug-2019Category
Documents
view
215download
0
Embed Size (px)
Transcript of IT-Projektmanagement Teil 2: Der Gegenstand von SW-Projekten · PDF fileDV-Konzept,...
CEA v6.4
Kaiserslautern, WS 2008/2009 Dr. Gerhard Pews
IT-Projektmanagement Teil 2: Der Gegenstand von SW-Projekten
CEA v6.4 07.11.2008 2
Inhalte
Der Fahrplan durch die Vorlesung
• Einführung • Das „Was“: Der Gegenstand von Softwareprojekten • Das „Wie“: Die Tätigkeiten in einem Projekt und wie man sie ausführt • Vorbereitung eines Projekts • Projektplanung • Durchführen eines Projekts • Unterstützende Tätigkeiten • Soft Factors • Wirtschaftliche Aspekte
CEA v6.4 07.11.2008 3
AGENDA
• Motivation
• Tätigkeiten bei der SW-Entwicklung
• Diese Tätigkeiten im Kontext von Vorgehensmodellen
• Stufen
CEA v6.4 07.11.2008 4
Einführung & Motivation
• Fokus der Vorlesung liegt im Software-Entwicklung. Das deckt auch Reengineering, Wartung und Weiterentwicklung in Projektform ab.
• Häufigster Fall von IT-Projekten • Vorgehensweise und Erkenntnisse übertragbar auch auf andere
Projekte. • Grundlegende Frage
– Wie gehe ich in meinem Projekt vor, um es zum Erfolg zu führen? – Wie erreiche ich den Projekterfolg mit Sicherheit und nicht nur
durch Zufall?
CEA v6.4 07.11.2008 5
AGENDA
• Motivation
• Tätigkeiten bei der SW-Entwicklung
• Diese Tätigkeiten im Kontext von Vorgehensmodellen
• Stufen
CEA v6.4 07.11.2008 6
In Software-Entwicklunsprojekten finden sich immer die gleichen Tätigkeiten wieder.
Anforderungs- analyse
& Fachliche Konzeption
Technische Konzeption
Realisierung Integration und Test
CEA v6.4 07.11.2008 7
In jedem Softwareentwicklungsprojekt finden sich vier grundlegende Tätigkeiten.
Tätigkeiten
Anforderungsanalyse & Fachliche Konzeption
Technische Konzeption
Realisierung
Integration & Test
Kurzbeschreibung/Fragen
• Was soll das System inhaltlich tun? • Welche Anforderungen soll es erfüllen? • Wie sieht die fachliche Lösung aus?
• Wie sieht die technische Lösung aus? • Wie soll das System programmiert werden?
• Erzeugen von Code
• Zusammenfügen mit Nachbarsystemen • Funktionaler Gesamttest
CEA v6.4 07.11.2008 8
Anforderungsanalyse und Fachliche Konzeption bilden die Grundlage der Softwareentwicklung.
• Anforderungsanalyse und Fachliche Konzeption sind oft nicht zu trennen.
• Ergebnisse – Anforderungen (funktional und nicht-
funktional) – Fachliche Beschreibung der Lösung – Prozesse – Use Cases (durch Software unterstützte
Prozess-Schritte) – Fachliches Datenmodell – Fachlicher Sytemüberblick innen und
außen, Fachliche Architektur
Tätigkeiten
Anforderungsanalyse & Fachliche Konzeption
Technische Konzeption
Realisierung
Integration & Test
CEA v6.4 07.11.2008 9
Die Technische Konzeption legt fest, wie das System zu erstellen ist.
• Inhalte der Technischen Konzeption – Technischer Systemüberblick innen und
außen – Software-Architektur (Module,
Schichten, Komponenten, etc.) – Technisches Datenmodell – Systemarchitektur (Hardware) – Betriebsdokumentation – Vorlage für die Implementierung, Design
für Implementierung
Tätigkeiten
Anforderungsanalyse & Fachliche Konzeption
Technische Konzeption
Realisierung
Integration & Test
CEA v6.4 07.11.2008 10
In der Realisierung wird das System programmiert.
• Inhalte der Realisierung – Programmieren – Testen (Entwicklertest) – Dokumentieren
• Ergebnisse – Code – Dokumentation
Tätigkeiten
Anforderungsanalyse & Fachliche Konzeption
Technische Konzeption
Realisierung
Integration & Test
CEA v6.4 07.11.2008 11
Die Technische Konzeption legt fest, wie das System zu erstellen ist.
• Ergebnis: – Fertiges System
• Inhalte von Integration & Test – Systemintegration: Kopplung mit
Nachbarsystemen, Zusammenführen einzelner Module System ist „als Ganzes“ vollständig.
– Systemtest (gesamt, funktional): Fachliche Tester testen das System so, wie es später im Produktionsbetrieb genutzt werden soll.
Tätigkeiten
Anforderungsanalyse & Fachliche Konzeption
Technische Konzeption
Realisierung
Integration & Test
CEA v6.4 07.11.2008 12
Geläufige und häufig verwendete alternative Namen für die Tätigkeiten.
• Die Begriffe des Software Engineering sind (leider) nicht genormt. Sowohl die Inhalte als auch die Bezeichnungen der Schritte können variieren.
• Häufig werden alternative Namen genutzt. – Anforderungsanalyse & Fachliche Konzeption
Requirements analysis, Analysis, Analyse, Fachkonzept, Spezifikation, Lastenheft, Pflichtenheft, – Technische Konzeption
DV-Konzept, Konstruktion, Design, Pflichtenheft. Definition – Realisierung
Implementierung, Programmierung – Integration & Test
Systemintegration, Gesamtintegration
CEA v6.4 07.11.2008 13
Nutzen von Konzepten im Projektmanagment Kosten der Fehlerbehebung in Projekten
Quelle: B. Boehm, sd&m Konferenz 2001
?
CEA v6.4 07.11.2008 14
Nutzen von Konzepten im Projektmanagment Kosten der Fehlerbehebung in Projekten
Quelle: B. Boehm, sd&m Konferenz 2001
CEA v6.4 07.11.2008 15
AGENDA
• Motivation
• Tätigkeiten bei der SW-Entwicklung
• Diese Tätigkeiten im Kontext von Vorgehensmodellen
• Stufen
CEA v6.4 07.11.2008 16
Die sequentielle Anordnung der Tätigkeiten: Wasserfall
Fach. Konzeption
Tech. Konzeption
Realisierung
Test & Integration
nach Winston W. Royce 1970
Projektstart Ziel
CEA v6.4 07.11.2008 17
Beschreibung des Wasserfallmodells
• Alle Schritte werden sequentiell durchgeführt • Mit einem Schritt wird erst dann begonnen, wenn der vorige Schritt fertig ist,
d. h. das Ergebnis der vorigen Phase vorliegt.
• Bewertung – Einfach zu verstehen – Einfach zu managen – Einfach zu controllen (Definierte Phasenübergänge)
• Aber: Was tun, wenn sich Anforderungen ändern?
CEA v6.4 07.11.2008 18
Wasserfall mit Rückkopplung
Fach. Konzeption
Tech. Konzeption
Realisierung
Test & Integration
nach B. Boehm 1981
Aber: Was tun, wenn sich Anforderungen ändern? keine wirklich gute Antwort
CEA v6.4 07.11.2008 19
Reaktionsmöglichkeiten auf Änderung der Anforderungen
• Reaktion 1: Abblocken • Reaktion 2: Schneller im Projekt sein. Dadurch gibt es weniger Zeit
für Änderungen in den Anforderungen • Reaktion 3: Änderung annehmen und in die Software einbauen
CEA v6.4 07.11.2008 20
Iterative Verfahren
• Die Kette der Tätigkeiten wird iteriert, bis das Projektziel erreicht ist.
CEA v6.4 07.11.2008 21
Projektverlauf in Iterativen Verfahren (evolutionär)
• Fragestellung: Wann erreiche ich mein Ziel? Was ist dann überhaupt mein Ziel?
• Zeit? Kosten? Leistungsumfang?
Fach. Konz. Tech.
Konz Rea Test & Int. Fach.
Konz. Tech. Konz Rea Test &
Int. Fach. Konz. Tech.
Konz Rea Test & Int.
CEA v6.4 07.11.2008 22
Projektverlauf in Iterativen Verfahren (inkrementell)
• Fragestellung: Wann erreiche ich mein Ziel? Was ist dann überhaupt mein Ziel?
• Zeit? Kosten? Leistungsumfang?
Fach. Konz. Tech.
Konz Rea Test & Int.
Tech. Konz Rea Test &
Int.
Tech. Konz Rea Test &
Int.
CEA v6.4 07.11.2008 23
Iterative Verfahren: evolutionär und inkrementell
• Evolutionär: – Anforderungsanalyse, Fach. Konzeption pro Iteration
• Inkrementell – Anforderungsanalyse, Konzeption, konkretes Festlegen der Ziele
nur zu Beginn – Jede Iteration erzeugt ein weiteres Stück der Lösung – Schneller zu ersten Ergebnissen, aber immer noch anfällig gegen
Änderung der Anforderungen • Grundlegender Konflikt: Flexibilität gegen garantierte Zielerreichung.
CEA v6.4 07.11.2008 24
Prototyping
• Ergänzender Schritt, bzw. konkrete Ausgestaltung von „Anforderungsanalyse & fachliche Konzeption“
• Bau eines Prototypen, der einen Eindruck der zu erstellenden Software vermittelt. – Besseres Verständnis für Auftraggeber und Auftragnehmer – Besse