Der Software-Blog!

Das Aufgabengebiet des Software Engineering

Der Artikel erklärt Software EngineeringSoftware Engineering ist ein immer wichtiger werdender Begriff im Bereich der Software-Entwicklung. Software Engineering kommt dann zum Einsatz, wenn es darum geht, Softwareprojekte von der Planung, über die Realisierung bis hin zur Wartung und Dokumentation zu begleiten und zu unterstützen.

Die Entstehung des Software Engineerings

Während der Softwarekrise, die in den 1960er-Jahren begann und während der immer komplexere Softwaresysteme entstanden, wuchs auch die Fehleranfälligkeit der Programme, bei gleichzeitigem Anstieg der Kosten für die Wartung der Software. 1968 fiel der Begriff des Software Engineering im Zuge einer Konferenz, in der es um die Lösung der Softwarekrise ging, zum ersten Mal. In dieser Konferenz und in einer Konferenz ein Jahr später wurden die Teilbereiche von Software Engineering diskutiert, um die Probleme der Krise beseitigen zu können – das Software Engineering war geboren.

Teilgebiete des Software Engineerings

Software Engineering gliedert sich in verschiedene Teilbereiche. Zum einen werden Aufgaben nach Kernprozessen, aber auch nach sogenannten Unterstützungsprozessen gegliedert. Kernprozesse umfassen die Prozesse, die aktiv an der Realisierung der Software beteiligt sind. Darunter fallen die Aufgaben wie die Planung, die Analyse, der Entwurf, die Programmierung und die Validierung sowie die Verifikation der Software. Im Teilbereich der Planung geht es um die genaue Erhebung der Anforderungen. Diese werden mittels eines Lasten- und Pflichtenhefts genau spezifiziert, um ein einheitliches Bild zwischen dem Kunden und den Entwicklern zu schaffen, was die Software leisten soll und unter welchen Bedingungen sie später zu laufen hat. Die Analyse arbeitet mit Auswertungen, Prozessanalyse, Systemanalyse sowie der strukturierten und objektorientierten Analyse. Der Prozess des Entwurfs beschäftigt sich mit der Planung der Software, wobei die Software in verschiedenen Schritten entworfen wird, beispielsweise durch ein Klassendiagramm, das dem Entwickler genau vorgibt, wie die Software bei der Realisierung umgesetzt werden soll. Dies führt auch zum nächsten Schritt, in dem die Software schließlich mittels der entsprechenden Sprachen nach den Vorgaben der Anforderungen und der Entwurfsphase realisiert wird. Im Rahmen der Validierung und Verifikation wird die programmierte Software verschiedenen Tests unterzogen, um festzustellen, ob die Software den Anforderungen entspricht, die in der Planungsphase definiert wurden. Denn nur, wenn die Software den Vorgaben entspricht, besteht die Chance auf einen zufriedenen Kunden und ein erfolgreiches Softwareprojekt. Zu den Unterstützungsprozessen gehören das Anforderungs-, Projekt-, Qualitäts- und das Konfigurationsmanagement. Aber auch die Dokumentation sowie die Softwareeinführung. Diese Prozesse sind nicht direkt am Softwareprojekt beteiligt, sondern unterstützen vielmehr mit einer passiven Rolle das Projekt.

Heute wird Software Engineering von Softwareentwicklern betrieben, die in einem Softwareprojekt involviert sind. Software Engineering wird sowohl in der Ausbildung, aber vorrangig im Studium an der Hochschule oder an der Universität gelehrt. So gibt es inzwischen auch ganze Studiengänge, die sich mit dieser Thematik auseinandersetzt. Selten werden alle Phasen des Software Engineering in einem Softwareprojekt komplett durchlaufen. Meistens wird auf entsprechende Punkte zurückgegriffen und diese im Projekt untergebracht. Heute ist die Entwicklung größerer Softwareprojekte ohne die Methoden des Software Engineerings kaum mehr vorstellbar.

Quelle des Bildes: peshkova – Fotolia

Ähnliche Berichte:

Tags: , , , ,