Zielgruppennavigation: 


Seminarleitung: Prof. J. Becker, Prof. H. Kuchen

Schlagwörter: Fachkonzept, DV-Konzept, UML, Entwurfsmuster, Architekturmuster, Wasserfallmodell, RUP

Software Engineering

Die Entwicklung von Software ist eine Aufgabe von höchster Komplexität, die insbesondere durch das Zusammenspiel von Entwicklern, Auftraggebern und Endanwendern ein hohes Risiko birgt. Der Softwareentwicklungsprozess startet in der Regel mit dem Aufsetzen des Projektteams. Dessen Zusammensetzung hat einen wesentlichen Anteil am Erfolg oder Misserfolg eines Projektes. Der Projektplan gibt einen Überblick über Reihenfolgen, geplante Zeiten für einzelne Aktivitäten und sachlogische Zusammenhänge zwischen den zu erledigenden Aufgaben.

In der Projektdurchführung ist aus betriebswirtschaftlicher Sicht zu beschreiben, welche Aufgaben das zu entwickelnde System unterstützen muss. Diese – Fachkonzept genannte – Beschreibung abstrahiert noch von DV-technischen Fragestellungen wie Modulgestaltung, Programmiersprachen, Datenbankeinsatz, Benutzeroberfläche etc. Die Funktionen, die in zeitlich-sachlogischer Folge zur Erfüllung einer betriebswirtschaftlichen Aufgabe bearbeitet werden, müssen in einer Form beschrieben werden, die einerseits für den Benutzer des späteren Systems verständlich ist und die andererseits durch einen gewissen Formalisierungsgrad dem Systemanalysten deutlich die Struktur des DV-Systems für die Umsetzung vor Augen führt. Prozessmodelle beschreiben das Verhalten des Systems. Sie werden durch Datenmodelle, die die Struktur definieren, ergänzt. Der Umgang mit Prozess- und Datenmodellen wird an Fallstudien erarbeitet.

Weiterhin werden in diesem Modul aktuelle Trends im Bereich der Softwareentwicklung aufgezeigt und ihre Hintergründe erklärt. Hierzu zählen neben der mittlerweile etablierten Objektorientierung und der hierfür entwickelten Notation, der Unified Modeling Language (UML), insbesondere auch neue Prozessmodelle sowie Entwurfs- und Architekturmuster. Weiterhin wird auf Komponentenarchitekturen wie Corba und Enterprise Java Beans (EJB) eingegangen. Ausgewählte Tools zur Computer-unterstützten Software-Entwicklung (CASE-Tools) werden vorgestellt.

Nach der Einführung in die objektorientierte Software-Entwicklung wird die hierfür entwickelte Standardnotation UML vorgestellt. Sie bietet für die verschiedenen Aspekte eines Softwaresystems unterschiedliche Diagramme an, die erlauben den jeweiligen Aspekt zu visualisieren. Zu nennen sind hier u.a. Geschäftsvorfall-Diagramm (use case diagram), Klassendiagramm, Interaktionsdiagramme, endliche Automaten und Aktivitätsdiagramme.

RUP-Phasen klein

Auf die Objektorientierung und die UML zugeschnitten ist ein Software-Entwicklungs-Prozessmodell, der von der Firma Rational entwickelte Unified Process (RUP). Statt wie beim klassischen Wasserfallmodell werden die Entwicklungsphasen nicht mehr einmal, sondern mehrfach durchlaufen, wobei ein anfängliches Kernsystem schrittweise erweitert wird. Ein Vorteil hiervon ist, dass sich Schwächen des gewählten Ansatzes in der Regel früh erkennen und beheben lassen. Wenn sich nun erst bei der Implementierung ein prinzipieller Fehler des Ansatzes zeigt, muss nicht mehr wie beim Wasserfallmodell aufwendig das in voller Breite entwickelte Gesamtsystem, sondern nur das kleine und kostengünstig anpassbare Kernsystem geändert werden. Das iterative Vorgehen ist auch unter dem Gesichtspunkt der Risikobeherrschung interessant. Der Rational Unified Process ist weiterhin geschäftsvorfall- und damit anforderungsorientiert und legt die Kernarchitektur zu einem frühen Zeitpunkt fest, um sie bei der Präzisierung der Anforderungen berücksichtigen zu können. Die Geschäftsvorfälle ziehen sich wie ein roter Faden durch alle Phasen der Software-Entwicklung, von der Analyse bis zum Testen.


Impressum | © 2008 Universität Münster
wi-muenster.de GbR
Lütke Berg 4-6 · D-48341 Altenberge
Tel.: +49 251 83-38060 · Fax: +49 251 83-28060