Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Software-Lebenszyklus

Ähnliche Präsentationen


Präsentation zum Thema: "Software-Lebenszyklus"—  Präsentation transkript:

1 Software-Lebenszyklus
Inhalt Vorgehensmodell/Phasenplan Wasserfallmodell WAS-Beschreibung WIE-Beschreibung Weitere Phasenmodelle: Spiral-Modell, V-Modell, RUP Extreme Programming SW-Qualitätssicherung (SW-QS) Qualitätskosten (aus Projektsicht) Konstruktive/analytische QS Qualitätsmodell / Qualitätsmerkmale Review Beispiel: Qualitätsmodell für Pflegbarkeit Christoph Riewerts

2 SW-Lebenszyklus Phasenmodell
Wie heißt dieses Vorgehensmodell? 2 Entwicklungsphasen zur Beschreibung, was realisiert werden soll. Studie Analyse Entwurf 2 Entwicklungsphasen zur Beschreibung, wie das Produkt realisiert werden soll Implementierung Betrieb

3 SW-Lebenszyklus Phasenmodell
Tätigkeiten in der Phase „Studie“ (Projekt-Vorphase): Definition der Projektziele Situationsanalyse (grobe Darstellung) Darstellung des SOLL-Ablaufs Gegenüberstellung der SOLL/IST-Abläufe Vorstellung der Projektfinanzierung Terminvorstellungen für den Projektablauf Tätigkeiten in der Phase „Analyse“: Systemabgrenzung Zielsetzung Zustandsanalyse (fein) Analyse der Datenflüsse und Funktionen (funktionsorientierter Ansatz) Analyse der Kontrollflüsse und Ablaufbedingungen (ablauforientierter Ansatz) Analyse der Daten und Datenbeziehungen (datenorientierter Ansatz) Qualitätsziele Verifikation der Analyseergebnisse (mittels eines CASE-Tools)

4 SW-Lebenszyklus Phasenmodell
Tätigkeiten in der Phase „Entwurf“: Festlegen der Software-Architektur (Client-Server, Kommunikation, Schnittstellen, …) Festlegen der Hardware-Konfiguration Festlegen der modularen Software-Struktur Entwurf der Benutzeroberfläche (Layout, Navigation) ggfs. Datenbankentwurf Entwurf des Testplans Tätigkeiten in der Phase „Implementierung“: Übersetzen der Module und Komponenten Modul- und Komponententest Integrationstest Erstellen der Benutzerdokumentation: Systembeschreibung (für die Weiterentwicklung) Bedienungsanleitung (für die Benutzung) Betriebsanleitung (für das Rechenzentrum) Tätigkeiten in der Phase „Betrieb“: Inbetriebnahme, Abnahme, Störungs- und Fehlerbeseitigung, Schulung der Benutzer, Weiterentwicklung

5 SW-Lebenszyklus Phasenmodell
Weitere Phasenmodelle: Spiral-Modell iterativer Entwicklungsprozess Definition von Prototypen V-Modell: seit 1986 in Deutschland entwickelt (von mehreren Hochschulen) vorgesehen für IT-Projekte der öffentlichen Hand, jedoch auch in der Privatwirtschaft eingesetzt. keine strikte zeitliche Abfolge der Aktivitäten RUP (Rational Unified Process) von der IBM entwickelt objektorientiertes Vorgehensmodell benutzt UML (Unified Modeling Language)

6 SW-Lebenszyklus Spiral-Modell

7 SW-Lebenszyklus V-Modell (1von2)

8 SW-Lebenszyklus V-Modell (2von2)
Projekt planen und kontrollieren PM Voraussetzungen schaffen und Softwareentwicklungs- umgebung (SEU) bereitstellen Plandaten Istdaten SEU Plan- Ist- Plan- Ist- Plan- Ist- SEU SEU SEU daten daten daten daten daten daten SE QS- Produktstruktur Produkt Anforderungen planen entwickeln vorgeben Rechte Produkte Produkte / prüfen Rechte QS- QS- Produkt verwalten Ergebnis Anforderung Konfigurations- struktur QS Produkt KM

9 Preliminary Iteration(s)
SW-Lebenszyklus RUP Process Workflows Supporting Workflows Management Environment Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter. #1 Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Configuration Mgmt Requirements Elaboration Transition Inception Construction Iterationen umfassen jeweils alle Workflows einer Phase

10 SW-Lebenszyklus Extreme Programming (XP)
XP ist gedacht für kleinere Projekte mit unklaren und sich immer wieder ändernden Anforderungen Das Team besteht aus Mitgliedern (Kunde(!), Programmierer, Manager, Trainer, Verfolger) Der Kunde ist fester Bestandteil des Teams. Er definiert, priorisiert und entwickelt die Testfälle für die User Stories Die Programmierung (incl. Test) erfolgt in Paaren (pair-programming) mit Rotation der Partner Gemeinsame Verantwortung der Gruppe für den Code: Jeder kann Änderungen am Code vornehmen Test Driven Development (TDD): Alle Tests sollten möglichst automatisch ablaufen Entwickler schreiben Unit Tests, Kunden schreiben funktionale Tests Zuerst Testfall entwerfen, dann Funktionalitäten solange implementieren, bis Testfall erfolgreich Testfall als Spezifikation der Anforderungen Test als Kriterium für Anforderungserfüllung

11 SW-Lebenszyklus Extreme Programming
Der Prozess ist in monatliche Releases gegliedert, die wiederum in wöchentliche Iterationen von mehreren Tasks Die sequentielle Integration garantiert zu jeder Zeit ein lauffähiges System Die Entscheidungskompetenz liegt bei den Entwicklern und beim Kunden. Das Management zeigt lediglich zu lösende Probleme und Fortschritte des Teams auf Strenge Einhaltung von Richtlinien: simple design, develop for today, refactoring Die Teammitglieder müssen erfahren und kommunikativ sein XP geht von einer 40 Stunden Woche aus. Überstunden sollten überflüssig sein

12 SW-Lebenszyklus Extreme Programming
Vorteile von XP Vollständige Erfüllung der Anforderungen wegen der engen Kopplung von Auftraggeber und Auftragnehmer Gute Termineinhaltung wegen des strengen Zeitrasters Hohe Qualität wegen der umfangreichen Tests und der Richtlinien Große Motivation des Teams wegen Entscheidungskompetenz und Verantwortungsübernahme Nachteile von XP Das Fehlen einer expliziten Spezifikation und einer Entwurfsdokumentation wird häufig kritisiert spätere Änderungen sind nur unvollständig berücksichtigt Das gemeinsame Code-Eigentum kann zu Problemen führen Es gibt keine empirische Untersuchung, die belegt, dass XP anderen Vorgehensweisen überlegen ist


Herunterladen ppt "Software-Lebenszyklus"

Ähnliche Präsentationen


Google-Anzeigen