The ARDoCo Tool Landscape: REST API, TraceView, and TraceViz for Architecture Traceability
Dieses Paper präsentiert die ARDoCo Tool Landscape, eine öffentlich verfügbare Suite, bestehend aus einer REST-API, einem browserbasierten Frontend (TraceView) und einer VS Code-Erweiterung (TraceViz), welche die Wiederherstellung von State-of-the-Art-Traceability-Links für Entwickler und Architekten zugänglich macht und gleichzeitig eine verbesserte Verständlichkeit durch In-IDE-Visualisierung demonstriert.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich vor, Sie sind der Architekt einer riesigen, komplexen Stadt. Sie haben drei verschiedene Sätze von Bauplänen für diese Stadt:
- Das Märchenbuch (SAD): Eine schriftliche Beschreibung, wie die Stadt funktionieren sollte, geschrieben in einfachem Englisch.
- Die Diagramme (SAM): Formale Zeichnungen und Modelle, die zeigen, wie die Gebäude und Straßen miteinander verbunden sind.
- Die Konstruktion (Code): Die eigentlichen Ziegel, der Mörtel und die Verkabelung, aus denen die reale Stadt besteht.
Das Problem ist, dass diese drei Dinge oft auseinanderdriften. Das Märchenbuch sagt vielleicht „baue eine Brücke“, aber die Diagramme haben sie vergessen, und die Baustelle hat stattdessen einen Tunnel gebaut. Alle in Einklang zu halten, ist für Menschen ein Albtraum, da es zu viele Informationen gibt, um sie manuell zu verfolgen.
Dieses Paper stellt ein „magisches Werkzeugset“ namens ARDoCo vor, das automatisch die Verbindungen zwischen diesen drei Bauplänen findet und erkennt, wo sie voneinander abweichen. Um dieses Werkzeug für jeden leicht bedienbar zu machen, hat das Team drei verschiedene „Türen“ in das System eingebaut:
1. Der Maschinenraum: Die REST API
Betrachten Sie dies als das zentrale Kraftwerk. Es ist die schwere Maschinerie, die die eigentliche Arbeit leistet, indem sie das Märchenbuch, die Diagramme und die Konstruktion vergleicht.
- Für wen es ist: Andere Softwaretools oder Programmierer, die diese Engine in ihre eigenen Systeme einbinden möchten.
- Wie es funktioniert: Sie senden Ihre Baupläne über das Internet an diese Engine. Sie führt den Vergleich durch, speichert die Ergebnisse (damit sie die Arbeit nicht erneut ausführen muss, wenn Sie erneut fragen) und sendet die Antwort zurück. Es ist wie das Bestellen einer Pizza: Sie senden die Bestellung, die Küche bereitet sie zu und liefert das Ergebnis aus.
2. Der Kontrollturm: TraceView
Dies ist ein webbasiertes Dashboard, das jeder in einem Browser öffnen kann, ohne etwas installieren zu müssen.
- Für wen es ist: Architekten und Manager, die das „Große Ganze“ sehen müssen.
- Wie es funktioniert: Stellen Sie sich einen Bildschirm vor, der in drei Fenster unterteilt ist. Auf der linken Seite ist Ihr Märchenbuch, in der Mitte Ihre Diagramme und auf der rechten Seite die Konstruktion. Wenn Sie auf einen Satz im Märchenbuch klicken, hebt das Tool sofort den passenden Teil in den Diagrammen und der Konstruktion auf den anderen Bildschirmen hervor. Es fungt auch als Fehler-Spotlight, das rot blinkt, wenn das Märchenbuch ein Gebäude erwähnt, das in den Diagrammen nicht existiert.
3. Das Head-Up-Display: TraceViz
Dies ist ein spezielles Add-on für den Arbeitsplatz von Softwareentwicklern (speziell für ein Programm namens VS Code).
- Für wen es ist: Die eigentlichen Erbauer (Entwickler), die den Code schreiben.
- Wie es funktioniert: Anstatt dass Sie das Fenster wechseln müssen, malt dieses Tool kleine farbige Punkte direkt neben die Zeilen des Codes, die Sie gerade tippen. Wenn Sie mit der Maus über einen Punkt fahren, sagt es Ihnen: „Hey, diese Codezeile verbindet sich mit diesem Satz im Märchenbuch.“ Es ist wie ein GPS für den Code, mit dem Sie sofort von einer schriftlichen Anforderung zum exakten Stück Code springen können, das diese erfüllt, ohne jemals Ihren Schreibtisch zu verlassen.
Hat es funktioniert?
Das Team hat diese Werkzeuge an realen Softwareprojekten getestet.
- Die Engine: Das automatische Matching ist sehr gut darin, Verbindungen zu finden, und liegt oft in über 80 % der Fälle richtig, was eine enorme Verbesserung gegenüber gar nichts zu tun, darstellt.
- Das Head-Up-Display: Sie haben eine kleine Gruppe von Entwicklern gebeten, das Tool zu verwenden. Das Ergebnis? Alle waren sich einig, dass es ihnen half, den Code besser zu verstehen. Vor der Nutzung mussten sie manuell durch Ordner suchen, um Verbindungen zu finden. Mit den farbigen Punkten konnten sie direkt zur Antwort springen. Ein Entwickler sagte sogar, es wäre großartig für die Einarbeitung neuer Mitarbeiter.
Das Fazbeispiel
Das ARDoCo-Team hat komplexe, schwer zu bedienende Informatikforschung in ein benutzerfreundliches Werkzeugset verwandelt. Egal, ob Sie die Engine selbst betreiben, ein Dashboard in Ihrem Browser nutzen oder die Verbindungen während des Codierens sehen möchten – es gibt ein Werkzeug für Sie, um die Baupläne Ihrer Software-Stadt und deren Konstruktion in perfekter Harmonie zu halten.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.