Selten werden Software-Projekte von Anfang an so entworfen, wie sie zum Schluss aussehen – viel eher wachsen Wünsche und Anforderungen mit dem Projektverlauf. Dann macht sich ein Werkzeug bezahlt, das die Einhaltung bzw. Erfüllung von Anforderungen automatisch verfolgt.
Selten werden Software-Projekte von Anfang an so entworfen, wie sie zum Schluss aussehen – viel eher wachsen Wünsche und Anforderungen mit dem Projektverlauf. Dann macht sich ein Werkzeug bezahlt, das die Einhaltung bzw. Erfüllung von Anforderungen automatisch verfolgt.
Die Software-Werkzeugschmiede LDRA hat ein neues Tool entwickelt, mit dem sich Anforderungen verwalten und ihre Erfüllung automatisch nachverfolgen lassen. Damit werden Vorgänge automatisiert, die bisher nur händisch durchführbar waren. Das Problem: Die Anforderungen an eine Software werden entweder in Office-Programmen oder in sog. Requirements-Engineering-Werkzeugen wie Doors und RequisitePro formuliert. Die Software-Entwickler müssen diese Anfoderungen in Quellcode umsetzen. Die Prüfung, ob die gestellten Anforderungen zum Schluss tatsächlich erfüllt werden, erfolgte jedoch durch manuelle Kontrolle. Diesen Vorgang automatisiert eine neue Version von LDRAs „TBreq“.
TBreq bildet eine Brücke zwischen Anforderungen und Quellcode, indem es passend zu den Anforderungen Testfälle erzeugt, mit denen sich die Erfüllung der Anforderungen überprüfen lässt. Diese Aufgabe übernahm TBreq auch bisher schon, seit der Embedded World 2009 existiert jedoch eine aktualisierte Version, mit der sich automatisch überprüfen lässt, ob die Tests erfolgreich waren und die Anforderungen tatsächlich erfüllt werden. Weiterhin ordnet die neue Version Quellcode und Anforderungen einander zu. Es lässt sich also eindeutig verfolgen, über welchen Quellcode eine bestimmte Anforderung realisiert wird, bzw. welche Anforderung einer bestimmten Quellcode-Sektion zugrunde liegt. Auf diese Weise ist es leicht, nutzlosen Quellcode zu identifizieren, der von überhaupt keiner Anforderung gedeckt wird und letztlich ein Sicherheitsrisiko darstellt oder nie aufgerufen wird.
Der tatsächliche Nutzen eines solchen Werkzeugs stellt sich ein, wenn die Anforderungen nicht statisch verharren, sondern mit dem Projekt wachsen und sich während der Entwicklung ändern. Dann können die Tests jeweils automatisch generiert und abgeglichen werden. TBreq sammelt Anforderungen von einer ganzen Reihe von Quellen ein: Hierzu zählen sowohl Office-Programme wie auch alle Requirements-Engineering-Werkzeuge mit einem veröffentlichten XML-Schema. Auf Quellcode-Ebene werden C, C++ und Ada unterstützt. jk
Siehe auch:
Neuer Debugger für die Systemanalyse