Den Entwicklungsprozess im Auge behalten

Feature | 29. November 2006 von admin 0

Getronics PinkRoccade

Getronics PinkRoccade

Mit rund 10.500 Beschäftigten ist Getronics PinkRoccade Marktführer für integrierte Dienstleistungen im Informations- und Kommunikationsbereich (IKT) in den Niederlanden. Das Unternehmen sorgt dafür, dass seine Kunden, ganz gleich, wo sie sich befinden, einen sicheren Zugang zu geschäftlichen Daten erhalten. Das Portfolio aus Entwicklung, Integration und Hosting von Geschäftslösungen richtet sich sowohl an weltweit agierende Firmen als auch an lokale Betriebe. Auf der Grundlage von SAP NetWeaver hat der Softwarehersteller die neue Produktfamilie “CiVision” für die öffentliche Verwaltung entwickelt. Dabei haben vor allem zwei Komponenten eine Rolle gespielt: SAP NetWeaver Application Server (SAP NetWeaver AS) und die SAP-NetWeaver-Entwicklungsumgebung, installiert als Usage Type DI.
SAP NetWeaver AS bietet Werkzeuge für eine modellgestützte, serviceorientierte Java-Entwicklung. Mit der SAP-Entwicklungsumgebung wiederum lassen sich sämtliche Prozesse im Lebenszyklus einer Software ausführen: Konstruktion, Erstellung der Entwicklungsumgebungen, Tests, Programmumwandlung und Bereitstellung. In SAP NetWeaver Developer Studio integriert, synchronisiert sie die Arbeit der Entwicklungsteams. Die Softwareentwicklung basiert dabei auf dem SAP-Komponentenmodell: Dieses legt wiederverwendbare Komponenten fest, die sich auf verschiedenen Ebenen zu Anwendungen zusammensetzen lassen.

Zentral auf Quellen zugreifen

Komponentenhierarchie

Komponentenhierarchie

Mit der Entwicklungsumgebung von SAP stehen einem Entwicklungsteam nicht nur Quellcode, sondern auch Archive zur Verfügung. Obwohl sich sämtliche Objekte zentral in einer einzigen Datenbank speichern lassen, trennen unterschiedliche logische Speicherorte die verschiedenen Produktzustände voneinander. Auf diese Weise lässt sich der Zugriff auf die einzelnen Versionen steuern, und die Mitarbeiter greifen stets auf die richtige zu. Die Pflege von Versionen wird dadurch erheblich vereinfacht. Alle Abhängigkeiten sind auf jeder Ebene klar definiert: Die Metadaten eines Entwicklungskomponenten-Projekts enthalten seine Schnittstellen und die gegenseitigen Abhängigkeiten – das Coding selbst ist nicht betroffen. Diese Informationen verwendet die Entwicklungsumgebung dazu, Prozesse zu kontrollieren. Dabei wird geprüft, ob alle Nutzer anderer Komponenten definiert sind und zur Verfügung stehen.
In Abhängigkeit von der zuerst fertiggestellten Komponente werden weitere Entwicklungskomponenten automatisch neu erstellt. Das erlaubt den Entwicklern, selbst zu entscheiden, wann einzelne Entwicklungskomponenten erstellt werden sollen, anstatt auf die Fertigstellung einer kompletten Anwendung zu warten. Anschließend folgen Zusammenstellung und Test der neuen Softwarekomponenten, Liefer- und Installationseinheiten, die Entwicklungskomponenten zu funktionalen Gruppen zusammenstellen. Diese lassen sich dann in Laufzeitsystemen, der nächsten Softwareschicht oder als Basis für ein neues Release verwenden. Jeder dieser Schritte – sei es das Einfügen der benötigten Objekte, der Import während des Entwicklungsprozesses, die Konsolidierung oder die Bereitstellung im Produktionssystem – wird eins zu eins im “Transport Studio” der Entwicklungsinfrastruktur abgebildet. “Tracks” definieren die Entwicklungsumgebungen für die Teams. Der Administrator kann also alle Projekte getrennt verfolgen. Die Effizienz der Entwicklungsprojekte steigt, da es viel zweckmäßiger ist, Anwendungen aus wiederverwendbaren Einheiten auf Basis eines klar definierten Verfahrens zu entwickeln, als jede Anwendung von Grund auf neu zu erstellen.

Die “CiVision”-Produktfamilie

Getronics PinkRoccade hat bereits mehrere Produkte für die öffentliche Verwaltung auf den Markt gebracht, die auf SAP NetWeaver basieren: Mithilfe der Anwendung “CiVision Event Permit” etwa kann die Genehmigung einer öffentlichen Veranstaltung beantragt werden. Die Anwendung “CiVision Addresses and Buildings” erfasst die Herkunft von Adressen, auf die eine Behörde zugreift. Die Mid-Office-Lösung “CiVision Publiekszaken” verbindet Anfragen von der Internetseite einer Stadtverwaltung mit dem SAP-R/3-Backoffice und umgekehrt.
Die Arbeit aller beteiligten Teams wurde während der Entwicklung dieser Produkte innerhalb einer zentralen Entwicklungsumgebung koordiniert. “Der Erfolg unserer SAP-gestützten Produkte hat unsere Erwartungen übertroffen”, sagt Ronald Spoor, Produktionsleiter des Bereichs “Öffentliche Verwaltungen” bei Getronics PinkRoccade. “Und die auf SAP NetWeaver basierende Entwicklungsumgebung hat entscheidend dazu beigetragen.”
Die Produktarchitektur “CiVision” verwendet eine Benutzerschnittstelle auf Basis von Web Dynpro Java, die auf dem SAP NetWeaver Portal läuft. Sie verbindet den Anwender mit einem ABAP-Backend. Ein Teil der Funktionalität bearbeitet alle auf einer Internetseite der jeweiligen Stadtverwaltung gestellten Anfragen. Die Mid-Office-Anwendungen generieren diese Anfragen und senden sie dann an Fremdsysteme und an solche, die auf einem ABAP-Stack laufen. All das hat Getronics PinkRoccade mithilfe von Web Dynpro Java sowie neuer Geschäftslogik und Persistenz basierend auf ABAP entwickelt.

Von Schicht zu Schicht

Die Architektur der CiVision-Produkte gliedert sich in mehrere Ebenen, wobei die Komponenten der mittleren und unteren Ebenen von der obersten Anwendungsschicht häufig wiederverwendet werden. Die Basisschicht umfasst Softwarekomponenten sowohl von Getronics PinkRoccade als auch von SAP. Sie enthält alle von den anderen Komponenten mehrmals verwendbaren technischen Funktionen. Die zweite Ebene besteht aus allgemeinen Funktionen, die dritte enthält die Applikationen, die für konkrete Zwecke entwickelt wurden.

SAP-Komponentenmodell

SAP-Komponentenmodell

Im Rahmen dieser Struktur erstellt der Administrator für jede Ebene eine Entwicklungsumgebung. Die Ergebnisse der Entwicklung auf einer Ebene dienen als Ausgangspunkt für die Gestaltung der nächsten. Das gesamte Verfahren orientiert sich dabei an dem Komponentenmodell der SAP: Die einzelnen Objekte werden anhand dieses Modells entwickelt und alle Schritte – von der Erstellung der Entwicklungsumgebung bis zur Auslieferung – in einer zentral gehosteten Umgebung ausgeführt. Das hat den Vorteil, dass der Quellcode kontrolliert und Entwicklungsversionen und Archiv, aber auch Umgebungen und Transporte zentral verwaltet werden können. Mit Hilfe dieser Lösung können die Quellcodezeilen verschiedener Produkte in unterschiedlichen Versionen sauber getrennt, aber dennoch in einer einzigen Entwicklungsumgebung verwaltet werden. So lässt sich auch Quellcode versenden, Änderungen können vorgenommen und der Code später jederzeit mit Support-Paketen zusammengeführt werden.
Dabei sahen die Arbeitsschritte der Teams von Getronics PinkRoccade auf allen Ebenen ähnlich aus: Die Entwickler erhielten direkten Zugang zur zentralen Entwicklungsumgebung. Sie entwarfen mit Hilfe der zentral gespeicherten Versionen von Objekten, die für das jeweilige Projekt relevant waren, neue Funktionen auf Grundlage der bestehenden Ebenen. Dabei konnten sie jederzeit auf aktuelle und konsistente Objekte zugreifen. “Alle Java-Objekte werden nach dem Standardverfahren im Eclipse-gestützten SAP NetWeaver Developer Studio bearbeitet. Die Entwickler können alle Objekte, die sie benötigen, aus der Entwicklungskonfiguration direkt in ihre jeweilige integrierte Entwicklungsumgebung laden, und die Struktur ihrer Anwendungen übertragen sie explizit in ihre Projekte”, erklärt Spoor. “Die Wiederverwendung hat sich erheblich erhöht, Änderung und Pflege sind leichter prognostizierbar.”

Mehr Transparenz und Kontrolle

Auch kleine Teams profitieren von den Vorteilen des neuen Entwicklungsprozesses; je größer jedoch eine Arbeitsgruppe ist, desto stärker profitiert sie, vor allem, wenn sie über verschiedene Orte verstreut ist. Die Arbeit eines Teams lässt sich durch das neue Entwicklungsverfahren leicht zusammenführen. Dadurch werden verschiedene, unabhängige Versionszustände einfacher miteinander in Einklang gebracht. In Absprache miteinander lassen sich auch die Entwicklungsebenen besser definieren und die Komponenten einer vollständigen Anwendung mehrfach verwenden. Klar definierte Rollen für Transport oder Administration vereinfachen die Gesamtkoordination. “Durch die SAP-NetWeaver-Entwicklungsumgebung erhalten wir die zentrale Kontrolle über sämtliche Entwicklungsprojekte. Wir haben unsere Produkte dadurch viel schneller zur Marktreife gebracht”, erläutert Ronald Spoor. “Besonders das Entwicklungsverfahren auf mehreren Ebenen, das Änderungsmanagement und die Funktionen zur Softwarelogistik helfen uns, unsere Lösungen zu überschaubaren Kosten und mit vertretbarem Aufwand zu entwickeln und auszuliefern”, ergänzt er. “SAP NetWeaver hat uns geholfen, im unruhigen Markt der IT für die öffentliche Verwaltung stets alle Anforderungen zu erfüllen.”

Wolf Hengevoss

Wolf Hengevoss

Tags:

Leave a Reply