Induced intentional software views

Evolving and maintaining software requires adequate documentation of its implementation. However, due to the software's constant evolution, the documentation and implementation do not remain synchronised. Intentional software views have been proposed as a documentation technique to alleviate this problem. Creating such views is not at all a trivial task, however. In this paper, we propose to use a learning algorithm that derives such intentional software views from extensional software views, which are much easier to build. The resulting approach combines the advantages of intentional software views with the ease of constructing extensional views.

[1]  Edward B. Allen,et al.  GP-based software quality prediction , 1998 .

[2]  J. P. E. Hodgson Book review: Prolog: The Standard Reference Manual By E Deransart, A. Ed-Dbali, and L. Cervoni (Springer-Verlag, 1996) , 1998, SGAR.

[3]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[4]  Jens Uwe Pipka Refactoring in a "Test First"-World , 2002 .

[5]  Kim Mens,et al.  Supporting software development through declaratively codified programming patterns , 2002, Expert Syst. Appl..

[6]  Koen De Hondt A novel approach to architectural recovery in evolving object-oriented systems , 1998 .

[7]  David Notkin,et al.  Software reflexion models: bridging the gap between source and high-level models , 1995, SIGSOFT FSE.

[8]  Stephen Muggleton,et al.  Efficient Induction of Logic Programs , 1990, ALT.

[9]  Houari A. Sahraoui,et al.  Reusability hypothesis verification using machine learning techniques: a case study , 1998, Proceedings 13th IEEE International Conference on Automated Software Engineering (Cat. No.98EX239).

[10]  Kangde Yao,et al.  A Brief Guide to the Standard Object Modelling Language , 2000 .

[11]  Roel Wuyts,et al.  A Logic Meta-Programming Approach to Support the Co-Evolution of Object-Oriented Design and Implementation , 2001 .

[12]  Roel Wuyts,et al.  Declarative reasoning about the structure of object-oriented systems , 1998, Proceedings. Technology of Object-Oriented Languages. TOOLS 26 (Cat. No.98EX176).

[13]  Jan Bosch,et al.  Design Erosion: Problems & Causes , 2001 .

[14]  Tom Tourwé,et al.  Automated Support for Framework-Based Software Evolution , 2003 .

[15]  Tom Mens,et al.  A declarative evolution framework for object-oriented design patterns , 2001, Proceedings IEEE International Conference on Software Maintenance. ICSM 2001.

[16]  Thomas G. Dietterich What is machine learning? , 2020, Archives of Disease in Childhood.

[17]  Aniello Cimitile,et al.  A Logic-Based Approach to Reverse Engineering Tools Production , 1992, IEEE Trans. Software Eng..

[18]  Tom Mens,et al.  Maintaining software through intentional source-code views , 2002, SEKE '02.

[19]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[20]  Stephen Travis Pope,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

[21]  Pierre Deransart,et al.  Prolog - the standard: reference manual , 1996 .

[22]  Gerald J. Sussman,et al.  Structure and interpretation of computer programs , 1985, Proceedings of the IEEE.

[23]  Andy Kellens Using Inductive Logic Programming to Derive Software Views , 2003 .

[24]  Alan Borning,et al.  Lightweight structural summarization as an aid to software evolution , 1996 .

[25]  E KrasnerGlenn,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

[26]  Jan Bosch,et al.  Design erosion: problems and causes , 2002, J. Syst. Softw..

[27]  Jeffrey J. P. Tsai,et al.  Machine Learning and Software Engineering , 2004, Software Quality Journal.