Abstract
One of the main factors driving object-oriented software development for information systems is the requirement for systems to be tolerant to change. To address this issue in designing systems, this paper proposes a pattern-based, object-oriented, description-driven system (DDS) architecture as an extension to the standard UML four-layer meta-model. A DDS architecture is proposed in which aspects of both static and dynamic systems behavior can be captured via descriptive models and meta-models. The proposed architecture embodies four main elements – firstly, the adoption of a multi-layered meta-modeling architecture and reflective meta-level architecture, secondly the identification of four data modeling relationships that can be made explicit such that they can be modified dynamically, thirdly the identification of five design patterns which have emerged from practice and have proved essential in providing reusable building blocks for data management, and fourthly the encoding of the structural properties of the five design patterns by means of one fundamental pattern, the Graph pattern. A practical example of this philosophy, the CRISTAL project, is used to demonstrate the use of description-driven data objects to handle system evolution.
Similar content being viewed by others
References
Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., Lorensen, W.: Object-Oriented Modeling & Design. Prentice Hall 1991
The Unified Modeling Language (UML) Specification. URL http://www.omg.org/technology/uml/
pUML Initial Submission to OMG’s RFP for UML 2.0 Infrastructure. URL http://www.cs.york.ac.uk/puml/
Clark, T., Evans, A., Kent, S.: “Engineering Modelling Languages: A Precise Meta-Modelling Approach”. Fundamental Approaches to Software Engineering, 5th International Conference, FASE 2002. Grenoble, France April 2002
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: “Design Patterns: Elements of Reusable Object-Oriented Software”, Addison-Wesley 1995
Klas, W., Schrefl, M.: “Metaclasses and their Application. Data Model Tailoring and Database Integration”. Lecture Notes in Computer Science, vol. 943. Springer 1995
Crawley, S., Davis, S., Indulska, J., McBride, S., Raymond, K.: “Meta Information Management”. Proceedings of the Second IFIP International Conference on Formal Methods for Open Object-based Distributed Systems. Canterbury, United Kingdom July 1997
Kovacs, Z.: “The Integration of Product Data with Workflow Management Systems”. PhD Thesis, University of West of England, Bristol, England April 1999
Blaha, M., Premerlani, W.: “Object-Oriented Modeling and Design for Database Applications”. Prentice Hall 1998
Kiczales, G.: “Meta-object Protocols: Why We Want Them and What Else Can They Do?”. Chapter in Object-Oriented Programming: The CLOS Perspective, MIT Press 1993, pp. 101–118
Klas, W., Frankenhauser, P., Muth, P., Rakow. T.C., Neuhold, E.J.: “Database Integration using the Open Object-Oriented Database System VODAK”. In: Bukhres, O., Elmagarmid, A. (eds.) Object Oriented Multidatabase Systems: A Solution for Advanced Applications, Chapter 14. Prentice Hall 1995
Paton, N.: “ADAM: An Object-Oriented Database System Implemented in Prolog”. In: Williams, M.H. (ed.) Proceedings of the 7th British National Conference On Databases (BNCOD). Cambridge University Press 1989
The Object Model (OM) and the Object Model System (OMS). URL http://www.globis.ethz.ch/research/oms/
Kovacs, Z.: “The Integration of Product Data with Workflow Management Systems”. PhD Thesis, University of West of England, Bristol, England April 1999
McClatchey, R., Kovacs, Z., Estrella, F., Le Goff, J.-M., Chevenier, G., Baker, N., Lieunard, S., Murray, S., Le Flour, T, Bazan, A.: “The Integration of Product Data and Workflow Management Systems in a Large Scale Engineering Database Application”. Proceedings of the 2nd IEEE International Database Engineering and Applications Symposium. Cardiff, United Kingdom July 1998
Estrella F., Kovacs, Z., Le Goff, J.-M., McClatchey, R., Zsenei, M.: “Handling Evolving Data Through the Use of a Description Driven Systems Architecture”. Lecture Notes in Computer Science, vol. 1727. ISBN 3-540-66653-2 Springer-Verlag 1999, pp. 1–11
Estrella F., Kovacs, Z., Le Goff, J.-M., McClatchey, R.: “Meta-objects as the Basis for System Evolution”. Proc of the Web Age Information Management (WAIM’2001) conference. Beijing China June 2001
Demers, F., Malenfant, J.: “Reflection in Logic, Functional and Object-Oriented Programming: A Short Comparative Study”. Proceedings of the International Joint Conferences on Artificial Intelligence (IJCAI), Workshop on Reflection and Meta-level Architectures and their Applications in AI. Montreal August 1995
Woolf, B., Johnson, R.: “The Type Object Pattern”. In: Pattern Languages of Program Design 3, Addison-Wesley (1997). Originally presented at the Third Conference on Pattern Languages of Programs (PLoP) 1996
Estrella, F.: “Objects, Patterns and Descriptions in Data Management”. PhD Thesis, University of the West of England, Bristol, England December 2000
Blaha, M.: “Aggregation of Parts of Parts of Parts”. Journal of Object-Oriented Programming (JOOP) September 1993
Odell, J.: “Six Kinds of Compositions”. Journal of Object-Oriented Programming (JOOP) January 1994
Smith, J., Smith, D.: “Database Abstractions: Aggregation and Generalization”. ACM Transactions on Database Systems June 1997
Blaha, M., Premerlani, W.: “Object-Oriented Modeling and Design for Database Applica-tions”. Prentice Hall 1998
Bushmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: “Pattern-Oriented Software Architecture: A System of Patterns”. John Wiley & Sons 1996
The Object Management Group (OMG). URLhttp://www.omg.org
The European Centre for Nuclear Research (CERN). URL http://cern.web.cern.ch/CERN
CMS Technical Proposal. The CMS Collaboration (January 1995). Available from ftp://cmsdoc.cern.ch/TPref/TP.html
The Meta-Object Facility (MOF) Specification. URLhttp://www.dstc.edu.au/Products/CORBA/MOF/
Koch, C., Kovacs, Z., Le Goff, J.-M., McClatchey, R., Petta, P., Solomonides, A.: “Explicit Modeling of the Semantics of Large Multi-layered Object-Oriented Databases”. Lecture Notes in Computer Science, vol. 1920. Springer-Verlag 2000, pp 52–65
Foote, B., Yoder, J.: “Meta-data and Active Object-Models”. Proc. of the Int. Conference on Pattern Languages Of Programs. Monticello, Illinois, USA August 1998
Yoder, J., Balaguer, F., Johnson, R.: “Architecture and Design of Adaptive Object-Models”. Proc of OOPSLA 2001, Intriguing Technology Talk. Tampa, Florida October 2001
Yoder, J.W., Johnson, R.: “The Adaptive Object Model Architectural Style”. Published in The Proceeding of The Working IEEE/IFIP Conference on Software Architecture 2002 (WICSA3 ’02) at the World Computer Congress in Montreal 2002 August 2002
Andrade, L.F., Fiadeiro, J.L.: “Coordination Technologies for Managing Information System Evolution”. CAiSE 2001, pp. 374–387
Andrade, L.F., Fiadeiro, J.L., Gouveia, J., Lopes, A., Wermeldinger, M.: Patterns for Coordination. COORDINATION 2000, pp. 317–322
Andrade, L.F., Fiadeiro, J.L., Gouveia, J., Lopes, A., Wermeldinger, M.: Coordination Patterns for Component-Based Systems. SBLP 2001 Brazilian Symposium on Programming Languages (invited talk)
OMG Publications: “Model Driven Architectures – The Architecture of Choice for a Changing World”.See http://www.omg.org/mda/index.htm
Reference Model for Open Distributed Processing RM-ODP. See http://www.dstc.edu.au/Research/Projects/ODP/ref_model.html
Common Warehouse Metamodel & Meta-Object Facility. See http://www.omg.org/technology/cwm/
Author information
Authors and Affiliations
Corresponding authors
Rights and permissions
About this article
Cite this article
Estrella , F., Kovacs , Z., Le Goff , JM. et al. Pattern reification as the basis for description-driven systems. Softw Syst Model 2, 108–119 (2003). https://doi.org/10.1007/s10270-003-0023-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-003-0023-0