Software auf Schienenfahrzeugen der Deutschen Bahn AG unterliegt einem
Konfigurationsmanagement, wobei immer eine Software-Zielversion pro
Fahrzeugvariante gebildet wird.
Die Größe der Flotte und die Teilumrüstung der Software in verschiedenen Werken
bedingt, dass die Zielversion häufig nicht in einem Schritt erreicht wird, sondern über
verschiedene Zwischenzustände, die durch Übergangsversionen abgebildet werden.
Hierbei muss jedoch sichergestellt sein, dass jede Konfiguration stets gültig und
funktionsfähig ist.
In diesem Zusammenhang sind Abhängigkeiten der einzelnen Softwaresysteme
untereinander und von anderen Entitäten, wie z.B. der Region, der Jahreszeit und
gesetzlichen Bestimmungen zu beachten. Diese Abhängigkeiten unterscheiden sich
hinsichtlich mehrerer Kriterien, wie zum Beispiel ihrer Ausprägung und Relevanz. Die
Abhängigkeiten werden in der Diplomarbeit anhand derartiger Merkmale und ihrer
Abhängigkeitspartner analysiert und klassifiziert.
Aufbauend auf dieser Analyse wird ein Konzept vorgestellt, das drei Hauptgruppen von
Abhängigkeiten unterscheidet:
• Abhängigkeiten gegenüber Software-Komponenten
• Abhängigkeiten gegenüber systemexternen Entitäten
• Abhängigkeiten gegenüber anderen Abhängigkeiten
Das Konzept ist in einem Entity-Relationship-Modell abgebildet und gibt insbesondere
Wertebereiche für die Klassifizierung der Abhängigkeitspartner vor. Ein Beispiel hierfür
ist die Abhängigkeit eines Softwaresystems vom Kurvenradius der Strecke. Hierfür
können geforderte bzw. zulässige Intervalle eingegeben werden.
Das Modell ist mithilfe einer Datenbanklösung umgesetzt. Die Entwicklung dient
gleichermaßen als Wissensdatenbank für die Mitarbeiter der Deutschen Bahn AG als
Basis für die Prüfung erstellter Konfigurationsaufstellungen und als Datengrundlage für
eine visuelle Darstellung.
Struktur der Diplomarbeit
1. Einleitung
1.1 Motivation
1.2 Aufgabenstellung
1.3 Ziele
1.4 Ausgangslage
2. Einordnung in das Software-Konfigurationsmanagement
2.1 Hinführung
2.2 Notwendigkeit
2.3 Ziele
2.4 Die vier Säulen des Softwarekonfigurationsmanagements
2.5 Variantenmanagement
2.6 Konfigurationsmanagement bei Fahrzeugsoftware der DB AG
3. Abhängigkeiten von Softwarekomponenten
3.1 Begriffsdefinition
3.2 Arten
3.3 Klassifikation
3.4 Ursachen
4. Verwaltung von Abhängigkeiten
4.1 Analyse
4.1.1 Anforderungen
4.1.2 Architekturmodell
4.2 Realisierungsidee Paketmanager
4.2.1 Konzept
4.2.2 Bewertung
4.3 Datenbankbasiertes Softwaresystem
4.3.1 Entwurf Datenmodell
4.3.2 Realisierung
4.3.3 Anlegen von internen Abhängigkeiten
4.3.4 Anlegen von externen Abhängigkeiten
4.3.5 Abfrage von Abhängigkeiten
4.3.6 Vorschläge für weitere Prototypversionen
4.3.7 Vorschlag zur Einführung und Benutzung des Systems
5. Darstellungsmöglichkeiten
5.1 Motivation
5.2 Anwendungsbereiche und Beispiele
5.3 Syntaktische Darstellungen
5.3.1 Natürliche Sprache
5.3.2 Relationen
5.3.3 Dependency Schreibweise
5.3.4 MAKE-Beschreibung
5.4 Graphische Darstellungsmöglichkeiten
5.4.1 Abhängigkeitsgraph
5.4.2 Gantt
5.4.3 UML
5.4.4 Dependency Structure Matrix
5.4.5 PERT-Diagramme
5.4.6 CPM-Methode
5.4.7 Petri-Netze
5.4.8 P-Netze
5.4.9 CIE-Diagramme
5.5 Verworfene Ansätze
5.6 Zusammenfassung
6. Zusammenfassung und Ausblick
Zielsetzung & Themen
Die Arbeit analysiert die Problematik von Software-Abhängigkeiten in Schienenfahrzeugen und entwickelt ein Konzept zur deren Verwaltung. Ziel ist die Erstellung einer Wissensdatenbank und eines Systems zur Prüfung von Konfigurationsaufstellungen, um die manuelle und fehleranfällige Arbeit im Konfigurationsmanagement zu unterstützen.
- Analyse und Klassifizierung von Abhängigkeiten
- Formalisierung von Anforderungen an Konfigurationsaufstellungen
- Entwurf eines Entity-Relationship-Modells für Abhängigkeitsinformationen
- Prototypische Umsetzung basierend auf Datenbanklösungen
- Erörterung von Visualisierungsmöglichkeiten für komplexe Abhängigkeitsstrukturen
Auszug aus dem Buch
3.1 Begriffsdefinition
Der Begriff der Abhängigkeit ist schwer nur in eine Bedeutung zu fassen, obwohl dieser häufig Verwendung findet. Deshalb ist es wichtig, dass die formalen Definitionen rund um das Thema Abhängigkeiten dargestellt und bewertet werden. Um eine auf das Themengebiet angepasste Begriffsumschreibung zu finden, müssen diese Definitionen mit Verständnis des Begriffs „Abhängigkeit“ im Bereich der Fahrzeugsoftware abgeglichen werden. Die nachfolgenden Definitionen sind im Bereich der Mathematik, formalen Logik und Informatik einzuordnen. Darüber ist der Begriff der Abhängigkeit auch z.B. in den Bereichen der Medizin, Psychologie und Wirtschaft definiert. Da diese Informationen aber bei der Problemlösung nur marginal beitragen könnten, werden sie hier ausgeklammert.
Definition 1. [Bro01] Sind mehrere Begriffe oder Dinge (z.B. Größen, Eigenschaften, Ausdrücke, Aussageformen) durch bestimmte Zusammenhänge, Gesetzmäßigkeiten, Relationen, u.a. miteinander verknüpft, so werden sie als (voneinander) abhängig bezeichnet, d.h. es besteht eine Abhängigkeit zwischen ihnen. Eine explizite Abhängigkeit liegt vor, wenn eine Aussage der Form „A hängt von A1, A2, ... , An ab“, gemacht werden kann. Ein Beispiel dafür die die Abhängigkeit der Variablen y des Wertebereichs einer Funktion f von der unabhängigen Variablen x ihres Definitionsbereichs. Eine Aussage der Form A1, A2, ... , An sind voneinander abhängig drückt eine implizite Abhängigkeit aus. Ein Beispiel ist die aus (3.1) y = f(x) hervorgehende Gleichung der Form (3.2) F(x, y) = 0.
Zusammenfassung der Kapitel
1. Einleitung: Beleuchtung der zunehmenden Komplexität von Software in modernen Zügen und die daraus resultierende Notwendigkeit für ein strukturiertes Konfigurationsmanagement.
2. Einordnung in das Software-Konfigurationsmanagement: Theoretische Fundierung des Software-Konfigurationsmanagements und seine Bedeutung für komplexe Fahrzeugsysteme.
3. Abhängigkeiten von Softwarekomponenten: Detaillierte Analyse, Klassifizierung und Definition von Abhängigkeitsarten im Kontext der Deutschen Bahn AG.
4. Verwaltung von Abhängigkeiten: Vorstellung eines Konzepts und Prototyps zur formalen Verwaltung von Abhängigkeiten mittels Datenbankmodellen.
5. Darstellungsmöglichkeiten: Untersuchung verschiedener syntaktischer und graphischer Methoden zur Visualisierung komplexer Abhängigkeitsstrukturen.
6. Zusammenfassung und Ausblick: Resümee der erreichten Meilensteine und Identifikation weiterführender Forschungsbedarfe.
Schlüsselwörter
Software-Konfigurationsmanagement, Schienenfahrzeugsoftware, Abhängigkeiten, Softwarekomponenten, Konfigurationselemente, Entity-Relationship-Modell, Wissensdatenbank, Softwareabhängigkeit, Revisionssicherheit, Versionsmanagement, Build-Management, Systemintegration, IT-Infrastruktur, Automatisierung, Datenmodellierung.
Häufig gestellte Fragen
Worum geht es in der Arbeit grundsätzlich?
Es geht um den Entwurf eines Systems zur Verwaltung und Darstellung von Abhängigkeiten bei Schienenfahrzeug-Software, um das manuelle und fehleranfällige Konfigurationsmanagement zu optimieren.
Was sind die zentralen Themenfelder?
Zentral sind die Analyse von Abhängigkeiten, das Konfigurationsmanagement, die Datenbankmodellierung sowie verschiedene methodische Ansätze zur Visualisierung von komplexen Systemzusammenhängen.
Was ist das primäre Ziel oder die Forschungsfrage?
Ziel ist es, eine Wissensdatenbank als Basis für die Prüfung von Konfigurationsaufstellungen zu schaffen und die Personengebundenheit des Wissens über diese Abhängigkeiten zu reduzieren.
Welche wissenschaftliche Methode wird verwendet?
Die Arbeit nutzt eine Ist-Analyse, gefolgt von einer Klassifizierung der Abhängigkeiten und der Entwicklung eines softwarebasierten Konzepts, das durch Prototypen (u.a. in MS Access) verifiziert wird.
Was wird im Hauptteil behandelt?
Der Hauptteil gliedert sich in die theoretische Einordnung, die detaillierte Klassifikation der Abhängigkeiten, die Entwicklung des Datenmodells zur Verwaltung und die Untersuchung geeigneter graphischer Darstellungsmethoden.
Welche Schlüsselwörter charakterisieren die Arbeit?
Software-Konfigurationsmanagement, Schienenfahrzeugsoftware, Abhängigkeiten, Konfigurationselemente, Datenmodellierung und Systemintegration.
Warum ist das Thema für die Deutsche Bahn AG relevant?
Die enorme Flottengröße und die teilweisen Umrüstungen führen zu einer komplexen Softwarelandschaft, in der manuell verwaltete Tabellen zur Konfigurationsprüfung nicht mehr ausreichend sind.
Welche Rolle spielen externe Abhängigkeiten im Gegensatz zu internen?
Interne Abhängigkeiten betreffen die technische Kompatibilität von Softwaremodulen, während externe Abhängigkeiten durch äußere Einflüsse wie gesetzliche Richtlinien oder spezifische lokale Gegebenheiten (z.B. Streckenmerkmale) definiert sind.
Warum wurden die untersuchten Ansätze (wie Paketmanager) als Prototypen gewählt?
Sie ermöglichen eine schnelle und praxisnahe Validierung des Datenmodells, um Anforderungen zu formalisieren, ohne sofort eine vollumfängliche, konzernweite Softwarelösung entwickeln zu müssen.
- Quote paper
- Stephan Hüwe (Author), 2007, Entwurf eines Systems zur Verwaltung und Darstellung der Abhängigkeiten von Schienenfahrzeug-Software, Munich, GRIN Verlag, https://www.grin.com/document/83186