Abstract
This paper describes an approach for Grid service component mining in object-oriented legacy systems, applying software clustering, architecture recovery, program slicing and wrapping techniques to decompose a legacy system, analyse the concerned components and integrate them into a Grid environment. The resulting components with core legacy code function in a Grid service framework.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
I. Foster, C. Kesselman. The Grid: Blueprint for a New Computing Infrastructure, 1st ed. Morgan Kaufmann Publishers Inc, San Fransisco, pp. 701, 1999.
I. Foster, C. Kesselman, S. Tuecke. The Anatomy of the Grid: Enabling Scalable Virtual Organisations. International Journal of High Performance Computing Applications, vol. 15, no. 3, pp. 200–222, 2001.
H. Yang, M. Ward. Successful Evolution of Software Systems, Artech House, Boston, USA & London, UK, 2003.
Y. Huang, I. Taylor, D. Walker, R. Davies. Wrapping Legacy Codes for Grid-Based Applications. In Proceedings of the 17th International Parallel and Distributed Processing Symposium (IPDPS’03), Fromce, pp. 139–145, 2003.
C. Szyperski. Component Software: Beyond Object Oriented Programming, Acm Press, Addison Wesley Professional, New York, 1997.
T. Wiggerts. Using Clustering Algorithms in Legacy Systems Remodularization. In Proceedings of the 4th Working Conference on Reverse Engineering (WCRE’97), Netherlands, pp. 33–43, 1997.
R. Schwanke. An Intelligent Tool for Re-engineering Software Modularity. In Proceedings of the 13th International Conference on Software Engineering (ICSE’91), Austin, USA, pp. 83–92, 1991.
R. Koschke, T. Eisenbarth. A Framework for Experimental Evaluation of Clustering Techniques. In Proceedings of the 8th International Workshop on Program Comprehension (IWPC’00), Limerick, Ireland, pp. 201–210, 2000.
A. Deursen, T. Kuipers. Identifying Objects Using Cluster and Concept Analysis. In Proceedings of the 21th International Conference on Software Engineering (ICSE’99), Los Angeles, USA, pp. 246–255, 1999.
A. Yeh, D. Harris, H. Reubenstein. Recovering Abstract Data Type and Object Instances from a Conventional Procedural Language. In Proceedings of the 2nd IEEE Working Conference on Reverse Engineering (WCRE’95), Canada, pp. 227–236, 1995.
V. Tzerpos, R. Holt. MoJo: A Distance Metric for Software Clustering. In Proceedings of the 6th Working Conference on Reverse Engineering (WCRE’99), Atlanta, USA, pp. 187–193, 1999.
C. Romesburg. Cluster Analysis for Researchers, Lulu Press, North Carolina, 1984.
Z. Zhang, H. Yang. Incubating Services in Legacy Systems for Architectural Migration. In Proceedings of the 11th IEEE Asia-Pacific Software Engineering Conference (APSEC’04), Korea, pp. 196–203, 2004.
J. Li, Z. Zhang, H, Yang. A Grid Oriented Approach to Reusing Legacy Code in ICENI Framework. In Proceedings of the 2005 IEEE International Conference on Information Reuse and Integration (IRI’05), USA, pp. 464–469, 2005.
H. Yang, X. Liu, H. Zedan. Abstraction: A Key Notion for Reverse Engineering in A System Re-engineering Approach. Journal of Software Maintenance and Evolution: Research and Practice, vol. 12, no. 5, pp. 197–228, 2000.
B. Moszkowski. Executing Temporal Logic Programs, Cambridge University Press, Cambridge, U.K., 1986.
W. Griswold, D. Notkin. Architectural Tradeoffs for a Meaning-preserving Program Restructuring Tool. IEEE Transactions on Software Engineering. vol. 21, no. 4, pp. 275–287, 1995.
B. Korel. Computation of Dynamic Program Slices for Unstructured Programs. IEEE Transactions on Software Engineering, vol. 23, no. 1, pp. 352–357, 1984.
N. Medvidovic, R. Taylor. A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions on Software Engineering, vol. 26, no. 1, pp. 70–93, 2000.
B. Qiao, H. Yang, W. Chu, B. Xu. Bridging Legacy Systems to Model Driven Architecture. In Proceedings of the 27th IEEE Annual International Computer Software and Application Conference(COMPSAC’03), USA, pp. 304–309, 2003.
F. Tip. A Survey of Program Slicing Techniques. Journal of Programming Languages, vol. 3, no. 3, pp. 121–189, 1995.
D. Kuck, R. Kuhn, D. Padua, B. Leasure, M. Wolfe. Dependence Graphs and Compiler Optimizations. In Proceedings of the 8th ACM Symposium on Principles of Programming Languages, Virginia, pp. 207–218, 1981.
S. Horwitz, T. Reps, D. Binkley. Interprocedural Slicing Using Dependence Graphs. ACM Transactions on Programming Languages & Systems, vol. 12, no. 1, pp. 26–60, 1990.
R. Gordon. Essential JNI: Java Native Interface, 1st ed., Prentice Hall PTR, 1998.
J. Moreira, S. Midkiff, M. Gupta, P. Atrigas, P. Wu, G. Almasi. The NINJA project: Making Java Work for High Performance Computing. Communications of the ACM, vol. 44, no. 10, pp. 102–109, 2001.
M. Hull, P. Nicholl, Y. Bi. Approaches to Component Technologies for Software Reuse of Legacy Systems. Computing and Comtrol Engineering Journal, vol. 12, no. 6, pp. 281–287, 2001.
N. Furmento, A. Mayer, S. McGough, S. Newhouse, T. Field, J. Darlington. ICENI: Optimisation of Component Applications within a Grid Environment. Journal of Parallel Computing, vol. 28, no. 12, pp. 1753–1772, 2002.
N. Furmento, A. Mayer, S. McGough, S. Newhouse, J. Darlington. A Component Framework for HPC Applications. Lecture Notes in Computer Sciences, vol. 2150, pp. 540–548, 2001.
E. Nadhan. Service-oriented Architecture Implementation Challenges, EDS white paper, EDS.COM, 2003.
Author information
Authors and Affiliations
Corresponding author
Additional information
Jian-Zhi Li received his BEng in Electrical and Electronic engineering from the Xi’an University of Technology, Xi’an, China, in 2003. Since 2003, he has been a research student in the Software Evolution and Reengineering Group of the Software Technology Research Laboratory, School of Computing in De Montfort University. His research interests include software evolution, web-based systems and distributed computing.
Zhuo-Peng Zhang received his BSc in Computer Science (1999) and his MSc. on Computer System Architecture (2002) from the Department of Computer Science in Jilin University, China. He belongs to the Software Evolution and Reengineering Group of the Software Technology Research Laboratory, School of Computing in De Montfort University. His research interests include software maintenance, reverse engineering, interests and software reengineering.
Bing Qiao received his BSc and MSc in Computer Science from Northwestern Polytechnical University, Xi’an, China, in 1998 and 2001. He is a research student in the Software Evolution and Reengineering Group of the Software Technology Research Laboratory, School of Computing in De Montfort University. He has published a number of research papers in IEEE sponsored Conferences and contributed to book chapters in the area of Web/Internet development and evolution.
Hong-Ji Yang is a Professor at the Software Technology Research Laboratory, School of Computing, De Montfort University, England and leads the Software Evolution and Reengineering Group. His general research interests include Software Engineering and Pervasive Computing. He served as a Program Co-Chair at IEEE International Conference on Software Maintenance 1999 (ICSM’99) and the Program Chair at IEEE Computer Software and Application Conference 2002 (COMPSAC’02).
Rights and permissions
About this article
Cite this article
Li, JZ., Zhang, ZP., Qiao, B. et al. A component mining approach to incubate Grid services in object-oriented legacy systems. Int J Automat Comput 3, 47–55 (2006). https://doi.org/10.1007/s11633-006-0047-3
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/s11633-006-0047-3