Formale Konsistenzsicherung in informellen Software-Spezifikationen

Informatik Forschung und Entwicklung - Tập 19 - Trang 17-29 - 2004
Jan Scheffczyk1, Christiane Stutz2, Uwe M. Borghoff1, Johannes Siedersleben2
1Institut für Softwaretechnologie, Universität der Bundeswehr München, Neubiberg
2sd&m AG, software design & management, München

Tóm tắt

Die Spezifikation ist die Grundlage für den Erfolg eines Software-Projekts. Der Praktiker konzentriert sich hier i.d.R. auf die größte Herausforderung: die vollständige und inhaltlich korrekte Erfassung aller Anforderungen an das zu erstellende Software-System. Dass Spezifikationen für große Systeme aus vielen Dokumenten verschiedener Ausprägung in Form und Inhalt bestehen, tritt dabei meist in den Hintergrund. Ihre Konsistenz wird meist mit hohem manuellem Aufwand sichergestellt. Der Erstellung formal korrekter und konsistenter Software-Spezifikationen widmen sich zahlreiche theoretische Arbeiten. In der Praxis sind sie jedoch meist nicht mit der gewohnten Arbeitsweise vereinbar. In diesem Artikel stellen wir einen Mittelweg vor: Wir nutzen die Spezifikationsbausteine von sd&m für die Spezifikation, die als Ergebnisse Dokumente in natürlicher Sprache sowie semi-formale Darstellungen umfasst. Für Spezifikationen, die nach diesen Bausteinen erstellt wurden, definieren wir Konsistenz durch formale zeitbehaftete Konsistenzregeln. Ein von uns entwickeltes Auswertungswerkzeug ermittelt Inkonsistenzen präzise. Unterstützt von einem solchen Werkzeug kann sich der Software-Ingenieur wieder ganz auf das Hauptanliegen der Spezifikation konzentrieren: ihre inhaltliche Korrektheit und Vollständigkeit.