Towards a software maintenance methodology using Semantic Web techniques and paradigmatic documentation modelling

Research that is ongoing to develop a methodology for the paradigmatic description of software to enhance the prospects for software maintenance is described. The authors discuss theories of software system descriptions in terms of Kuhn's paradigms and the application of metadata to software. The authors then propose the collection of software system metadata, which may include functional and non-functional requirement documentation, metrics, the success or failure of tests and the means by which various components interact or were intended to interact. The authors show how changes to metadata may be recorded and tracked and propose how they may be used to proactively notify developers of changing requirements and quality measurements that may impact maintenance. The authors show how Semantic Web techniques can be used to enable language-neutral relational navigation of software systems, thus facilitating software understanding and maintenance. Proposed extensions to this research are outlined, including the development of a toolset for distributed software maintenance.

[1]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[2]  Jun Han,et al.  Software documents, their relationships and properties , 1994, Proceedings of 1st Asia-Pacific Software Engineering Conference.

[3]  Meir M. Lehman Programs, life cycles, and laws of software evolution , 1980 .

[4]  David Wood Scaling the Kowari Metastore , 2005, WISE Workshops.

[5]  Leonid Kof,et al.  Natural Language Processing: Mature Enough for Requirements Documents Analysis? , 2005, NLDB.

[6]  Tharam S. Dillon,et al.  Enhancing Software Engineering Project Information through Software Engineering Ontology Instantiations , 2006, 2006 IEEE/WIC/ACM International Conference on Web Intelligence (WI 2006 Main Conference Proceedings)(WI'06).

[7]  Rachel Harrison,et al.  Evolution in software systems: foundations of the SPE classification scheme , 2006, J. Softw. Maintenance Res. Pract..

[8]  Robert L. Glass,et al.  Facts and fallacies of software engineering , 2002 .

[9]  M. Masterman Criticism and the Growth of Knowledge: The Nature of a Paradigm , 1970 .

[10]  Jim Welsh,et al.  Software Documents: Concepts and Tools , 1994, Softw. Concepts Tools.

[11]  Anthony MacDonald,et al.  Developing relational navigation to effectively understand software , 2003, Tenth Asia-Pacific Software Engineering Conference, 2003..

[12]  Jesse H. Shera Libraries and the organization of knowledge , 1965 .

[13]  Roy Fielding,et al.  Architectural Styles and the Design of Network-based Software Architectures"; Doctoral dissertation , 2000 .

[14]  David C. Hay,et al.  Data model patterns : a metadata map , 2006 .

[15]  P. Kollock The Economies of Online Cooperation: Gifts and Public Goods in Cyberspace , 1999 .

[16]  T. Kuhn,et al.  The Structure of Scientific Revolutions. , 1964 .

[17]  Lionel Casson,et al.  Libraries in the Ancient World , 2017 .

[18]  Paul J. Layzell,et al.  Expert maintainers' strategies and needs when understanding software: a case study approach , 2001, Proceedings Eighth Asia-Pacific Software Engineering Conference.

[19]  Premkumar T. Devanbu,et al.  LaSSIE—a knowledge-based software information system , 1991, ICSE '90.

[20]  Anne Gilliland-Swetland,et al.  Introduction to Metadata: Pathways to Digital Information , 1998 .

[21]  Charles Ashbacher Facts and Fallacies of Software Engineering, by Robert L. Glass , 2003, J. Object Technol..

[22]  Roy T. Fielding,et al.  Uniform Resource Identifiers (URI): Generic Syntax , 1998, RFC.

[23]  Spencer Rugaber,et al.  The use of domain knowledge in program understanding , 2000, Ann. Softw. Eng..

[24]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[25]  Axel van Lamsweerde,et al.  Generic Lifecycle Support in the ALMA Environment , 1988, IEEE Trans. Software Eng..