1 / 12

Software-Lebenszyklus

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

Download Presentation

Software-Lebenszyklus

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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-LebenszyklusPhasenmodell 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-LebenszyklusPhasenmodell 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-LebenszyklusPhasenmodell 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-LebenszyklusPhasenmodell 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-LebenszyklusSpiral-Modell

  7. SW-LebenszyklusV-Modell (1von2)

  8. Voraussetzungen schaffen Projekt planen und Softwareentwicklungs- und kontrollieren umgebung (SEU) bereitstellen SW-LebenszyklusV-Modell (2von2) PM 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 Rechte prüfen Produkt QS- QS- verwalten Ergebnis Anforderung Konfigurations- struktur KM QS Produkt

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

  10. SW-LebenszyklusExtreme Programming (XP) • XP ist gedacht für kleinere Projekte mit unklaren und sich immer wieder ändernden Anforderungen • Das Team besteht aus 2 - 12 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-LebenszyklusExtreme 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, developfortoday, refactoring • Die Teammitglieder müssen erfahren und kommunikativ sein • XP geht von einer 40 Stunden Woche aus. Überstunden sollten überflüssig sein

  12. SW-LebenszyklusExtreme 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

More Related