Software

Bachelor Software-System-Entwicklung

Software-Entwicklung

Für die eigentliche Software-Entwicklung müssen Regeln aufgestellt, befolgt und überwacht werden. Auch wenn dies bei vielen Programmierern auf wenig Akzeptanz stößt, ist ein strukturiertes Vorgehen bei der Software-Entwicklung bei IT-Projekten unumgänglich. Die oft zitierte Beschränkung der Kreativität durch ein Regelwerk ist im Normalfall sogar ein positiver Effekt, da übersprudelnde Kreativität durch ein strukturiertes und team-orientiertes Vorgehen ersetzt werden kann. Folgende Aktivitäten sind üblicherweise im Laufe der Software-Entwicklung durchzuführen: Anforderungsanalyse

Die Anforderungen des Kunden müssen vollständig, widerspruchsfrei und prüfbar festgehalten werden. Dies wird in Form eines Pflichtenheftes dokumentiert.

Die Anforderungen des Kunden müssen vollständig, widerspruchsfrei und prüfbar festgehalten werden. Dies wird in Form eines Pflichtenheftes dokumentiert. Systemarchitektur

Der Aufbau des zu entwickelnden Systems ist in grober Annäherung schon in einer sehr frühen Phase zu planen. Dies ermöglicht es zu erkennen, welche Schnittstellen entwickelt werden müssen, an welchen Stellen mit Standard- bzw. Zukaufsoftware gearbeitet werden kann und ob es sinnvoll ist Sub-Systeme zu entwickeln (d.h. Teilprojekte zu initiieren).

Der Aufbau des zu entwickelnden Systems ist in grober Annäherung schon in einer sehr frühen Phase zu planen. Dies ermöglicht es zu erkennen, welche Schnittstellen entwickelt werden müssen, an welchen Stellen mit Standard- bzw. Zukaufsoftware gearbeitet werden kann und ob es sinnvoll ist Sub-Systeme zu entwickeln (d.h. Teilprojekte zu initiieren). Konzeption

Bei der Konzeption des Systems ist darauf zu achten, dass die Benutzerschnittstelle vollständig beschrieben wird, dass sämtliche wichtigen Schnittstellen und Datenstrukturen vollständig beschrieben werden und dass sämtliche Geschäftsregeln abgedeckt wurden.

Bei der Konzeption des Systems ist darauf zu achten, dass die Benutzerschnittstelle vollständig beschrieben wird, dass sämtliche wichtigen Schnittstellen und Datenstrukturen vollständig beschrieben werden und dass sämtliche Geschäftsregeln abgedeckt wurden. Kodierung

Erst nachdem die Anforderungen das zu entwickelnde System vollständig erfasst und in ein Konzept gegossen sind, wird mit der Kodierung begonnen. Dabei ist gut kommentierter und übersichtlicher Programmkode zu entwickeln. Weiterhin müssen - sinnvollerweise vorhandene - Programmierrichtlinien beachtet werden.

Erst nachdem die Anforderungen das zu entwickelnde System vollständig erfasst und in ein Konzept gegossen sind, wird mit der Kodierung begonnen. Dabei ist gut kommentierter und übersichtlicher Programmkode zu entwickeln. Weiterhin müssen - sinnvollerweise vorhandene - Programmierrichtlinien beachtet werden. Test

Während und nach der Kodierung ist der entwickelte Kode zu testen. Dies umfasst den Unit-Test durch die Entwickler, den Systemtest, den Integrationstest und Belastungstests. Diese Tests sind Bestandteil der analytischen Qualitätssicherung.

Während und nach der Kodierung ist der entwickelte Kode zu testen. Dies umfasst den Unit-Test durch die Entwickler, den Systemtest, den Integrationstest und Belastungstests. Diese Tests sind Bestandteil der analytischen Qualitätssicherung. Abnahme

Die Abnahme bildet einen wichtigen Meilenstein in der Software-Entwicklung. Sie schließt den Entwicklungsprozess ab. Der Projekt-Auftraggeber prüft, ob all seine Erwartungen an das System erfüllt sind und bestätigt dies schriftlich ("System abgenommen", "System mit Einschränkungen abgenommen" (d.h. Nacharbeit), "System nicht abgenommen").

Die Abnahme bildet einen wichtigen Meilenstein in der Software-Entwicklung. Sie schließt den Entwicklungsprozess ab. Der Projekt-Auftraggeber prüft, ob all seine Erwartungen an das System erfüllt sind und bestätigt dies schriftlich ("System abgenommen", "System mit Einschränkungen abgenommen" (d.h. Nacharbeit), "System nicht abgenommen"). Produktivnahme

Die Produktivnahme gehört zwar nicht direkt zur Software-Entwicklung, wird jedoch in vielen Projekten mit Unterstützung der Software-Entwickler durchgeführt.

Die Produktivnahme gehört zwar nicht direkt zur Software-Entwicklung, wird jedoch in vielen Projekten mit Unterstützung der Software-Entwickler durchgeführt. Wartung

Wenn das System einige Zeit produktiv gelaufen ist, dann kann es gewartet bzw. weiterentwickelt werden. Auch diese Aktivitäten müssen den Regeln der Kodierung folgen und mittels eines Änderungswesens koordiniert werden. Diese Aktivitäten werden in größeren Projekten noch stark verfeinert. Zu einen wird zwischen fachlichen- und DV-technischen Konzepten und zum anderen zwischen Grob- und Feinkonzepten unterschieden. Bei der Analyse und der Konzeption des Systems ist so zu arbeiten, dass der Auftraggeber (Kunde) stets als regulierendes Glied in den Entwicklungsprozess einbezogen wird. Dies ist z.B. durch eine grafische Darstellung von Anforderungen mittels Use-Cases und die frühzeitige Erstellung von Prototypen möglich.

Weiterhin muss der Code so entwickelt werden, dass er später wartbar ist (Kommentierung im Code und Dokumentation außerhalb des Codes). Dies wird durch den Einsatz von Programmierrichtlinien vereinfacht.

Es empfiehlt sich heutzutage sehr leistungsfähige Entwicklungsumgebungen zu verwenden, die für die Erstellung von Applikationen über mehrere Schichten konzipiert sind (Benutzerschnittstelle, Geschäftslogik, Datenbank, ... in eigenen voneinander getrennten Schichten).

Strategien der Softwareentwicklung

Wasserfallmodell

In den Köpfen von Entwicklern und Projektmanagern spukt immer noch, das Wasserfallmodell sei linear. Die Wahl des Namens führt offensichtlich zu diesem Missverständnis. Tatsächlich ist es eine vereinfachte Darstellung des iterativen Modells. Es könnte nämlich, falls notwendig, im Zuge der Wiederholung einer Aktivität auch deren Vorgänger wiederholt werden.

Bild 3: Verlauf des Wasserfallmodells

Das Wasserfallmodell hat eine nahezu perfekte Sicht auf die Softwareentwicklung. Es wird davon ausgegangen, dass die Ergebnisse der vorhergehenden Aktivitäten fehlerfrei seien. Sind dennoch Korrekturen nötig, könnten sie in der vorangehenden Aktivität durchgeführt werden. Tatsächlich ist es in der Praxis selten, noch frühere Aktivitäten wiederholen zu müssen.

In großen Projekten sind die Artefakte (Dokumente, Programme usw.) sehr umfangreich und entsprechend hoch ist der Aufwand für die Wahrung deren Konsistenz. Jede Änderung führt dann unweigerlich zu zusätzlichem Verwaltungsaufwand. Es wird folglich alles unternommen, um Fehler so früh wie möglich zu entdecken. Fatal wirkt sich die Praxis aus, die Wiederholung einfach zu unterlassen.

Das Wasserfallmodell wurde, obwohl nicht unter diesem Namen, von Royce W. Winston in seinem Artikel "Managing The Development Of Large Software Systems" [2] 1970 vorgestellt. Er beschreibt dieses Modell, also das mit den einfachen Rücksprüngen, als fehlerträchtig und risikobehaftet. Selbst ein um weitere iterative Elemente erweitertes Modell war unbefriedigend.

Bachelor Software-System-Entwicklung

Anwendungssoftware wird im beruflichen und persönlichen Alltag immer wichtiger. Ihre Entwicklung und Gestaltung erfordert gute Programmierkenntnisse kombiniert mit kommunikativen Fähigkeiten und anderen „Soft Skills“. Die Analyse und Konstruktion von Software im Kontext ihrer Anwendung (beispielsweise der Wirtschaft, Verwaltung oder Medizin) steht daher im Mittelpunkt der Ausbildung und Qualifikation.

Der Bachelor-Studiengang Software-System-Entwicklung (SSE) ist ein Informatik-Studiengang, der auf die komplexen Anforderungen aktueller Software-Systeme ausgerichtet ist. Er kombiniert theoretische Grundlagen mit Projekterfahrung und Anwendungsbezug.

SSE ist durch drei Themengebiete charakterisiert:

Konzepte und Techniken der Software-Entwicklung

Einarbeitung in ein Anwendungsgebiet nach Wahl

Ergänzende Themen der allgemeinen Informatik

Dabei werden innovative Formen der Lehre mit einem innerunversitären Praktikum und Projekt sowie dem "Industriepraktium" in einem Unternehmen kombiniert. Dies sind unseren Partner zur Durchführung des Industriepraktiums.

Studiengangsflyer B.Sc. Software-System-Entwicklung

Aufbau und Verlauf des Bachelor-Studiengangs Software-System-Entwicklung

Leave a Reply

Your email address will not be published. Required fields are marked *