Titelaufnahme

Titel
Specification comprehension reducing the complexity of specifications / Andreas Bollin
Weitere Titel
Parallelt. [Übers. des Autors]: Specification comprehension - reducing the complexity of specifications
VerfasserBollin, Andreas
Begutachter / BegutachterinMittermeir, Roland ; Hitz, Martin
Erschienen2004
UmfangXII, 311 S. : graph. Darst.
HochschulschriftKlagenfurt, Univ., Diss., 2004
Anmerkung
Zsfassung in dt. Sprache
SpracheEnglisch
Bibl. ReferenzKB2004 26 ; OeBB
DokumenttypDissertation
Schlagwörter (DE)Software Engineering / Formale Methoden / Spezifikations-Verstehen / Slices / Chunks / Metriken
Schlagwörter (EN)software engineering / formal methods / specification comprehension / slices / chunks / metrics
Schlagwörter (GND)Software Engineering / Formale Spezifikationstechnik / Komplexität / Reduktion
URNurn:nbn:at:at-ubk:1-29457 Persistent Identifier (URN)
Zugriffsbeschränkung
 Das Werk ist frei verfügbar
Dateien
Specification comprehension reducing the complexity of specifications [5.62 mb]
Links
Nachweis
Klassifikation
Zusammenfassung (Deutsch)

The objective of this work is to support the process of specification comprehension. The majority of comprehension problems goes back to the complexity of size, and the basic idea is to reduce the complexity of specifications by focusing on those parts which are necessary to solve a specific problem at hand. It is suggested to generate well-defined partial specifications such as specification slices and chunks. A prototype for Z-specifications has been implemented and used to asses the approach. The evaluation shows that, especially with larger specifications, the generation of partial specifications is efficient and effective. This work suggests to visualize dependencies that are hidden in the specification. Similar to program comprehension approaches the calculation of specification slices and chunks also depends on the identification of control-, data- and syntactic dependencies. As programming-language-like notions of dependencies are not applicable for specification languages this work introduces the notions of control-, data- and syntactic dependencies in specifications. Here, the basic idea is to look at dependencies between pre- and post-condition parts of the specification at hand. For the identification of dependencies it is suggested to transform the specification to a graph structure. The transformation depends on the specification language at hand and this work provides transformation rules for Z. However, the approach is applicable to several specification languages as the graph and the rules for the identification of dependencies are defined in a language-independent manner.

Zusammenfassung (Englisch)

Ziel der Arbeit ist, den VerstÃ$ndnisprozess (fÃr Wartungsfragen) bei Spezifikationen durch Verringerung der KomplexitÃ$t mittels Fokussieren auf relevante Teile zu unterstÃtzen. Im Fachgebiet des Programm-Verstehens gibt es bekannte Konzepte um den Umfang zu reduzieren und sicherzustellen, dass wichtige Informationen nicht verloren gehen: es sind dies die Konzepte der Erzeugung von Slices und Chunks. Diese Arbeit greift diese Konzepte der PartialitÃ$t auf und definiert Slices und Chunks fÃr Spezifikationen. Ein einfacher Prototyp fÃr Z-Spezifikationen wurde entwickelt. Die mit diesem Prototyp durchgefÃhrte Evaluation des Ansatzes zeigt, dass das Konzept der partiellen Spezifikation sehr effektiv ist. Vor allem bei grÃÃeren Spezifikationen kommt es zu einer starken Reduktion des Umfangs der partiellen Spezifikationen.

Die Erzeugung von partiellen Spezifikationen und das Sichtbarmachen versteckter AbhÃ$ngigkeiten setzen die Identifizierung von Kontroll-, Daten- und SyntaxabhÃ$ngigkeiten voraus. Aufgrund der deklarativen Natur vieler Spezifikationssprachen sind es vor allem KontrollabhÃ$ngigkeiten die nicht so einfach wie bei imperativen Programmiersprachen zu identifizieren sind. Diese Arbeit definiert AbhÃ$ngigkeiten in Spezifikationen, wobei es bei KontrollabhÃ$ngigkeiten auf die Identifizierung von AbhÃ$ngigkeiten zwischen Vor- und Nachbedingungen zurÃckgreift. Zur effizienten Identifizierung der AbhÃ$ngigkeiten wird eine Transformation in einen Graphen vorgeschlagen. Die Erzeugung des Graphen hÃ$ngt von der gewÃ$hlten Spezifikationssprache ab. Der Graph und die Regeln zur Identifizierung von AbhÃ$ngigkeiten sind jedoch so allgemein gehalten, sodass der Ansatz auf unterschiedliche Spezifikationssprachen anwendbar ist. Zur Veranschaulichung werden Regeln zum Transformieren von Z-Spezifikationen angegeben.

Statistik
Das PDF-Dokument wurde 13 mal heruntergeladen.