Software-Technik

Die Beherrschung des Software-Entwicklungsprozesses ist von entscheidender Bedeutung für den Wettbewerbsvorteil. Der Schlüssel hierzu liegt in der angewandten Software-Technik (Software Engineering).

Software „fehlerfrei“ zu entwerfen, zu erstellen und zeitgerecht an den Kunden auszuliefern ist insbesondere bei größeren Projekten (> 3 – 5 Personenjahre) eher unwahrscheinlich. Grund hierfür ist zum einen die Unterschätzung der Komplexität und der Dynamik der Softwareentwicklung als auch Defizite in der Beherrschung der Methodik.
Erfahren Sie mehr darüber im Bericht der Standish Group zum Scheitern von IT-Projekten.

Software Engineering zielt auf die ingenieurmäßige Entwicklung, Wartung, Anpassung und Weiterentwicklung von Softwaresystemen unter Verwendung bewährter Vorgehensweisen, Prinzipien, Methoden und Werkzeuge.

Software Engineering beschäftigt sich analog zu anderen Ingenieurdisziplinen mit technischen sowie organisatorischen und managementorientierten Fragestellungen.

Somit gliedert sich Software Engineering zum einen in technische Fragestellungen – der Software-Technik – und in Fragen des Managements und der Organisation von Softwareprojekten und software-intensiven Bereichen.

Das Management und die Organisation von Softwareprojekten und software-intensiven Bereichen bedingen eine Ergänzung des verfahrenstechnischen Teils der Software-Entwicklung um den immer wichtiger werdenden Anteil eines Entwicklungsprozesses.

„Nicht die Tätigkeiten werden Techniken angepasst, sondern es werden Techniken ausgewählt, die zu den Aufgaben und Problemen passen. Ein beherrschter, funktionierender Entwicklungsprozess bildet das Fundament zur erfolgreichen Einführung geeigneter neuer Techniken.“(1)

Zur Festlegung und / oder Bewertung eines Entwicklungsprozesses existieren einige Modelle, die in den vergangenen 20 Jahren von verschiedenen Institutionen entwickelt wurden. Die bekanntesten hierfür sind wohl das „Capability Maturity Model Integration“ des Software Engineering Institutes (SEI) an der Carnegie Mellon University und das in Europa entwickelte Äquivalent „Software Process Improvement Capability Determination“ (SPICE).

Details zum Reifegrad- und Bewertungsmodell SPICE finden Sie hier.

In welcher Form ich Sie bei der Definition und Bewertung Ihres Entwicklungsprozesses unterstützen kann, finden Sie in meinem Dienstleistungsangebot.

 

(1) Liggesmeyer, Peter: Software-Qualität: Testen, Analysieren und Verifizieren von Software, Spektrum, Akademischer Verlag, 2002