Software Architecture Recovery

The advent of modern technology shadows its impetus repercussions on successful Legacy systems making them obsolete with time. These systems have evolved the large organizations in major problems in terms of new business requirements, response time, financial depreciation and maintenance. Major difficulty is due to constant system evolution and incomplete, inconsistent and obsolete documents which a legacy system tends to have. The myriad dimensions of these systems can only be explored by incorporating reverse engineering, in this context, is the best method to extract useful artifacts and by exploring these artifacts for reengineering existing legacy systems to meet new requirements of organizations. A case study is conducted on six different type of software systems having source code in different programming languages using the architectural recovery framework.





References:
[1] Bass, Clements, Kazman, Software Architecture in Practice, 2nd ed.
Addison-Wesley, 2003.
[2] Gall H., Jazayeri M, Klosch R, Lugmayr W., Trausmuth G.,
"Architecture Recovery in ARES", in Proc. of the 2nd International
Software Architecture Workshop (ISAW-2), San Francisco, 1996.
[3] Nadim Asif, "Architecture Recovery", In the Proc. of International
Conference of Information and Knowledge Engineering (IKE-02), las
Vegas, 2002.
[4] David Garlin, "Research directions in software architecture" ACM
Computing surveys, Vol. 27. No. 2, 1995. pp. 257 - 261.
[5] O-Brien, L., "Dali: A Software Architecture Reconstruction
Workbench", Software Engineering Institute, Carnegie Mellon
University, May 2001.
[6] P.J. Finnigan, R. Holt, I. Kalas, S. Kerr, K. Kontogiannis, et al. The
software bookshelf. IBM Systems Journal, 36(4):564-593, November
1997.
[7] Imagix4D,UR=http://www.imagix.comImagix Corp.(Accessed 10th march, 2007).
[8] Bauhaus group, "Tour de Bauhaus", http://www.Bauhausstuttgart.
de/demo/index.html, version 4.7.2, December 2003.
[9] Wolfgang Eixelsberger ReneKlosch, "A Framework for Software Architecture Recovery", http://www.sei.cmu.edu/productlines/splc/las_navas/14eixelsberger.pdf. (Accessed on March, 2007).
[10] Nadim Asif, Mark Dixon, Janet Finlay, George Coxhead,"Recovering
the Design artifacts", In Proc. of International Conference of
Information and Knowledge Engineering (IKE-02), Las Vegas, 2002.
[11] Burnstein and K. Roberson, "Automated Chunking to support program
comprehension", in the Proceeding of IWPC- 97, Michigan, 1997, pp.
40-49 .
[12] K. Erdos, H.M Sneed, "Partial Comprehension of Complex Programs" I
in Proc. of 6th International Workshop on Program Comprehension,
Ischia, Italy, 1998.
[13] Jahnke J.H, Walenstein A., "Reverse Engineering tools as media for
Imperfect Knowledge" in Proc. of Working conference on Reverse
Engineering (WCRE00),Queensland, Australia, 2000.
[14] R.Keller, R.Schauer, S.Robitaille, P.Page, "Pattern Based Reverse-
Engineering of Design Components". In Proc. 21st International
Conference on Software Engineering, 1999.
[15] Jianjun Zhao, "Slicing Concurrent Java Programs", in Proc. of IEEE -
7th International Workshop on Program Comprehension, 1999, pp. 126-
133.
[16] Gannod G.C, Cheng B.H.C, "As Formal Approach for Reverse
Engineering," in Proc. of IEEE Proceedings of Working Conference on
Reverse Engineering, 1999.
[17] A. Von MayrHauser and A.M. Vans, "Program Comprehension during
Software Maintenance and Evolution", IEEE Computer, Vol. 28. pp 44-
55, August 1995.
[18] J.M. DeBaud, B. Moopen, S. Rugaber, "Domain Analysis and Reverse
Engineering," http://www.cc.gatech.edu / reverse/papers.html (accessed on March, 2007)
[19] Kamran Sartipi "Software architecture recovery based on pattern
matching", PhD Dissertation, University of Waterloo Canada, 2002.
[20] Hongji Yang, Software evolution with UML and XML Idea Group
Publishing, 2005, page 58, 2004.
[21] Onaiza Maqbool, "Architecture recovery of legacy systems", PhD thesis,
univerisity of lahore pakistan, September 2006.
[22] Rainer Koschke, Gerardo Canfora, Jörg Czeranski, "Revisiting the ΔIC
approach to component recovery", Science of Computer Programming,
Volume 60, Issue 2 (ISSN:0167-6423 ), Pages: 171 - 188 , April 2006.
[23] Rainer Koschke, Gerardo Canfora, Jörg Czeranski, "Revisiting the ΔIC
approach to component recovery", Science of Computer Programming,
Volume 60, Issue 2 (ISSN:0167-6423 ), Pages: 171 - 188 , (April 2006).
[24] Rigi,URL=http://www.rigi.csc.univ.ca/rigi/rigiindex.htm .l (Accessed 5th march, 2007).
[25] Nadim Asif , Reverse Engineering Methdology to Recover the Design
Artifacts: A Case study, In Proceedings of International Conference of
Software Engineering Research and Practices (SERP-03), 23rd-26th
June 2003, Las Vegas, USA, CSREA Press, pp.932-938.
[26] Nadim Asif, Recover the Use Case Models, In proceedings of
International Conference of Software Engineering research and Practice
(SERP05), 27th-30th June, 2005 Las Vegas, USA, CSREA Press.
[27] http://www.gazi.edu.tr/tacacs/ (Accessed 10th June 2007).