Читать книгу Evaluierung des kollaborativen Lifecycle-Managements mit der IBM Jazz Plattform - Группа авторов - Страница 7
ОглавлениеEinleitung: Evaluierung der IBM Rational Jazz-Plattform
Rene Meyer,
IBM Deutschland GmbH
Margret Stanierowski,
Hochschule für Technik und Wirtschaft Berlin
Inhaltsverzeichnis
1. Einführung in die IBM Rational Jazz-Plattform
2. Überblick über IBM Rational Team Concert
1. Einführung in die IBM Rational Jazz-Plattform
Die Komplexität und Vernetzung von Anwendungssystemen zur Unterstützung der Wertschöpfungsketten in allen Bereichen der Wirtschaft und des täglichen Lebens nimmt immer weiter zu. Damit ergibt sich bei der Erstellung dieser Systeme natürlich auch der Wunsch nach Integrationen und effektiver Zusammenarbeit der Werkzeuge, Personen und Prozesse, welche für die Erstellung und Wartung der Systeme benötigt werden. Die Realisierung von Software bzw. softwareintensiven Systemen macht eine Kommunikation zwischen den Projektbeteiligten aus mehreren fachlichen und technischen Bereichen erforderlich. Gleichzeitig entstehen verschiedene Arbeitsergebnisse. Das können z. B. Anforderungen, Geschäftsprozesse, Modelle, Code, Testbeschreibungen, Fehler und Anwenderdokumentation sein. Diese Informationen sollen einen logischen Zusammenhang bilden und unterliegen laufenden Änderungen und Anpassungen im Verlauf des Lebenszyklus der Anwendungsentwicklung.
Für die Erstellung der jeweiligen Arbeitspakete auf den verschiedenen Abstraktionsebenen und Bereichen kommen oft verschiedenste Werkzeuge zum Einsatz. Dabei besteht die Herausforderung bei eintretenden Änderungen, die Zusammenhänge und Abhängigkeiten der unterschiedlichen Informationen im Kontext der jeweiligen aktuellen Aufgabe zu erkennen.
Diese Nachvollziehbarkeit oder Verfolgbarkeit von Änderungen und die damit oft verbundene Analyse der Auswirkung hat entscheidenden Einfluss auf die Qualität und Reaktionsfähigkeit eines Teams, welches für die Anwendungsentwicklung verantwortlich ist. Zugleich stellt dieser Aspekt auch eine wesentliche Grundlage für die Wartbarkeit und Qualität der Software dar, damit z. B. Geschäftsprozesse und darauf implementierte Funktionen in der Anwendung mittel- oder langfristig nicht auseinanderlaufen. Ohne die Nutzung integrierbarer Werkzeuge lässt sich ein solcher Prozess manuell nur unter hohem Aufwand umsetzen.
Die IBM Rational Jazz-Plattform bietet eine neue technologische Basis, um verschiedene Werkzeuge und Domänen bei der Anwendungsentwicklung prozess- und rollenübergreifend zu integrieren und Teamarbeit effektiv zu unterstützen.
Abbildung 1 - Verknüpfung von Ressourcen unterschiedlicher Bereiche über standardisierte Schnittstellen und Protokolle3
Jazz-Werkzeuge besitzen offene Schnittstellen auf Basis eines hersteller-übergreifenden Standards Open Services for Lifecycle Collaboration (OSLC). Grundgedanke ist hier die Verwirklichung von Services und Workflows, welche die Verlinkung von Artefakten zwischen Softwareentwicklungswerkzeugen plattformneutral durch die Nutzung von leichtgewichtigen REST Services definiert. Durch diese Verlinkung wird eine Nachvollziehbarkeit aller Artefakte über Werkzeuggrenzen hinweg gesichert. Mit der Nutzung von REST Services wird zudem auch standort-übergreifendes Arbeiten über das Internet ermöglicht.
Bei der Entwicklung der Jazz-Plattform und -Werkzeuge orientiert sich IBM an Konzepten aus der Open-Source-Welt. Kunden können direkt mit den Entwicklern über Foren und Blogs kommunizieren, Fehler und Erweiterungswünsche erstellen, sowie auf die komplette Projektplanung zugreifen. Durch diese „outside-in“-Entwicklung wird ein intensiver Austausch von Produktplanung, Entwicklung und den Anwendern der JazzWerkzeuge ermöglicht.
Die Bestandteile der Plattform sind auf folgender Grafik dargestellt:
Abbildung 2 - Anatomie der IBM Rational Jazz Plattform4
Aktuell hat IBM folgende Werkzeuge auf Basis der Jazz Plattform realisiert:
1 IBM Rational Team Concert (RTC) - kollaborative Planung, Entwicklung, Konfigurations- und Build-Management
2 IBM Rational Requirements Composer (RRC) - Definition und Verwaltung von Anforderungen
3 IBM Rational Quality Manager (RQM) - Testmanagement, Steuerung der Testautomatisierung und Testumgebungsmanagement
4 IBM Rational Design Manager - webbasierte Kommunikation und Dokumentation sowie Reviews von Modellen
Zusätzlich stehen für viele Werkzeuge von IBM und Partnern OSLC Schnittstellen zur Verfügung, welche eine Anbindung an die Jazz-Plattform ermöglichen.
2. Überblick über IBM Rational Team Concert
Im Rahmen des Projektes an der HTW stand das Werkzeug IBM Rational Team Concert (RTC) im Zentrum der Evaluierung der Jazz Plattform, da hier wesentliche Teile wie Prozessanpassung und Projektmanagement verwirklicht sind, welche in diesem Projekt intensiv untersucht wurden.
RTC ist ein Werkzeug für Entwicklungsteams das unterschiedliche Aufgaben unterstützt, welche in der Softwareentwicklung benötigt werden. Die Grundprinzipien der Jazz Plattform in Bezug auf Kollaboration, Transparenz und Automatisierung werden dabei in vielen Funktionen des Werkzeuges besonders berücksichtigt.
Die Hauptaufgaben des Werkzeuges umfassen folgende Bereiche:
Verfolgung von Arbeitselementen auf verschiedenen Abstraktionsebenen im Entwicklungsprozess
Komponentenbasierte Versionsverwaltung
Iterationsplanung
Kontinuierliches Build-Management
Anpassbares Prozessmanagement (Abbildung traditioneller oder agiler Vorgehensmodelle)
An einem RTC-Projekt können daher verschiedene Rollen je nach Nutzungsumfang partizipieren, beispielsweise Projektmanager, Architekten, Entwickler oder Tester. Für diese Nutzerrollen bietet das Werkzeug unterschiedliche Zugriffsmöglichkeiten. Über einen normalen Browser kann unter anderem die komplette Projektplanung durchgeführt werden oder auf sämtliche Informationen zugegriffen werden. Über die Nutzung von Dashboards und Abfragen lässt sich dabei sehr einfach der Status laufender Projekte aus verschiedenen Blickrichtungen wie z. B. Auslastung, offene Fehler und Aufgaben oder Projektfortschritt darstellen.
Ebenfalls kann jeder Mitarbeiter seinen Aufgaben sowie die Abhängigkeiten zu anderen Elementen erkennen. Durch Funktionen wie z. B. Kommentare, RSS-Feeds, E-Mail Benachrichtigungen sowie Instant Messaging Integration ist der Austausch des Teams im Kontext der jeweiligen Tätigkeit sichergestellt.
Jede Aufgabe innerhalb des Teams ist an bestimmte Arbeitselemente gekoppelt, die ihrerseits Aufgaben im Entwicklungsprozess von Software verkörpern. Dabei können in RTC Arbeitselemente unterschiedliche, benutzerdefinierbare Ausprägungen annehmen. Während der Untersuchung standen die Ausprägungen „Defect“, „Aufgabe“, „Aktivität“, „Verbesserung“ und „Risiko“ im Mittelpunkt.
Darüber hinaus können Arbeitselemente eine große Anzahl an Aufgabendetails und Verknüpfungen mit anderen Entitäten der Jazz-Plattform (u. A. Anforderungen und Tests) enthalten und in Genehmigungsworkflows eingebunden sein (z. B. bei Arbeitselementen des Typs „Risiko“). Durch diese Flexibilität und die reichhaltige Informationserfassung lässt sich die gesamte Projektarbeit in der Jazz-Plattform mithilfe von Arbeitselementen strukturieren und nachvollziehbar machen.
Neben dem Zugriff auf Projektdaten über einen Browser lässt sich RTC in verschiedene Entwicklungsumgebungen integrieren. IBM unterstützt direkt Eclipse, bzw. Eclipse-basierte Entwicklungsumgebungen sowie Microsoft Visual Studio. Innerhalb der Entwicklungsumgebung integrieren sich neben Planungskomponenten spezielle Integrationen für Konfigurations- und Build-Management.
RTC ermöglicht die Versionierung von Artefakten, welche mittels der genannten IDEs erstellt werden. Hiermit wird eine breite Palette von Programmiersprachen unterstützt, z. B. Java, C# und C++. Für Hostsysteme wie IBM System z oder IBM i besitzt RTC ebenfalls eine Unterstützung und ermöglicht auf diesen Plattformen die Integration der jeweiligen Programmiersprachen wie Cobol, PL-I oder Assembler.
Jedes RTC-Projekt basiert auf einer Prozessschablone, welche Eigenschaften und Regeln sowie Elemente des Projektes definiert. Mit RTC werden verschiedene Schablonen für weit verbreitete Prozesse im agilen und traditionellen Projektumfeld mitgeliefert. Diese Schablonen können entweder ohne Anpassungen genutzt werden oder lassen sich nach eigenen Vorgaben ändern um eigene Prozessmodelle zu implementieren.
Die Schablonen erlauben eine vollständige Anpassung der Umgebung an die Erfordernisse im Projekt. Sowohl einzelne Phasen und Aktivitäten als auch Arbeitselemente und Rollen können definiert und in anderen Projekten wiederverwendet werden.
Die Grafik auf der nächsten Seite stellt zusammenfassend die wesentlichen Komponenten von RTC schematisch dar.
Abbildung 3 - Funktionsbereiche von RTC5
3Quelle: IBM
4Quelle: IBM
5Quelle: IBM