Chia-Chu Chiang This email address is being protected from spambots. You need JavaScript enabled to view it.1

1Department of Computer Science, University of Arkansas at Little Rock, 2801 South University Avenue, Little Rock, Arkansas 72204-1099, U.S.A.


Received: March 1, 2006
Accepted: February 5, 2007
Publication Date: March 1, 2008

Download Citation: ||  


As a computing environment evolves, heterogeneous and distributed computing environments are often unavoidable. Companies are willing to retain their legacy systems and also acquire new types of systems for their daily business operations. Rewrite, facelift and convert are three common ways to address legacy integration for use in heterogeneous and distributed computing environments. Rewrite and convert may not be suitable for companies to reengineer their legacy systems because the companies have made significant investments in the systems. They are more willing to reduce the effort of their programming staff and minimize unnecessary rework. Therefore, it is essential to provide a cost effective approach to integrating legacy systems. In this paper, we present an extended facelift approach to integrating an industry mainframe-based software reengineering legacy system in a distributed heterogeneous computing environment. An experience of implementing the approach and lessons learned are also discussed.

Keywords: CORBA, Heterogeneous Software, Legacy Integration, Reengineering, Wrapper


  1. [1] Szyperski, C., Component Software – Beyond ObjectOriented Programming, Reading, Masachusetts, Addison-Wesley (1998).
  2. [2] Taylor, D., Business Engineering with Object Technology, Wiley, New York, U.S.A. (1995).
  3. [3] Canfora, G., Cimitile, A., Lucia, A. De and Lucca, G. Di, “Decomposing Legacy Programs: A First Step towards Migrating to Client-Server Platforms,” Proceedings of the 6th International Workshop on Program Comprehension, IEEE Computer Society Press, pp. 136144 (1998).
  4. [4] Cimitile, A., DeCarlini, U. and Lucia, A. De, “Incremental Migration Strategies: Data Flow Analysis for Wrapping,” Proceedings of the 5th Working Conference on Reverse Engineering, IEEE Computer Society Press, pp. 5968 (1998).
  5. [5] Lucia, A. De, Lucca, G. Di, Fasolino, A., Guerra, P. and Petruzzelli, S., “Migrating Legacy Systems towards Object-Oriented Platforms,” Proceedings of International Conference on Software Maintenance, IEEE Computer Society Press, pp. 122129 (1997).
  6. [6] Dietrich, W., “Saving a Legacy with Objects,” Proceedings on Object-Oriented Programming Systems, Languages and Applications, pp. 7783 (1989).
  7. [7] Mowbray, T. and Zahavi, R., The Essential CORBA: Systems Integration Using Distributed Objects, Wiley, New York, U.S.A. (1995).
  8. [8] BEA, The Advantage of Unified Application and Integration Infrastructure, BEA White Paper, BEA Systems (2003).
  9. [9] Reed, B., Market Demands Drive XML Middleware, Technical Report, Technical Enterprise Inc. (2003).
  10. [10] Sneed, H., “Encapsulating Legacy Systems for Use in Client/Server Systems,” Proceedings of the 3rd Working Conference on Reverse Engineering, IEEE Computer Society Press, pp. 104119 (1996).
  11. [11] Sneed, H., “Encapsulation of Legacy Software: a Technique for Reusing Legacy Software Components,” Annals of Software Engineering, Vol. 9, pp. 293313 (2000).
  12. [12] Sneed, H., “Using XML to Integrate Existing Software Systems into the Web,” Proceedings of 26th International Computer Software and Applications Conference, IEEE Computer Society Press, pp. 167172 (2002).
  13. [13] Emmerich, W., “Software Engineering and Middleware: a Roadmap,” Proceedings of the conference on the Future of Software Engineering, pp. 117129 (2000).
  14. [14] Juric, M., Rozman, I. and Hericko, M., “Performance Comparison of CORBA and RMI,” Information and Software Technology, Vol. 42, pp. 915933 (2000).
  15. [15] Pritchard, J., COM and CORBA – Side by Side, Reading, Masachusetts, Addison-Wesley (1999).
  16. [16] Jacobsen, H.-A. and Kramer, B., “A Design Pattern Based Approach to Generating Synchronization Adaptors from Annotated IDL,” Proceedings of the Automated Software Engineering Conference, IEEE Computer Society Press, pp. 6372 (1998).
  17. [17] Gannod, G., Mudiam, S. and Lindquist, T., “An Architecture-Based Approach for Synthesizing and Integrating Adapters for Legacy Software,” Proceedings of the 7th Working Conference on Reverse Engineering, IEEE Computer Society Press, pp. 128137 (2000).
  18. [18] Gamma, E., Helm, R., Johnson, R. and Vlissides, J., Design Patterns: Elements of Reusable Object-Oriented Software, Reading, Massachusetts, Addison-Wesley (1995).
  19. [19] Arulanthu, A., O’Ryan, C., Schmidt, D. and Kircher, M., “The Design and Performance of a Scalable ORB Architecture for CORBA Asynchronous Messaging,” Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms, pp. 208230 (2000).
  20. [20] Brunsch, D., O’Ryan, C. and Schmidt, D., “Designing an Efficient and Scalable Server-Side Asynchrony Model for CORBA,” ACM SIGPLAN Notices, Vol. 36, pp. 223229 (2001).
  21. [21] Chiang, C.-C., “Leveraging Software Reengineering Systems for Heterogeneous Distributed Computing Environments,” Proceedings of the International Conference on Software Maintenance 2000 in Silicon Valley, IEEE Computer Society Press, pp. 254261 (2000).
  22. [22] Bass, L., Clements, P. and Kazman, R., Software Architecture in Practice, Reading, Massachusetts, Addison-Wesley (1998).
  23. [23] Chiang, C.-C., “Wrapping Legacy Systems for Use in Heterogeneous Computing Environments,” Information and Software Technology, Vol. 4, pp. 497507 (2001).
  24. [24] Coplien, J., Advanced C++: Programming Styles and Idioms, Reading, Massachusetts, Addison-Wesley (1992).