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).

Verwandte Einträge: