ABSTRACT
While the importance of multi-tier architectures for enterpriseinformation systems is widely accepted and theirbenefits are well published, the systematic migration frommonolithic legacy systems toward multi-tier architectures isknown to a much lesser extent. In this paper we present apattern on how to re-use elements of legacy systems withinmulti-tier architectures, which also allows for a smooth migrationpath. We report on experience we made with migratingexisting municipal information systems towards a multitierarchitecture. The experience is generalized by describingthe underlying pattern such that it can be re-used forsimilar architectural migration tasks. The emerged Dublopattern is based on the partial duplication of businesslogic among legacy system and newly deployed applicationserver. While this somehow contradicts the separation-of-concernsprinciple, it offers a high degree of flexibility inthe migration process and allows for a smooth transition.Experience with the combination of outdated databasetechnology with modern server-side component and webservices technologies is discussed. In this context, we alsoreport on technology and architecture selection processes.
- {1} J. Adams, S. Koushik, G. Vasudeva, and G. Galambos. Patterns for e-business: A Strategy for Reuse. IBM-Press, 2001. Google ScholarDigital Library
- {2} D. Alur, J. Crupi, and D. Malks. Core J2EE Patterns: Best Practices and Design Strategies. Prentice Hall, 2nd edition, 2003. Google ScholarDigital Library
- {3} BEA Systems, http://www.bea.com/products/weblogic/. BEA Weblogic. Retrieved 2003-08-25.Google Scholar
- {4} J.K. Bergey, L.M. Northrop, and D.B. Smith. Enterprise framework for the disciplined evolution of legacy systems. Technical Report CMU/SEI-97-TR-007, Carnegie Mellon University/Software Engineering Institute, Oct. 1997.Google ScholarCross Ref
- {5} C. Berry, J. Carnell, M. Juric, M. Kunnumpurath, N. Nashi, and S. Romanosky. J2EE Design Patterns Applied. Wrox Press, 2002.Google Scholar
- {6} A. Bien. J2EE Patterns. Addison-Wesley, 2002.Google Scholar
- {7} Borland Software Corporation, http://www.borland.com/ jbuilder/. JBuilder. Retrieved 2003-08-25.Google Scholar
- {8} Borland Software Corporation, http://www.borland.com/together/. Together. Retrieved 2003-08-25.Google Scholar
- {9} M. Brodie and M. Stonebraker. Migrating Legacy Systems: Gateways, Interfaces and The Incremental Approach. Morgan Kaufmann, San Francisco, 1995. Google ScholarDigital Library
- {10} D. Broemmer. J2EE Best Practices: Java Design Patterns, Automation, and Performance. Wiley, 2002. Google ScholarDigital Library
- {11} A.W. Brown. Large-Scale Component-Based Development. Prentice Hall, Englewood Cliffs, NJ, USA, 2000. Google ScholarDigital Library
- {12} F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, and M. Stal. Pattern-Oriented Software Architecture - A System of Patterns. Wiley & Sons, New York, NY, USA, 1996. Google ScholarDigital Library
- {13} T. Downing. Java RMI: Remote Method Invocation. Hungry Minds, 1998. Google ScholarDigital Library
- {14} W. Emmerich, E. Ellmer, and H. Fieglein. TIGRA: An architectural style for enterprise application integration. In Proc. 23rd International Conference on Software Engeneering (ICSE-01), pages 567-576, May 2001. Google ScholarDigital Library
- {15} Four J's, http://www.4js.com. Four J's Development Tools. Retrieved 2003-08-25.Google Scholar
- {16} M. Fowler, D. Rice, M. Foemmel, E. Hieatt, R. Mee, and R. Stafford, editors. Patterns of Enterprise Application Architecture . Addison-Wesley, 2002. Google ScholarDigital Library
- {17} E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns -Elements of Reusable Object-Oriented Software. Addison Wesley, Reading, MA, 1995. Google ScholarDigital Library
- {18} J. Gray, P. Helland, P. O'Neil, and D. Shasha. The dangers of replication and a solution. In Proceedings of the 1996 ACM SIGMOD International Conference on Management of Data, pages 173-182. ACM Press, 1996. Google ScholarDigital Library
- {19} W. Hasselbring. Federated integration of replicated information within hospitals. International Journal on Digital Libraries, 1(3):192-208, Nov.1997.Google ScholarDigital Library
- {20} W. Hasselbring. Information system integration. Communications of the ACM, 43(6):33-38, 2000. Google ScholarDigital Library
- {21} IBM, http://www-3.ibm.com/software/data/informix/tools/4gl/. Informix 4GL product family. Retrieved 2003-08-25.Google Scholar
- {22} KBSt, http://www.kbst.bund.de/saga. Standards und Architekturen für eGovernment-Anwendungen (in German). Retrieved 2003-08-25.Google Scholar
- {23} D. Linthicum. Next Generation Application Integration: From Simple Information to Web Services. Addison-Wesley, 2003. Google ScholarDigital Library
- {24} F. Marinescu. EJB Design Patterns: Advanced Patterns, Processes, and Idioms. Wiley, 2002. Google ScholarDigital Library
- {25} Microsoft Corporation, http://www.microsoft.com/com/ tech/activex.asp. ActiveX Controls. Retrieved 2003-08-25.Google Scholar
- {26} Microsoft Corporation, http://www.microsoft.com/net/. Getting startet with .NET. Retrieved 2003-08-25.Google Scholar
- {27} Microsoft Corporation, http://msdn.microsoft.com/vbasic/. Visual Basic. Retrieved 2003-08-25.Google Scholar
- {28} H. Niemann, W. Hasselbring, T. Wendt, A. Winter, and Meierhofer. Kopplungsstrategien für Anwendungssysteme im Krankenhaus (Coupling strategies for application systems in hospitals). Wirtschaftsinformatik, 44(5):425- 434, 2002.Google ScholarCross Ref
- {29} OSCI, http://www.osci.de. Online Services Computer Interface . Retrieved 2003-08-25.Google Scholar
- {30} J. Ousterhout. Tcl and the Tk Toolkit. Addison-Wesley, 1994. Google ScholarDigital Library
- {31} T. Ravichandran and M. Rothenberger. Software reuse strategies and component markets. Commun. ACM, 46(8):109-114, Aug. 2003. Google ScholarDigital Library
- {32} R. Sharma, B. Stearns, and T. Ng. J2EE Connector Architecture and Enterprise Application Integration. Addison-Wesley, 2002. Google ScholarDigital Library
- {33} M. Shaw. Comparing architectural design styles. IEEE Software , 12(6):27-41, Nov.1995. Google ScholarDigital Library
- {34} P. Stevens and R. Pooley. Systems reengineering patterns. In Proceedings of the ACM SIGSOFT 6th International Symposium on the Foundations of Software Engineering (FSE-98), volume 23, 6 of Software Engineering Notes, pages 17-23, New York, Nov. 1998. ACM Press. Google ScholarDigital Library
- {35} E. Stroulia, M. El-Ramly, and P. Sorenson. From legacy to web through interaction modeling. In Proceedings of the International Conference on Software Maintenance (ICSM '02), pages 320-329. IEEE Press, Oct. 2002. Google ScholarDigital Library
- {36} Sun Microsystems, http://java.sun.com/j2ee/. Java 2 Platform, Enterprise Edition (J2EE). Retrieved 2003-08-25.Google Scholar
- {37} Sun Microsystems, http://java.sun.com/j2se/. Java 2 Platform, Standard Edition (J2EE). Retrieved 2003-08-25.Google Scholar
- {38} Sun Microsystems, http://java.sun.com/products/javawebstart/. Java Webstart. Retrieved 2003-08-25.Google Scholar
- {39} Sun Microsystems, http://java.sun.com/blueprints/patterns/. Sun Java Center J2EE Patterns. Retrieved 2003-08-25.Google Scholar
- {40} C. Szyperski. Component Software: Beyond Object-Oriented Programming. Addison-Wesley, second edition edition, 2002. Google ScholarDigital Library
- {41} Tcl Developer Exchange, http://www.tcl.tk/software/plugin/. Tcl/Tk Web Browser Plug-in. Retrieved 2003-08-25.Google Scholar
- {42} T. Teschke, H. Jaekel, S. Krieghoff, M. Langnickel, W. Hasselbring, and R. Reussner. Funktionsgetriebene Integration von Legacy-Systemen mit Web Services (Function-driven integration of legacy systems with web services). In Proc. Workshop Enterprise Application Integration (EAI 2004), pages 19-28. GITO Verlag, Feb. 2004.Google Scholar
- {43} C. Thilmany. NET Patterns: Architecture, Design, and Process . Addison-Wesley, 2003. Google ScholarDigital Library
- {44} A. van Deursen and T. Kuipers. Identifying objects using cluster and concept analysis. In Proceedings of the 1999 International Conference on Software Engineering (ICSE '99), pages 246-255, Los Angeles, USA, May 1999. ACM. Google ScholarDigital Library
- {45} P. Vitharana. Risks and challenges of component-based software development. Commun. ACM, 46(8):67-72, Aug. 2003. Google ScholarDigital Library
- {46} M. Völter, A. Schmid, and E. Wolff. Server Component Patterns: Component Infrastuctures illustrated with EJB. Wiley, 2002. Google ScholarDigital Library
- {47} T. Wiggerts, H. Bosma, and E. Fielt. Scenarios for the identification of objects in legacy systems. In Proceedings of the 4th Working Conference on Reverse Engineering (WCRE '97), pages 24-32, Oct. 1997. Google ScholarDigital Library
- {48} I. Wijegunaratne and G. Fernandez. Distributed Applications Engineering: Building new applications and managing legacy applications with distributed technologies. Springer-Verlag, London, 1998. Google ScholarDigital Library
- {49} W. Wojtkowski and W. Wojtkowski. Applications Software Programming With Fourth-Generation Languages. Wadsworth Publishing, 1990. Google ScholarDigital Library
Index Terms
- The Dublo Architecture Pattern for Smooth Migration of Business Information Systems: An Experience Report
Recommendations
A Survey on Survey of Migration of Legacy Systems
ICIA-16: Proceedings of the International Conference on Informatics and AnalyticsLegacy systems are mission critical complex systems which are hard to maintain owing to shortage of skill sets and monolithic code architecture with tightly coupled tiers, all of which are indication of obsoleteness of the system technology. Thus, they ...
On a Metaprocess for Microservice Migration
SBES '23: Proceedings of the XXXVII Brazilian Symposium on Software EngineeringMicroservice-based architectures have become popular to manage the complexity of many cloud service-oriented systems and comply with availability, maintainability, and scalability requirements. Modernizing legacy systems to adopt microservices is time-...
A parallel migration scheme for fast virtual machine relocation on a cloud cluster
The paper proposes a method for parallelizing migrations to reduce the time required for virtual machine (VM) relocation. During VM relocation, VMs need to wait for their migrations in a chain due to the limited resource of the physical machines (PMs), ...
Comments