Qualitätssicherung Entwicklung

Mehr Effektivität in der Softwareentwicklung und -bereitstellung – Teil 2

Im zweiten Teil erklärt Aurel, wie der Tasktop Integration Hub mit seinem modellbasierten Ansatz den Projektüberblick und die Kollaboration zwischen Teams erheblich verbessert, indem er Integrationen zwischen dutzenden Tools auf einfache Weise herstellt.

Für einen Kunden der profi.com AG durfte ich den „Tasktop Integration Hub“ genauer unter die Lupe nehmen und möchte die wichtigsten Vorteile skizzieren. Die wesentliche Funktionalität ist, dass Anwender ihre Tools über eine Weboberfläche miteinander verbinden können, ohne zusätzlichen Code schreiben zu müssen.

Der modellbasierte Ansatz ist das Ergebnis von gut einem Jahrzehnt kontinuierlicher Arbeit. Dadurch wird die Komplexität deutlich reduziert und Verbindungen zwischen dutzenden Tools und tausenden Usern lassen sich einfach anlegen und verwalten. Verdeutlichen lässt sich dies am Beispiel einer gemeinsamen Sprache.


Abbildung 1. Systematischer Unterschied - Integration ohne Modell


Abbildung 2: Der modellbasierte Ansatz erleichtert die Integration neuer Tools enorm

Ohne ein Modell, welches als eine Art „Dolmetscher“ gesehen werden kann, jeder im Prinzip jede Sprache beherrschen müsste, sind bei sechs Sprachen schon 15 Übersetzungen notwendig.Hingegen sind mit einem Modell nur noch genauso viele Übersetzungen wie Sprachen notwendig.

Was würde nun passieren, wenn ein neues Tool hinzukommt? Ohne eine gemeinsame Basis zur Verständigung müsste zu den bestehenden sechs Verbindungen jeweils eine neue angelegt werden. Durch die Einführung eines Modells als Normalisierungsentität ist lediglich eine neue Verbindung zu dem Modell einzurichten.

Dieses modellbasierte Vorgehen erleichtert den Administrations- und Konfigurationsaufwand enorm und erhöht die Skalierbarkeit der Lösung. Mit dem Integration Hub ist es somit innerhalb weniger Klicks möglich, mehrere Projekte zu einer integrierten Tool-Landschaft hinzuzufügen. Diese Landschaft kann man im übersichtlichen Landscape View auch immer im Blick behalten und sieht jederzeit, welche Tools gerade welche Daten miteinander austauschen.


Abbildung 3: Mit dem "Landscape View" lassen sich Datenströme zwischen den Tools in Echtzeit visualisieren

Wie auf dem Landschaftsbild zu erkennen ist, bietet der Tasktop Integration Hub zudem über die Synchronisation hinausgehende Funktionen an. Wer das volle Potential des Integration Hubs nutzen möchte, kann über das Werkzeug auch DevOps-Tools einbinden. Hierfür erschließt sich auch der größte Sinn der Lösung, um sowohl die Softwareentwicklung als auch den Applikationsbetrieb miteinander zu verknüpfen.

Aktuell gibt es mehr als 40 Out-of-the-Box-Integrationen, die sich über verschiedene Disziplinen des Software Lifecycles erstrecken:

-    Agile Project Management - z.B. Atlassian JIRA
-    Requirements Management - z.B. IBM Rational
-    Application Lifecycle Management (ALM) - z.B. HPE Quality Center/ALM
-    Project and Portfolio Management - z.B. ServiceNow

Werkzeuge für Testautomation, Code-Analyse, Continuous Integration/Continuos Development, Build-Management, Application Performance Monitoring und Security Scanning sind typischerweise nicht in der Lage, Artefakte zur Aufzeichnung anzulegen. Stattdessen resultiert der Betrieb solcher Tools meist in einem Ereignis, wie zum Beispiel einem Fehler, welcher dann das manuelle Anlegen eines Artefakts in einem Lifecycle-Tool nach sich zieht. Wenn diese Ereignisse eintreten, kann der Tasktop Integration Hub so konfiguriert werden, dass er automatisch ein Artefakt in den angeschlossenen Lifecycle-Tools anlegt. Zum Beispiel, wenn ein automatisierter Selenium-Testfall fehlschlägt oder bei einem Sicherheitsscan eine Schwachstelle gefunden wird, legt der Integration Hub einen Defect im gewünschten Defect-Tracking Tool an.

Echtzeit-Reporting und Migrationsunterstützung für ALM Octane
Zusätzlich besteht die Möglichkeit, diese Informationen alle in eine angeschlossene Datenbank zu laden. Daraus kann dann ein Report über den gesamten Lifecycle gewonnen werden. Wenn die einzelnen Abteilungen arbeiten und Artefakte anlegen, werden die Prozessaktivitäten in Echtzeit in eine zentrale Datenbank gestreamt. Von dort können die Standard Business Intelligence Tools zahlreiche Reports und Visualisierungen generieren, welche die Daten von verschiedenen Teams (Entwickler, Projektmanager, Tester), Projekten, Domains und Tools beinhalten. Durch das Aufbrechen der  bereichs- und funktionsgebundenen Tool-Silos der verschiedenen Unternehmensbereiche können Einblicke gewonnen werden, welche mit den bisherigen Tools bisher nicht möglich waren.

Ein wichtiger Use Case für den Tasktop Integration Hub ist es, kostenlose Unterstützung für HPE ALM Octane und HPE ALM/Quality Center anzubieten. Dadurch ermöglicht es Tasktop seinen Kunden, eine nahtlose Übergangsphase zwischen bestehen den HP ALM/QC-Installationen und HPE ALM Octane einzurichten. Das bedeutet, einige Teams können weiterhin HPE ALM/QC nutzen, während andere in ihrem eigenen Tempo auf HPE ALM Octane umziehen.

Tasktop Integration Hub kann also auch aktiv bei der Modernisierung der Tool-Landschaft und damit verbundenen Migrationen behilflich sein. Durch den parallelen Betrieb, werden dabei mit dem Umstieg verbundene Risiken minimiert und der Adaptionsprozess deutlich vereinfacht.

Mein persönliches Fazit
Der Tasktop Integration Hub ist ein modellbasierter Helfer, um eine einheitliche (Über-)Sicht über laufende Softwareentwicklungsprojekte in einer fragmentierten Tool-Landschaft zu generieren. Informationen wie Artefakte, Kommentare oder Attachements werden zwischen den Tools synchronisiert und ermöglichen so die Sichtbarkeit und Nachverfolgbarkeit über den gesamten Applikationslebenszyklus.
Das Produkt unterstützt Entscheider bei der Analyse von Prozessen in Echtzeit und erlaubt eine komfortable und schnelle Integration neuer Tools. Dank der hohen Skalierbarkeit eignet sich der Tasktop Integration Hub vor allem für Unternehmen, die eine komplexe Projekt- und Tool-Landschaft betreiben. Hier kommen insbesondere die sinnvolle DevOps-Unterstützung sowie die aussagefähigen Reporting-Funktionen zum Tragen.