UnivIS
Informationssystem der Friedrich-Alexander-Universität Erlangen-Nürnberg © Config eG 
Musterbasierte Analyse und Korrektur von Trace-Anomalien

Eine durchgängige Traceability aller Artefakte eines Software-Entwicklungsprozesses wird von bedeutenden Standards wie DO-178B, dem V-Modell XT und CMMI gefordert und deren durchgängige Gewährleistung sowohl in der Forschung als auch in der industriellen Praxis als elementarer Bestandteil der Software- und Systementwicklung in den Bereichen Verifikation/Validierung sowie Dokumentation angesehen und ist nicht zuletzt eine elementare Forderung zur Umsetzung von Produktlinienansätzen. So dürfen sicherheitskritische Systeme nicht mehr ohne den Nachweis einer durchgängigen Traceability - ausgehend von der Anforderung über das Modell bis hin zum Code und dessen Test - in Einsatz gebracht werden. Die erfassten Traceability-Links dienen u.A. als Grundlage für folgende Analysen:
  • Auswirkung von Änderungen (Impact Analysis)

  • Rückverfolgbarkeit und Validierung (Derivation Analysis)

  • Überdeckungsmessung und Verifikation (Gap Analysis)

Trotz der offensichtlichen Vorteile, die eine derartige Durchgängigkeit in Aussicht stellt, hat sich die Traceability noch nicht auf breiter Front im Software Engineering durchgesetzt.
Gründe dafür sind eine fehlende allgemeingültige formale Definition im Sinne eines Traceability Modells, der niedrige Integrationsgrad der CASE Werkzeuge in Bezug auf die Traceability und der damit verbundene hohe Aufwand für Pflege und Analyse der Traceability-Links sowie die fehlenden Kenntnisse in Bezug auf die Evolution der Traceability im Projektverlauf. Was fehlt ist ein allgemeingültiger Ansatz zur systematischen, idealerweise quantifizierbaren Bewertung der Qualität der vorhandenen Link-Basis, um die Zuverlässigkeit einer Impact oder Derivation Analysis sicherzustellen und zur Identifikation von Trace-Anomalien weit über eine Gap Analysis hinaus. Ferner fehlen Ansätze, aus gefundenen Trace-Anomalien Korrekturmöglichkeiten ableiten zu können – auch schon in frühen Projektphasen.
Folgende Teilaufgaben des Forschungsprojekts sind geplant:

  • Entwicklung eines Traceability Modells und Metamodells zusammen mit einem zentralen Traceability Repository zur Ablage und Strukturierung der Link-Basis unter dem Aspekt der Analysierbarkeit. Das Metamodell wird benötigt, um eine generische Sicht auf Traceability Modelle zu ermöglichen. Dabei werden auch die Möglichkeiten erforscht, Traceability Modelle zu visualisieren.

  • Entwurf eines Rahmenwerks zur Analyse des Traceability Repository basierend auf der Graphentheorie. Es wird ein Katalog an Anti-Patterns und Metriken definiert, mit dem Ziel, Anomalien im Traceability Modell automatisiert identifizieren zu können.

  • Entwicklung von Ansätzen zur Korrektur von auffälligen Trace-Mustern als Erweiterung der bereits auf Code-Ebene bestehenden Refactoring Ansätzen auf alle Abstraktionsebenen der Software-Entwicklung.

  • Realisierung der Ansätze in einem Werkzeug, der Traceability Workbench zusammen mit Projektpartnern aus der Industrie.

Im Jahr 2007 wurde ein Traceability Metamodell entwickelt und gegen gängige Methoden und Standards der Software- und Systementwicklung wie den Unified Process (UP), Automotive SPICE, die Quasar Methode sowie den AUTOSAR Standard in seiner Einsatztauglichkeit geprüft. Ferner wurde mit CoCoA ein Werkzeug im Rahmen einer Diplomarbeit entwickelt, das eine Integration von Java-Quellcode mit UML Modellen und darauf basierend modellübergreifende Metrikberechnungen ermöglicht. Ebenfalls wurde im Rahmen einer Studienarbeit mit der Entwicklung eines ersten Prototypen der Traceability Workbench auf Basis von Eclipse und openArchitectureWare begonnen.

Projektleitung:
Prof. Dr. rer. nat. habil. Francesca Saglietti

Beteiligte:
Dipl.-Inf. (FH) Josef Adersberger

Stichwörter:
Traceability; Pattern; Antipattern

Laufzeit: 1.10.2006 - 31.12.2008

UnivIS ist ein Produkt der Config eG, Buckenhof