Softwareentwicklung - professionell, zielorientiert & benutzerfreundlich |
|
|
|
Softwareentwicklung oder auch Softwaretechnik ist eine zielorientierte
Tätigkeit unter systematischer Verwendung derjenigen Prinzipien,
Werkzeuge und Methoden die zu einem für den Kunden guten Programm zur
effektiven Bewältigung seiner Arbeitsaufgaben führen. Bei einem
professionellen Dienstleister kann man hier eine angemessene
Unterstützung in allen Phasen der Softwareentwicklung erwarten.
Es gibt insgesamt zehn Phasen in der Softwareentwicklung.
1. Planung
Hier wird zunächst ein sogenanntes Lastenheft geschrieben, dass alle
Anforderungsdefinitionen des zu realisieren Projekts enthält. Aus
diesem ergeben sich dann das Pflichtenheft, wo schon die mit
technischen Ansätzen verfeinerte Variante eines Lastenhefts vorliegt.
Ebenfalls in der Planungsphase sind Aufwandsschätzungen hinsichtlich
Kosten und Zeit sowie ein tragfähiges Vorgehensmodell zu entwickeln.
2. Analyse
Hier kommt es auf die vollständige - alle Anforderungen des Kunden berücksichtigende - Analyse an.
Dessen Wünsche müssen eindeutig definiert und abgegrenzt werden. Sie
ist atomar: es darf genau eine Anforderung je Planungsanforderung
beschrieben sein.
Die Analyse muss nachprüfbar sein. Es soll Konsistenz erreicht werden,
in dem die Anforderungen zueinander widerspruchsfrei sind.
3. Entwurf
Hier wird noch nicht programmiert aber eine Beschreibung der
Softwareentwicklung vorgelegt, bei der man die Struktur erkennen kann.
Es gibt hier unterschiedliche Design-Varianten von denen zur Zeit UML
(Unified Modeling Language=vereinheitlichte Modellierungssprache)
besonders populär ist.
UML ist eine standardisierte Sprache zur Modellierung von
Programmentwicklung. Daher definiert UML Bezeichner für die Begriffe,
die zur Modellierung wichtig sind, und legt denkbare Beziehungen
zwischen diesen Bezeichnern fest.
4. Programmierung
Nun kann endlich der Programmcode geschrieben werden. Hierzu sind
natürlich die Vorgaben des Auftragsgebers einzuhalten. Dieser wird es
wünschen, dass eine Programmiersprache verwendet wird, die seinem
bisherigen Vorgehen entspricht. Allerdings können nur noch sehr wenige
Programmierer in den althergebrachten Sprachen wie Cobol oder Fortran
arbeiten. Inzwischen setzt man eher auf objektorientierte Sprachen wie
JAVA. Möglicherweise setzt der Auftraggeber aber auch SAP ein. Dann
muss in ABAP geschrieben werden.
5. Validierung und Verifikation
Vor dem Einsatz müssen die Softwareentwicklungen ausreichend getestet
werden, sonst kann ein böses Erwachen folgen. Nur die Marktführer
können dem grünen Bananen-Prinzip folgen: Reifung beim Kunden. Diese
Tests können als Modultests oder Integrationstests umgesetzt werden. Es
sind aber auch Systemtests und sogar Akzeptanztests beim Kunden oder
seinen Mitarbeitern von Nöten.
6. Anforderungsmanagement
Das Ziel hier ist ein gemeinsam geteiltes Verständnis vom zu
entwickelndes System zwischen Auftraggeber und Auftragnehmer. Dies kann
durch den Einsatz verschiedener Techniken erreicht werden.
7. Projektmanagement
Nun wird es Zeit, an die konkrete Umsetzung heranzugehen. Sowohl
Risikomanagement wie Projektplanung sind hier die Stichworte. Es ist
eine Projektverfolgung und –steuerung zu schaffen, die eine ausreichend
qualitative Umsetzung der Anforderungen mit sich bringt.
8. Qualitätsmanagement
Zur dauerhaften Qualitätsentwicklung muss gezielt nach Problemen und
Schwachstellen in der Umsetzung gesucht werden. In diesen Zusammenhang
müssen die Softwareentwickler auf Softwaremetrik (die genaue Messung
von Softwareeigenschaften) und Softwareergonomie (Anpassung der
Software an die menschlichen Arbeitsweisen und Besonderheiten) achten.
9. Konfigurationsmanagement
Hier werden die verschieden Stufen in der Entwicklung in eine sinnvolle
Reihenfolge gebracht. Dabei hat es sich eingebürgert, mit einer Punkt
Schreibweise zu arbeiten. Version 2.5.1 könnte dann bedeuten, dass
grundlegende Funktionalitäten in der 2. Version vorliegen. Dort hat man
Stufe 5 erklommen und ist noch auf der 1. Stufe von
Detailverbesserungen.
10. Dokumentation
Eine gute Dokumentation schließt den Prozess ab. Hierzu gehört die
Software-Dokumentation und die Systemdokumentation aber auch die
Bedienungsanleitung für die Anwender.
|