Column #col2

ConsultingProjektbeschreibungenTransport und Verkehr

Transport und Verkehr

Unsere Projekte

Entwicklung eines Element-Ansteuer-Moduls für elektronische Stellwerke

Kunde
Der Kunde ist ein weltweit tätiges Unternehmen aus dem Bereich Bahntechnik.

Projektbeschreibung
Ziel des Projektes war es, eine Teilkomponente für ein elektronisches Stellwerk zu entwickeln, die für die Überwachung und Ansteuerung der verschiedenen Stellelemente wie z. B. Weichen, Signale usw. verantwortlich ist. Die Software läuft auf speziell für diesen Zweck entwickelten Rechnerkarten unter einem echtzeitfähigen Betriebssystem.
Da es sich bei einem Stellwerk um ein sicherheitsrelevantes System der Kategorie SIL-4 handelt, wurde die Software unter Berücksichtigung der entsprechenden europäischen Normen für diese Sicherheitsstufe entwickelt.

Unsere Aufgaben
Unsere Aufgaben waren vielfältig. Sie bestanden unter anderem darin

  • die Systemarchitektur zu erstellen,
  • Reviews der Analyse und des Designs durchzuführen,
  • eine modellbasierte Entwicklung in der Abteilung einzuführen,
  • eine Testumgebung für automatisierte Tests bereitzustellen,
  • Modellierungswerkzeuge für die Modellierung mit UML-2 zu evaluieren,
  • den Entwicklungsprozess an die Projektdetails anzupassen,
  • bei der Anpassung des C++-Compilers an das verwendete Betriebssystem und bei der Validierung mitzuarbeiten,
  • die Entwickler bei Fragen zur Modellierung mit UML zu coachen.

Architektur
Die Architektur des Systems besteht aus mehreren aufeinander aufbauenden Schichten. Diese Schichten sind u.a. eine Betriebssystem-Abstraktionsschicht, eine allgemeine Dienstschicht für grundlegende Funktionen, eine anwendungsspezifische Dienstschicht und die konkrete Anwendungsschicht.
Die Schichtung erlaubt die einfache Anpassung an verschiedene Betriebssysteme, Kommunikationsschnittstellen und länderspezifische Anforderungen.

Anforderungsanalyse und Analyse
Die Anforderungen wurden in Form von Use-Cases textuell erfasst und mit dem Werkzeug Doors verwaltet. Die Verfeinerung der Use-Cases wurde hauptsächlich durch Szenariodiagramme in einem UML-Modell dokumentiert. Die einzelnen Szenarien des Modells wurden automatisch mit den textuellen Use-Cases in Doors verlinkt.
Da es sich bei dem System um ein Echtzeitsystem handelt, wurden für die fachliche Modellierung hauptsächlich Zustandsautomaten und UML-State-Charts eingesetzt.

Design und Implementierung
Während des Designs wurden die Zustandsautomaten der Analysephase verfeinert und durch Aktivitätsdiagramme vervollständigt. Die Realisierung erfolgte in C++.

Eingesetzte Werkzeuge
Anforderungsmanagement: Doors
Softwaremodellierung: Rational XDE
Konfigurationsmanagement: Rational Clearcase
Softwareentwicklung: Eclipse
Test: Cpp Unit

Dauer/Größe
Das Projekt hatte eine Größe von ca. 15 Personenjahren.

Entwicklung einer Software zur Abwicklung des Check-in-Prozesses von Fluggästen

Kunde
Der Kunde ist eine große Luftfahrtgesellschaft.

Projektbeschreibung
Ziel des Projektes war die Ablösung einer in 25 Jahren gewachsenen Host-Anwendung zur Abwicklung des Check-in-Prozesses mit einer Multi-tier-Architektur und State-of-the-Art-Technologien.

Geschäftsprozessmodellierung, Analyse und Design erfolgten auf Basis moderner (objektorientierter) Methoden, die Realisierung erfolgte teilweise in C++, teilweise in Java. Als Middleware wurde CORBA eingesetzt.

Vorgehensmodell / Softwareentwicklungsprozess
Der Softwareentwicklungsprozess basierte auf dem V-Modell 97, das mit dem Unified Process verfeinert und speziell für dieses Projekt angepasst wurde:

  • Geschäftsprozessmodellierung mit eEPKs (erweiterte ereignisgesteuerte Prozessketten)
  • Werkzeuggestütztes Requirements Engineering
  • Einsatz der Unified Modeling Language (UML)
  • Iterative und inkrementelle Vorgehensweise
  • Anwendungsfallgesteuert

Softwarearchitektur
Die Anwendung wurde mittels einer Mehrschichten-Achitektur auf Basis von CORBA realisiert.

Geschäftsprozessmodellierung
Geschäftsprozesse wurden zunächst im Ist-Zustand modelliert und anschließend komplett reengineert. Ist- und Sollprozesse wurden in Form von eEPKs mit dem Aris-Toolset verwaltet.

Anforderungsanalyse
Die Anforderungsanalyse erfolgte teilweise werkzeugunterstützt mit Use-Cases und Szenarien sowie vielfältiger weiterer textueller Dokumentation.

Analyse
In der Analyse wurde entsprechend dem Unified Process verfahren. Gemeinsam mit Fachanwendern wurden parallel zur Entwicklung von statischen und dynamischen Modellen Testfälle für automatisierte Regressionstest definiert.

Design und Implementierung
Das Design erfolgte durchgehend objektorientiert. Die Realisierung wurde teilweise in C++ und teilweise in Java durchgeführt.

Werkzeuge
Modellierung: Aris, Requisite Pro, Rational Rose
Konfigurationswerkzeug: ClearCase
Fehlerverfolgung: ClearQuest
Testautomatisierung: Testoffice auf Basis von Segue-Produkten

Unsere Aufgaben
Cortex Brainware GmbH war für die Prozessdefinition und -einführung verantwortlich und unterstützte den Kunden bei den Themen Anforderungsanalyse, objektorientierte Analyse und Qualitätssicherung. Cortex Brainware GmbH übernahm in diesem Projekt die Rollen: Teamleiter, Business Analyst, Designer, OO-Coach, Qualitätssicherer.

Dauer / Größe
ca. 80 Personenjahre