The Dublo architecture pattern for smooth migration of business information systems: an experience report

While the importance of multi-tier architectures for enterprise information systems is widely accepted and their benefits are well published, the systematic migration from monolithic legacy systems toward multi-tier architectures is known to a much lesser extent. In this paper we present a pattern on how to re-use elements of legacy systems within multi-tier architectures, which also allows for a smooth migration path. We report on experience we made with migrating existing municipal information systems towards a multitier architecture. The experience is generalized by describing the underlying pattern such that it can be re-used for similar architectural migration tasks. The emerged Dublo pattern is based on the partial duplication of business logic among legacy system and newly deployed application server. While this somehow contradicts the separation-of-concerns principle, it offers a high degree of flexibility in the migration process and allows for a smooth transition. Experience with the combination of outdated database technology with modern server-side component and Web services technologies is discussed. In this context, we also report on technology and architecture selection processes.

[1]  Jonathan Adams,et al.  Patterns for e-Business: A Strategy for Reuse , 2001 .

[2]  Rahul Sharma,et al.  J2EE Connector Architecture and Enterprise Application Integration , 2001 .

[3]  Arie van Deursen,et al.  Identifying objects using cluster and concept analysis , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[4]  Linda Northrop,et al.  Enterprise Framework for the Disciplined Evolution of Legacy Systems , 1999 .

[5]  Martin Fowler,et al.  Patterns of Enterprise Application Architecture , 2002 .

[6]  Christian Thilmany .NET Patterns: Architecture, Design, and Process , 2003 .

[7]  John Crupi,et al.  Core J2EE Patterns: Best Practices and Design Strategies , 2001 .

[8]  Erwin Fielt,et al.  Scenarios for the identification of objects in legacy systems , 1997, Proceedings of the Fourth Working Conference on Reverse Engineering.

[9]  Eleni Stroulia,et al.  From legacy to Web through interaction modeling , 2002, International Conference on Software Maintenance, 2002. Proceedings..

[10]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[11]  John K. Ousterhout,et al.  Tcl and the Tk Toolkit , 1994 .

[12]  Alan W. Brown Large Scale Component Based Development , 2000 .

[13]  George Fernandez,et al.  Distributed applications engineering - building new applications and managing legacy applications with distributed technologies , 1998, Practitioner series.

[14]  Craig A. Berry,et al.  J2EE Design Patterns Applied , 2002 .

[15]  Darren Broemmer J2ee Best Practices: Java Design Patterns, Automation, and Performance , 2002 .

[16]  B. F. Castro Buschmann, Frank; Meunier, Regine; Rohnert, Hans; Sommerlad, Peter; Stal, Michael. Pattern-oriented software architecture: a system of patterns, John Wiley & Sons Ltd, 1996 , 1997 .

[17]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[18]  Perdita Stevens,et al.  Systems reengineering patterns , 1998, SIGSOFT '98/FSE-6.

[19]  Wolfgang Emmerich,et al.  Tigra- an architectural style for enterprise application integration , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[20]  Alfred Winter,et al.  Kopplungsstrategien für Anwendungssysteme im Krankenhaus , 2002, Wirtsch..

[21]  Wilhelm Hasselbring,et al.  Federated integration of replicated information within hospitals , 1997, International Journal on Digital Libraries.

[22]  Dennis Shasha,et al.  The dangers of replication and a solution , 1996, SIGMOD '96.

[23]  Troy Bryan Downing Java RMI: Remote Method Invocation , 1998 .

[24]  Marcus A. Rothenberger,et al.  Software reuse strategies and component markets , 2003, CACM.

[25]  Mary Shaw,et al.  Comparing Architectural Design Styles , 1995, IEEE Softw..

[26]  Markus Völter,et al.  Server Component Patterns - component infrastructures illustrated with EJB , 2002, Wiley series in software design patterns.

[27]  David S. Linthicum,et al.  Next Generation Application Integration: From Simple Information to Web Services , 2003 .

[28]  Michael Stonebraker,et al.  Migrating Legacy Systems: Gateways, Interfaces, and the Incremental Approach , 1995 .

[29]  Wilhelm Hasselbring,et al.  Funktionsgetriebene Integration von Legacy-Systemen mit Web-Services , 2004, EAI.

[30]  Wita Wojtkowski Applications Software Programming With Fourth-Generation Languages , 1990 .

[31]  Grady Booch,et al.  Core J2EE Patterns (Core Design Series): Best Practices and Design Strategies , 2003 .

[32]  Floyd Marinescu,et al.  EJB Design Patterns: Advanced Patterns, Processes, and Idioms , 2002 .

[33]  Padmal Vitharana Risks and challenges of component-based software development , 2003, CACM.

[34]  Wilhelm Hasselbring,et al.  Information system integration , 2000, CACM.