Softwaredesign und Systementwicklung mit Rational Systems Developer

Die effizienteste Erstellung eines Systems und seine erfolgreichste Implementierung lässt sich dadurch erreichen, dass eine eindeutige Architektur festgelegt wird und sich alle Beteiligten in einem frühen Stadium des Projektlebenszyklus auf einen Entwurf einigen.

Iterative Entwicklung

Der RUP-Prozess (Rational Unified Process) sieht vor, dass Softwaredesign und -entwicklung in vier Phasen erfolgt: Konzeption, Ausarbeitung, Erstellung und Übergang. Bei diesem Prozess wird besonderer Wert auf den Einsatz von Softwareentwicklungsverfahren gelegt, mit denen gewährleistet ist, dass das Entwicklerteam innerhalb dieser Phasen und phasenübergreifend die folgenden wichtigen Aktivitäten ausführt:
  • Anforderungsverwaltung
  • Visuelle Modellierung mit UML
  • Iterative Entwicklung
  • Änderungssteuerung
  • Ständige Qualitätskontrolle
Um die Grundsätze von RUP einzuhalten, kann Ihr Team Rational Systems Developer verwenden und so die bewährten Verfahren für den Lebenszyklus der Softwareentwicklung anwenden.
  • Anforderungszusammenstellung und Anwendungsfallmodellierung

    Anforderungen können aus verschiedenen Quellen stammen, müssen jedoch von den Systemanalytikern und -architekten in einer Anforderungsdokumentation konsolidiert und verwaltet werden. Aus den Anforderungen kann Ihr Team Systemanwendungsfälle und das übergeordnete Systemverhalten festlegen.

    Teams, die Rational RequisitePro verwenden, können die vorhandenen Anforderungsdefinitionen in der Perspektive 'Anforderungsmanagement' den vorhandenen UML-Modellelementen wie Anwendungsfällen zuordnen. Sie können auch Anforderungen aus vorhandenen Modellelementen oder Modellelemente aus vorhandenen Anforderungsdefinitionen erstellen.

    Der Softwarearchitekt erstellt ein Anwendungsfallmodell, um die Systemanwendungsfälle, das Systemverhalten und die Actors in dem System zu definieren sowie Benutzerworkflows anzugeben.

  • Domänenanalyse

    Analytiker und Architekten beschreiben die Systemdomäne mit einer Definition eines übergeordneten Funktionsmodells des Systems. In der Analysephase werden die in dem System zu speichernden Daten und die Art ihrer Verarbeitung festgelegt.

    Der Architekt erstellt ein Analysemodell zur Beschreibung einer logischen Sicht der funktionalen Anforderungen. Dieses Modell definiert übergeordnete Objekte in dem System und deren Interaktionen.

  • Detaillierte Ausgestaltung der Architektur

    Der Architekt entwirft gemeinsam mit dem Softwareentwicklungsteam die Systemarchitektur im Detail.

    Bei dem Detailentwurf nutzt das Entwicklerteam das während der Analyse erstellte übergeordnete Modell und erstellt das Designmodell. Die Entwickler fügen Details zu dem Modell hinzu und beschreiben die Implementierung des Systems, beispielsweise Programmierkonstrukte und die für Persistenz, Sicherheit, Protokollierung und Bereitstellung verwendeten Technologien.

    Das Designmodell lässt sich durch die Anwendung bewährter Entwurfsmuster und automatisierter Modell-in-Modell-Umsetzungen weiter optimieren.

  • Implementierung

    Das Entwicklerteam implementiert die Anwendung auf der Basis des genehmigten Entwurfs.

    Der Übergang vom Entwurf zur Implementierung erfolgt, indem die Entwickler das Modell mit Hilfe von automatisierten Umsetzungen in Code (wie C++, Java oder CORBA IDL) umwandeln und gleichzeitig die Entwicklung und Bereitstellung der Anwendung mit den in der Workbenchumgebung vorhandenen Funktionen für Softwareentwicklung wie dem C/C++ Development Toolkit und dem Java Development Toolkit fortsetzen.

    Die Entwickler von C-, C++- und Java-Anwendungen können ihren Code auch mit Hilfe der UML-Visualisierungsfunktion innerhalb einer grafischen, UML-basierten Darstellung dieses Codes untersuchen und entwickeln.

    Die Entwickler von Java-Anwendungen können zusätzliche Strukturanalyse- und Steuerfunktionen nutzen, um sicherzustellen, dass der Code die vordefinierten und benutzerspezifischen Strukturregeln einhält. Darüber hinaus können die Entwickler mit Architectural Discovery, einer automatisierten Musterfilterfunktion, nach bekannten strukturellen Mustern im Java-Code suchen.

Bereichsübergreifender Workflow

Anforderungszusammenstellung, Modellierung und Implementierung sind Vorgänge, die in verschiedenen Projektphasen iteriert werden. Mehrere andere Workflows werden jedoch kontinuierlich über das gesamte Projekt unterstützt.


Rückmeldung