Designing a Tool for Software Maintenance

The aim of software maintenance is to maintain
the software system in accordance with advancement in software
and hardware technology. One of the early works on software
maintenance is to extract information at higher level of abstraction. In
this paper, we present the process of how to design an information
extraction tool for software maintenance. The tool can extract the
basic information from old programs such as about variables, based
classes, derived classes, objects of classes, and functions. The tool
have two main parts; the lexical analyzer module that can read the
input file character by character, and the searching module which
users can get the basic information from the existing programs. We
implemented this tool for a patterned sub-C++ language as an input
file.





References:
[1] IEEE Standard Glossary of Software Engineering Terminology. IEEE Std
610.12-1990, 1990.
[2] Phillip A. Laplante. What Every Engineer Should Know About Software
Engineering. CRC Press, 2007.
[3] Roger S. Pressman. Software Engineering: A Practitioner’s Approach.
McGraw-Hill Higher Education, UK, 2010.
[4] Ian Sommerville. Software Engineering(7th ed.). Addison Wesley, 2004.
[5] Keith H. Bennett and V´aclav Rajlich. Software maintenance and
evolution: a roadmap. In Proceedings of the International Conference on
Software Engineering (ICSE’00), pages 73-87, 2000.
[6] IEEE Standard for Software Maintenance. IEEE Std 1219-1993, Jun 1993.
[7] ISO/IEC Standard for Software Maintenance. ISO/IEC Std 14764:1999,
1999.
[8] V´aclav Rajlich. Software Evolution and Maintenance. In the Proceedings
of the Future of Software Engineering (FOSE 2014), pages 133-144,
2014.
[9] Michele Risi and Giuseppe Scanniello. MetricAttitude: A Visualization
Tool for the Reverse Engineering of Object Oriented Software. In the
Proceedings of the International Working Conference on Advanced Visual
Interfaces, pages 449-456, 2012.
[10] Josip Maras and Maja ˇ Stula and Ivica Crnkovic. phpModeler - A Web
Model Extractor. In the Proceedings of the 2009 IEEE/ACM International
Conference on Automated Software Engineering (ASE 2009), pages
660-661, 2009.
[11] Cs´eri, Tam´as and Sz¨ugyi, Zal´an and Porkol´ab, Zolt´an. Rule-based
Assignment of Comments to AST Nodes in C++ Programs. In the
Proceedings of the Fifth Balkan Conference in Informatics, pages
291-294, 2012.
[12] Chen, Haibo and Yu, Jie and Chen, Rong and Zang, Binyu and
Yew, Pen-Chung. POLUS: A POwerful Live Updating System. In
the Proceedings of the 29th International Conference on Software
Engineering (ICSE 2007), pages 271-281, 2007.
[13] Sensalire, Mariam and Ogao, Patrick and Telea, Alexandru. Classifying
Desirable Features of Software Visualization Tools for Corrective
Maintenance. In the Proceedings of the 4th ACM Symposium on Software
Visualization (SoftVis 2008), pages 87-90, 2008.