Softwareentwicklungsprozesse: Von Anforderungen bis Wartung
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 4,11 KB
Softwareentwicklungsprozesse und -anforderungen
Es ist notwendig, die Gesamtaktivität zu erfassen, um Software gemäß den Anforderungen eines Benutzers zu entwickeln.
ES-Software-Spezifikation
Kunden und Ingenieure definieren die Software und legen Beschränkungen für deren Betrieb fest.
Software-Entwicklung
Die Software wird konzipiert und programmiert.
Validierung der Software
Die Software wird überprüft, um sicherzustellen, dass sie dem entspricht, was der Kunde wünscht.
Software-Wartung
Die Software wird modifiziert, um sich an sich ändernde Marktbedingungen und Kundenanforderungen anzupassen.
Voraussetzung der Software
Diese Eigenschaften sind für ein Softwaresystem wünschenswert. Diese Anforderungen spiegeln die Notwendigkeiten des Kunden wider, ein System, das hilft, bestimmte Probleme zu lösen. Der Prozess der Entdeckung, Analyse, Dokumentation und Überprüfung ist Teil des Konzepts der "Software-Anforderung".
Modelle der Softwareentwicklung
Inkrementelles Modell
Das Spiralmodell kombiniert das iterative Prototyping mit kontrollierten und systematischen Aspekten des linearen sequentiellen Modells und berücksichtigt die Perspektive der Risikoanalyse. Das inkrementelle Modell kombiniert Elemente der Kaskade, wobei iterativ vorgegangen wird.
Iteratives Vorgehensmodell
Das Vorgehensmodell ist ein iteratives inkrementelles Prototyping, das darauf abzielt, mit jedem Schritt ein operatives Produkt zu präsentieren.
Wasserfall-Schritte (Waterfall Steps)
Anforderungen
Generierung der Spezifikation, die das System dokumentiert und als Grundlage für Budget, Zeitplan usw. dient.
Diskussion
Erfordert eine klare und genaue Kenntnis der Problemdomäne und der Software-Features.
Projekt (Design)
Definition der Datenstrukturen, Software-Architektur, Verfahren und Schnittstellen.
Codierung (Encoding)
Übersetzung des Projekts in eine für die Maschine lesbare Sprache.
Test
Sicherstellen, dass die Eingabe des Programms das erwartete Ergebnis erzeugt.
Wartung (Maintenance)
Analyse von Performance-Problemen, möglichen Fehlern und so weiter.
Continuous Integration (CI)
CI ist ein Entwicklungsprozess, der die Praktiken agiler Methoden integriert und darauf abzielt, die Qualität in der Softwareentwicklung zu sichern. Er führt automatisch viele automatisierte Tests durch und erstellt das Projekt. Bei Fehlern oder Abweichungen von etablierten Standards (Qualitätsstandards) wird automatisch benachrichtigt.
Projektmanagement-Rollen und -Aktivitäten
Projektleiter
Definieren des Umfangs, Fortschritte managen, Risiken managen, das Team anpassen (Menschen, Zuständigkeiten), Überprüfung des Budgets.
Zeitplan (Timeline)
Ursachen für Aktivitäten, Abhängigkeiten zwischen Aktivitäten, Schätzung der Ressourcen für Aktivitäten, Zuweisung von Personen zu Aktivitäten, Erstellung von Projektplänen.
Anforderungen (Requirements)
Funktionale Anforderungen
Aussagen über die Dienstleistungen, die das System bereitstellen soll, wie es auf bestimmte Eingaben reagieren soll und wie es sich in bestimmten Situationen verhalten soll.
Nicht-funktionale Anforderungen
Einschränkungen der Dienste oder Systemfunktionen, z. B. Anforderungen an Zuverlässigkeit, Robustheit, Effizienz.
Nutzeranforderungen
Aussagen in natürlicher Sprache mit Abbildungen, welche Dienste das System bereitstellen soll und unter welchen Zwängen es operieren muss.
Systemanforderungen
Definition der Funktionen, Dienste und betrieblichen Einschränkungen des Systems. Das Systemanforderungsdokument muss präzise sein.