Skip to main content
Log in

Model-driven component adaptation in the context of Web Engineering

  • Special Section Article
  • Published:
European Journal of Information Systems

Abstract

Currently, Web-based applications are no longer monolithic and isolated systems but, rather, distributed applications that need to interoperate with third-party systems, such as external Web services, LDAP repositories or legacy applications. When one component provides a service that the Web application requires, it is often not possible to bind the two systems together if they were not programmed to have compatible collaboration specifications. Modeling the adaptation between a Web application and external assets becomes therefore an essential issue in any realistic model-driven development scenario. However, most of the existing Web Engineering proposals do not take this issue into account, or they simply address it at the implementation level (in a platform-specific way). In this work, we discuss the problems involved in dealing with component adaptation within the context of Model-Driven Web Engineering and show how design patterns can help addressing it. We first identify the major interoperability problems that can happen when integrating third-party application or legacy systems into our Web systems, and then propose the mechanisms that need to be put in place at the design level to generate the appropriate specification of adapters that compensate for the possible mismatches and differences. We base our proposal on well-known design patterns as they are established solutions to recurring problems, and the generation of code from them is normally straightforward.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8

Similar content being viewed by others

References

  • Bastide R, SY O and Palanque P (1999) Formal specification and prototyping of CORBA systems. In Proceedings of the 13th European Conference on Object-Oriented Programming ECOOP'99. Lecture Notes in Computer Science No. 1628. Lisbon, Portugal Springer-Verlag, Heildelberg.

    Google Scholar 

  • Bracciali A, Brogi A and Canal C (2005) A formal approach to component adaptation. Journal of Systems and Software, Special Issue on Automated Component-Based Software Engineering 74, 45–54.

    Google Scholar 

  • Brambilla M, Ceri S, Comai S, Fraternali P and Manolescu I (2003) Model-driven development of Web services and hypertext applications. In Proceedings of the Systemics, Cybernetics and Informatics Multiconference (SCI'03). Orlando, Florida.

    Google Scholar 

  • Canal C, Fuentes L, Pimentel E, Troya JM and Vallecillo A (2003) Adding roles to CORBA objects. IEEE Transactions on Software Engineering 29 (3), 242–260.

    Article  Google Scholar 

  • Cho IH, Mcgregor JD and Krause L (1998) A protocol based approach to specifying interoperability between objects, In Proceedings of the 26th International Conference on Technology of Object-Oriented Languages and Systems (TOOLS'98). IEEE Computer Society, Washington, USA.

    Google Scholar 

  • De Castro V, Marcos E and LópezSanz M (2006) A model driven method for service composition modelling: a case study. International Journal of Web Engineering and Technology 2 (4), 335–353.

    Article  Google Scholar 

  • Dolog P (2004) Model-driven navigation design for semantic Web applications with the UML-guide. In Engineering Advanced Web Applications: Proceedings of Workshops in connection with the Fourth International Conference on Web Engineering (ICWE 2004). Rinton Press, Munich, Germany.

    Google Scholar 

  • Gamma E, Helm R, Johnson R and Vlissides J (1995) Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading, Massachusetts.

    Google Scholar 

  • Lea D and Marlowe J (1995) Interface – based protocol specification of open systems using PSL. In Proceedings of the Ninth European Conference on Object-Oriented Programming (ECOOP'95). Lecture Notes in Computer Science No. 952 Springer-Verlag, London, UK.

    Google Scholar 

  • Linthicum DS (2000) Enterprise Application Integration. Addison-Wesley Longman Ltd., Essex, UK.

    Google Scholar 

  • Mattsson M and Bosch J (1997) Framework composition: problems, causes and solutions. In Proceedings of the TOOLS-23: Technology of Object-Oriented Languages and Systems (TOOLS '97). IEEE Computer Society, Santa Barbara, CA.

    Google Scholar 

  • McKegney R and Shepard T (2003) Techniques for embedding executable specifications in software component interfaces. In Proceedings of the Second International Conference on COTS-Based Software Systems (ICCBSS'03). Lecture Notes in Computer Science No. 2580 Springer-Verlag, London, UK.

    Google Scholar 

  • Mellor SJ and Balcer M (2002) Executable UML: A Foundation for Model-Driven Architectures. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.

    Google Scholar 

  • Moreno N and Vallecillo A (2005a) A modelbased approach for integrating third party systems with Web applications. In Proceedings of the Fifth International Conference on Web Engineering (ICWE'05). Lecture Notes in Computer Science No. 3579 Springer-Verlag, Sydney, Australia.

    Google Scholar 

  • Moreno N and Vallecillo A (2005b) Incorporating cooperative portlets in Web application development. In Proceedings of the First Workshop on Model-driven Web Engineering (MDWE 2005). Sydney, Australia.

    Google Scholar 

  • Moreno N and Vallecillo A (2005c) Modeling interactions between Web applications and third party systems. In Proceedings of the Fifth International Workshop on Web Oriented Software Technologies (IWWOST'05). Porto, Portugal.

    Google Scholar 

  • Moreno N and Vallecillo A (2007) Towards Interoperable Web Engineering Methods. Submitted for publication.

  • Muller PA, Studer P, Fondement F and Bézivin J (2005) Platform independent Web application modeling and development with Netsilon. Software and System Modeling 4 (4), 424–442.

    Article  Google Scholar 

  • OMG (2001) Model Driven Architecture. A Technical Perspective. Object Management Group. OMG document ab/2001-01-01.

  • Raistrick C, Francis P, Wright J, Carter C and Wilkie I (2006) Model Driven Architecture with eXecutable UML. Cambridge University Press, New York, USA.

    Google Scholar 

  • Reck C and Koenig-Ries B (1997) An architecture for transparent access to semantically heterogeneous information sources. In Proceedings of the First International Workshop on Cooperative Information Agents, Kiel, Germany.

  • Romero JR, Rivera JE, Durán F and Vallecillo A (2007) Formal and tool support for model driven engineering with Maude. Journal of Object Technology (JOT) 6 (9), http://www.jot.fm/.

  • Schmidt HW and Reussner RH (2002) Generating adapters for concurrent component protocol synchronisation, In Proceedings of the IFIP TC6/WG6.1, Fifth International Conference on Formal Methods for Open Object-Based Distributed Systems V (FMOODS'02). Kluwer, B.V., Deventer, The Netherlands.

    Google Scholar 

  • Shlaer S and Mellor SJ (1992) Object Lifecycles: Modelling the World in States. Yourdon Press, Englewood Cliffs, New Jersey, USA.

    Google Scholar 

  • Simons AJH (2002) The theory of classification, object types and subtyping. Journal of Object Technology 1 (5), 27–35.

    Article  Google Scholar 

  • Spitznagel B and Garlan D (2003) A compositional formalization of connector wrappers. In Proceedings of the 25th International Conference on Software Engineering (ICSE'03). IEEE Computer Society, Washington, USA.

    Google Scholar 

  • Steel J and JÉzÉquel JM (2005) Model typing for improving reuse in model-driven engineering. In Proceedings of the 8th International Conference, MoDELS 2005. Lecture Notes in Computer Science No. 3713 (BRIAND L and WILLIAMS C, Eds) Springer-Verlag, Montego Bay, Jamaica.

    Google Scholar 

  • Thiran P and Hainaut JL (2001) Wrapper development for legacy data reuse. In Proceedings of the Eighth Working Conference on Reverse Engineering (WCRE'01). IEEE Computer Society, Washington, USA.

    Google Scholar 

  • Wegner P (1996) Interoperability. ACM Computer Survey 28 (1), 285–287.

    Article  Google Scholar 

  • Yellin D and Strom R (1997) Protocol specification and component adaptor. ACM Transactions on Programming Languages and Systems 19 (2), 292–333.

    Article  Google Scholar 

  • Zaremski AM and Wing JM (1995) Signature matching: a tool for using software libraries. ACM Transactions on Software Engineering and Methodology 4 (2), 146–170.

    Article  Google Scholar 

  • Zaremski AM and Wing JM (1997) Specification matching of software components. ACM Transactions on Software Engineering and Methodology 6 (4), 333–369.

    Article  Google Scholar 

Download references

Acknowledgements

The authors like to thank the anonymous referees for their insightful and constructive comments and suggestions. Although the views in this paper are the authors' sole responsibility, they could not have been formulated without many hours of detailed discussions with MDWE experts. In particular, we like to thank Nora Koch and Piero Fraternali for sharing their expertise and knowledge with us. This work has been supported by Spanish Research Project TIN2005-09405-02-01.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nathalie Moreno Vergara.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Vergara, N., Linero, J. & Moreno, A. Model-driven component adaptation in the context of Web Engineering. Eur J Inf Syst 16, 448–459 (2007). https://doi.org/10.1057/palgrave.ejis.3000691

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1057/palgrave.ejis.3000691

Keywords

Navigation