Softwareentwicklungsmethoden: Attribute, Modelle und Lebenszyklus
Eingeordnet in Elektronik
Geschrieben am in
Deutsch mit einer Größe von 3,88 KB
ATRERS und Qualitätsmerkmale
ATRERS: Korrekte, eindeutige, vollständige, verifizierbare, konsistente, veränderbare, präzise organisierte, durchsuchbare, vom Kunden verständliche, designunabhängige Anforderungen.
ScalingFactor: Korrektheit, Zuverlässigkeit, Effizienz, Integrität, einfache Bedienung und Wartung, Flexibilität, einfache Tests, Portabilität, Wiederverwendbarkeit, einfache Interoperabilität.
Life-History (Lebenszyklus)
Nachfolge von Stadien, die ein Softwareprodukt während seiner Existenz durchläuft. Versuche, die Reihenfolge der einzelnen Schritte und die Kriterien für den damit verbundenen Übergang zwischen diesen Phasen zu bestimmen.
Software-Engineering (IngieneriaSoftware)
Anwendung wissenschaftlicher Erkenntnisse auf die Konstruktion und den Bau von Computerprogrammen und die zugehörigen Unterlagen für deren Entwicklung.
Softwareentwicklungsmodelle
Wasserfall-Modell
Jede Phase beginnt, wenn die vorherige Phase endet. Die Ziele müssen erreicht werden, um in die nächste Phase überzugehen. Jeder Schritt erzeugt Dokumentation und Eingaben, was die Erfassung weiterer Daten verhindert.
Phasen:
- Planung
- Analyse
- Design
- Programmierung
- Tests
- Wartung
Nachteile:
- Stark sequenziell
- Schwierigkeiten, alle Anforderungen zu Beginn festzulegen
- Fehler werden erst in der späteren Wartungsphase entdeckt und müssen gepatcht werden
Klassisches Modell mit Prototyping
Erste Version des Produkts, die einige Merkmale des endgültigen Systems aufweist (charakterisiert).
Vorteile (Pros):
- Hilft bei der Festlegung der Anforderungen
- Unterstützt Entwickler bei der Verbesserung des Produkts
- Reduziert das Risiko von Patches
Nachteile (Cons):
- Der Kunde ist sich nicht bewusst, dass das Produkt noch nicht rechtskräftig ist
- Zusätzliche Investitionen
- Mögliche schlechte Entscheidungen
Automatisiertes Prozessmodell (Prog Automatische Modell)
Einführung in die Automatisierung des Softwareprozesses, die Verwendung formaler Spezifikationssprachen, die ein Produkt prototypisieren, validieren und Wartungsbelastungen für die Spezifikation reduzieren.
Vorteile (Pros):
- Pflege der Softwarequalität wird verbessert
- Reduzierung der Entwicklungskosten
Nachteile (Cons):
- Stärkere Einbeziehung des Kunden erforderlich
- Kompromiss zwischen den erhaltenen Leistungen und der Höhe, in der die Spezifikation steigen muss
- Die Technik ist noch nicht vollständig verfügbar
Inkrementelles Modell (Inkremental-Modell)
Sequenzen klassischer Rad-Anwendungen; jede Iteration erzeugt einen Zuwachs des Outputs.
Vorteile (Pros):
- Nützlich, wenn das Personal für die vollständige Umsetzung nicht zur Verfügung steht
- Jede Lieferung kann von den Benutzern bewertet werden
Nachteile (Cons):
- Schwierigkeiten bei der Ermittlung der erforderlichen Erhöhung in jeder Iteration
Spiralmodell
Das Modell ist iterativ, interaktiv und entwickelt sich weiter; der Prototyp ist kein einfaches Modell, sondern entwickelt sich in Richtung des Endprodukts.
Phasen:
- Planung
- Risikoanalyse
- Technisches Gutachten des Kunden
Vorteile (Pros):
- Der Prototyp entwickelt sich zum Endprodukt
Nachteile (Cons):
- Die Bewertung der Risiken ist sehr schwierig
- Neues Modell, weniger verwendet
Verwandte Modelle:
- Modell Montage: Charakteristikum des Spiralmodells, interaktiv-evolutionärer Ansatz.
- Mod Xp Prog: High-Speed-Anpassung (Kaskade).