Rational Rhapsody

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Rational Rhapsody
Entwickler IBM Rational Software
Aktuelle Version 8.1.1
Betriebssystem plattformunabhängig
Kategorie IDE
www.ibm.com/software/awdtools/rhapsody/

Rational Rhapsody ist eine UML basierte grafische Entwicklungsumgebung für Systemingenieure und für Softwareentwickler, die Echtzeit- oder Eingebettete Systeme und -Software entwickeln. Rational Rhapsody verwendet grafische Modelle um den Quellcode für Software-Anwendungen in verschiedenen Sprachen wie C++, C, Java, C# und Ada83, 95 und 2005 zu generieren.

Rational Rhapsody unterstützt verteilt arbeitende Teams bei der Zusammenarbeit. Es hilft Anforderungen besser zu verstehen und zu detaillieren, Komplexität mit standardisierten Notationen (UML, SysML, AUTOSAR, DoDAF, MODAF, UPDM) auf einer abstrakteren Ebene zu visualisieren und die Funktionalität von Anwendungen früh im Entwicklungsprozess zu validieren.

Rational Rhapsody wurde ursprünglich von der Firma I-Logix Inc. mit Hauptsitz in Andover, Massachusetts, und einer Entwicklungsmannschaft in Israel entwickelt und 1998 unter dem Namen I-Logix Rhapsody vorgestellt. Die Firma I-Logix wurde im Jahr 2006 von dem schwedischen Unternehmen Telelogic AB mit Sitz in Malmö übernommen und das Produkt danach unter dem Namen Telelogic Rhapsody vermarktet. Nach der Übernahme der schwedischen Telelogic AB durch IBM im Jahre 2008 wurde Rhapsody in IBMs Software-Brand Rational integriert.

Obwohl IBM angibt Eingebettete Systeme und verteilt arbeitende Teams zu unterstützen, werden weder die ARM-Architektur noch gängige Versionierungssysteme wie SVN, Git oder Mercurial unterstützt.

Architektur[Bearbeiten]

Rational Rhapsody steht in vier, untereinander kompatiblen, teamfähigen Rich Client Editionen für Arbeitsplatzrechner, und seit der Version 8 der Rich Clients auch für Web Clients auf einem auf der IBM Jazz-Technologie basierenden Design Server zur Verfügung. Unabhängig davon existiert eine separate Rich Client Edition für Einzelanwender:

Rational Rhapsody Architect for Systems Engineers[Bearbeiten]

Die Architect for Systems Engineers Edition ist die einfachste Basisversion. Sie erlaubt das Erstellen und das Bearbeiten von UML und SysML basierten Designs, sie erlaubt die Nachverfolgung von Anforderungen im Modell, die Erstellung von Dokumentationen und den Austausch von Modellen mit den anderen Editionen.

Rational Rhapsody Designer for Systems Engineers[Bearbeiten]

Die Designer for Systems Engineers Edition enthält alle Funktionen der Architect for Systems Engineers Edition, ermöglicht aber zusätzlich die Simulation und Validierung des Systemverhaltens auf grafischer Ebene.

Rational Rhapsody Architect for Software[Bearbeiten]

Die Rhapsody Architect for Software Edition enthält ebenfalls die Funktionen der Architect for Systems Engineers Edition, ermöglicht aber zusätzlich die Generierung von C, C++, Java oder C# Code Frames, unterstützt das Reverse Engineering von existierendem Code und erlaubt die Modellierung von AUTOSAR Designs.

Eine OEM-Version der Rhapsody Architect for Software Edition mit dem Namen Embedded UML Studio II unterstützt auf einem eigenen Laufzeitsystem basierend auch kleinste, in C programmierte Embedded Echtzeitsysteme.

Rational Rhapsody Developer[Bearbeiten]

Die Rhapsody Developer Edition ist das Flaggschiff der Familie und enthält neben den Funktionen aller obigen Editionen eine vollständige Codegenerierung für Architektur und Verhalten. Sie kann mit vielen IDEs und Compilern integriert werden und enthält Laufzeitbibliotheken für die Integration des generierten Codes mit den gängigsten Embedded Echtzeitbetriebssystemen.

Rational Rhapsody Design Manager[Bearbeiten]

Der Rhapsody Design Manager besteht aus zwei Elementen. Eines ist das PlugIn für die oben genannten Rich Client Editionen, das andere eine Serverkomponente für die IBM Jazz Platform. Mit beiden zusammen wird es möglich, mit einem Rich Client erstellte Rhapsody Modelle auf einem Jazz Server zu publishen, um dann kollaborativ, wahlweise mit klassischen Rich Clients oder browserbasiert mit Web Clients rollenbasiert am gemeinsamen Design zu arbeiten, dort Modellelemente OSLC-basiert mit Anforderungen zu verlinken oder aber das Design zu reviewen.

Rational Rhapsody Modeler[Bearbeiten]

Daneben gibt es eine freie Rhapsody Modeler Edition für Einzelanwender, welche in ihrer Funktionalität in etwa mit dem Rhapsody Architect for Systems Engineers vergleichbar ist. Mit dem Modeler erstellte Designs können in die teamfähigen Editionen zur Weiterbearbeitung importiert werden, eine Bearbeitung der mit den teamfähigen Editionen gespeicherten Designs im Modeler ist nicht möglich.

Funktionsweise[Bearbeiten]

Die Rational Rhapsody Developer Edition unterstützt und automatisiert folgende Schritte im Modellbasierten Entwicklungsprozess:

  • Import und Synchronisierung von Anforderungen aus Requirements Management Werkzeugen wie Rational DOORS, Rational RequisitePro, Borland Caliber oder auch aus Office Dokumenten
  • Erstellung eines grafischen Modells unter Verwendung einer standardisierten, UML-basierten Notation (UML, SysML, AUTOSAR, DoDAF, MODAF, UPDM) oder einer eigenen UML-basierten Domain-Specific Language (DSL)
  • Verknüpfung von Modellelementen mit Anforderungen für Nachverfolgbarkeit und für Auswirkungsanalyse
  • Integration von funktionalen Blöcken aus anderen Modellierungswerkzeugen (z. B. Matlab Simulink) in die Architektur
  • Grafische Validierung des Verhaltens auf Basis von Sequenzdiagrammen und Zustandsautomaten
  • Reverse Engineering und grafisches Refactoring für bestehenden Code
  • Generierung des vollständigen Applikationscodes und automatischer Aufruf eingebundener externer Compiler
  • Dynamische, bidirektionale Modelle zur Code Assoziation, Navigation und Transformation
  • Konfigurierbare Templates und Regeln für die Codegenerierung
  • Verwendung verschiedener anpassbarer Laufzeitbibliotheken (Object Execution Framework) zur Anbindung an Echtzeitbetriebssysteme
  • Optionale automatisierte Testarchitektur- und Testfallerstellung sowie automatische Testdurchführung mit Rational Rhapsody Testconductor
  • Optionale automatische Testfallerstellung für Model- und Decision-Coverage mit Rational Rhapsody ATG
  • Optionale Anbindung an Test- und Qualitätsmanagement Werkzeuge wie Rational Quality Manager um ein externes Testmanagement zu ermöglichen
  • Anbindung an Versionierungs- und Change-Managegement Systeme wie Rational ClearCase, Rational Synergy/CM, SVN und andere
  • Eigenes modellbasiertes Diff-Merge Werkzeug mit automatisierbarer Trivial Merge Funktion zur Einbindung in Versionierungswerkzeuge
  • Integration in die JAZZ-basierte Teamkollaborationsplattform Rational Team Concert
  • Template-gesteuerte Reportgenerierung mit Rational Publishing Engine
  • Austausch von Modellen und Teilmodellen mit anderen UML Modellierungswerkzeugen über das standardisierte XML-basierte XMI-Format
  • Offene Microsoft COM- und Java-APIs zur Automatisierung und für eigene Erweiterungen des Werkzeugs
  • Kommandozeilenversion zur Integration in automatisierte Build-Prozesse

Plattformen, Programmiersprachen und Betriebssysteme[Bearbeiten]

Unterstützte IDEs:

  • Eclipse – wahlweise als PlugIn oder mit Workflow-Integration
  • Microsoft Visual Studio 2008 – mit Workflow-Integration
  • Windriver Workbench – mit Workflow-Integration
  • Greenhills Multi – mit Workflow-Integration
  • Weitere Compiler – mit makefile basiertem Buildprozess

Unterstützte Betriebssysteme für Targetapplikationen:

Quellen[Bearbeiten]