Encapsulating targeted component abstractions using software Reflexion Modelling

When kept up-to-date, formal specifications can act as valid artifacts for maintenance tasks. However, their linguistic density and size impede comprehension, reuse, and change activities. Techniques such as specification slicing and chunking help in reducing the number of relevant lines of text to be considered, but they expect the point of change to be known a priori. This contribution presents a process model for concept location within formal Z-specifications. It also considers those situations when the location is not even roughly known. The identification is comparable to the identification of regions with high cohesion. The approach is based on the idea of first transforming the specification to an augmented graph and, secondly, on the generation of spacial clusters. Copyright © 2008 John Wiley & Sons, Ltd.

[1]  Jim Q. Ning,et al.  Knowledge-based program analysis , 1990, IEEE Software.

[2]  Jonathan P. Bowen Formal Specification and Documentation Using Z: A Case Study Approach , 1996 .

[3]  Norman Wilde,et al.  Software reconnaissance: Mapping program features to code , 1995, J. Softw. Maintenance Res. Pract..

[4]  I. Burnstein,et al.  A role for chunking and fuzzy reasoning in a program comprehension and debugging tool , 1997, Proceedings Ninth IEEE International Conference on Tools with Artificial Intelligence.

[5]  Andreas Bollin,et al.  Maintaining formal specifications - decomposition of large Z-specifications , 2005, 21st IEEE International Conference on Software Maintenance (ICSM'05).

[6]  Michalis Vazirgiannis,et al.  c ○ 2001 Kluwer Academic Publishers. Manufactured in The Netherlands. On Clustering Validation Techniques , 2022 .

[7]  Christopher A. Welty,et al.  Augmenting abstract syntax trees for program understanding , 1997, Proceedings 12th IEEE International Conference Automated Software Engineering.

[8]  Alex Quilici,et al.  Some experiments toward understanding how program plan recognition algorithms scale , 1996, Proceedings of WCRE '96: 4rd Working Conference on Reverse Engineering.

[9]  Václav Rajlich,et al.  Case study of feature location using dependence graph , 2000, Proceedings IWPC 2000. 8th International Workshop on Program Comprehension.

[10]  Jonathan P. Bowen,et al.  Seven More Myths of Formal Methods , 1995, IEEE Softw..

[11]  Tong Yi,et al.  Slicing Z specifications , 2004, SIGP.

[12]  Anthony Hall,et al.  Seven myths of formal methods , 1990, IEEE Software.

[13]  P.E. Ross The exterminators [software bugs] , 2005, IEEE Spectrum.

[14]  Alex Quilici,et al.  Applying Plan Recognition Algorithms To Program Understanding , 2004, Automated Software Engineering.

[15]  Axel van Lamsweerde,et al.  Formal specification: a roadmap , 2000, ICSE '00.

[16]  Wojtek Kozaczynski,et al.  Program Concept Recognition and Transformation , 1992, IEEE Trans. Software Eng..

[17]  Andreas Bollin The efficiency of specification fragments , 2004, 11th Working Conference on Reverse Engineering.

[18]  Robert Anthony Weida,et al.  Closed terminologies and temporal reasoning in description logic for concept and plan recognition , 1996 .

[19]  J. Bezdek,et al.  FCM: The fuzzy c-means clustering algorithm , 1984 .

[20]  Hartmut Ehrig,et al.  Formal specification , 2001 .

[21]  Yachai Limpiyakorn,et al.  Using an artificial intelligence approach to build an automated program understanding/fault localization tool , 1999, Proceedings 11th International Conference on Tools with Artificial Intelligence.

[22]  Norman Wilde,et al.  The role of concepts in program comprehension , 2002, Proceedings 10th International Workshop on Program Comprehension.