Reusable Architectural Decision Model for Model and Metadata Repositories

Models are gaining importance in software development, for instance in the MDD field, as well as in other disciplines such as biology and physics. Hence, tool support is needed to manage these models and metadata about the models. Model repositories support this trend by managing these model artifacts. While setting up model and metadata repositories, architects have to make several fundamental design decisions and balance various forces. In this paper we describe reusable knowledge in form of reusable architectural decisions for IT-architects in setting-up, planning, and developing model and metadata repositories, as well as the main decision drivers. Our decisions are documented in a reusable architectural decision model that can be instantiated for a concrete system. It also supports a lightweight approach to architecture documentation. A case study illustrates the decisions made when setting up our own data access object model repository by walking through the reusable architectural decision model.

[1]  Jochen Ludewig,et al.  Models in software engineering – an introduction , 2003, Software and Systems Modeling.

[2]  Jack Greenfield,et al.  Software factories: assembling applications with patterns, models, frameworks and tools , 2004, OOPSLA '03.

[3]  Andreas Speck,et al.  XTC -- The XML Transformation Coordinator for XML Document Transformation Technologies , 2006, 17th International Workshop on Database and Expert Systems Applications (DEXA'06).

[4]  Frank Leymann,et al.  Combining Pattern Languages and Reusable Architectural Decision Models into a Comprehensive and Comprehensible Design Method , 2008, Seventh Working IEEE/IFIP Conference on Software Architecture (WICSA 2008).

[5]  Erki Eessaar Using metamodeling in order to evaluate data models , 2007 .

[6]  Daniela Florescu,et al.  Storing and Querying XML Data using an RDMBS , 1999, IEEE Data Eng. Bull..

[7]  Philippe Kruchten,et al.  Building Up and Reasoning About Architectural Knowledge , 2006, QoSA.

[8]  Vishu Krishnamurthy,et al.  Performance Challenges in Object-Relational DBMSs , 1999, IEEE Data Eng. Bull..

[9]  Volker Gruhn,et al.  Model-Driven Software Development , 2005 .

[10]  Clemens A. Szyperski,et al.  Software Architectures, Components, and Applications, Third International Conference on Quality of Software Architectures, QoSA 2007, Medford, MA, USA, July 11-23, 2007, Revised Selected Papers , 2008, QoSA.

[11]  Manuel C. Peitsch,et al.  SWISS-MODEL: an automated protein homology-modeling server , 2003, Nucleic Acids Res..

[12]  Schahram Dustdar,et al.  View-based and Model-driven Approach for Reducing the Development Complexity in Process-Driven SOA , 2007, BPSC.

[13]  Jan Bosch,et al.  Software Architecture as a Set of Architectural Design Decisions , 2005, 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05).

[14]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .

[15]  Silvana Castano,et al.  A disciplined approach for the integration of heterogeneous XML datasources , 2002, Proceedings. 13th International Workshop on Database and Expert Systems Applications.

[16]  Philip A. Bernstein Repositories and object oriented databases , 1998, SGMD.

[17]  Uwe Zdun,et al.  Using Patterns to Capture Architectural Decisions , 2007, IEEE Software.

[18]  T. Reiter,et al.  Towards a semantic infrastructure supporting model-based tool integration , 2006, GaMMa '06.

[19]  G. S. V. Radha Krishna Rao,et al.  Query Optimization Techniques for XML Databases , 2008 .

[20]  Roberto Riggio,et al.  Interoperability in Meta-environments: An XMI-Based Approach , 2005, CAiSE.

[21]  Marie-Pierre Gervais,et al.  Supporting transparent model update in distributed CASE tool integration , 2006, SAC '06.

[22]  Shiyong Lu,et al.  Mapping XML Data to Relational Data: A DOM-Based Approach , 2010, ArXiv.

[23]  Robert B. France,et al.  Repository for Model Driven Development (ReMoDD) , 2006, 2012 34th International Conference on Software Engineering (ICSE).

[24]  Ralf-Detlef Kutsche,et al.  Model&Metamodel, Metadata and Document Repository for Software and Data Integration , 2008, MoDELS.

[25]  Peter J. Hunter,et al.  The CellML Model Repository , 2008, Bioinform..

[26]  Umeshwar Dayal,et al.  An Overview of Repository Technology , 1994, VLDB.

[27]  Schahram Dustdar,et al.  Model-Driven Integration and Management of Data Access Objects in Process-Driven SOAs , 2008, ServiceWave.

[28]  Frank Leymann,et al.  Reusable Architectural Decision Models for Enterprise Application Development , 2007, QoSA.

[29]  Latifur Khan,et al.  A performance evaluation of storing XML data in relational database management systems , 2001, WIDM '01.

[30]  Markus Völter,et al.  Model-Driven Software Development: Technology, Engineering, Management , 2006 .

[31]  Richi Nayak,et al.  Automatic integration of Heterogenous XML-schemas , 2004, iiWAS.

[32]  Jeff Tyree,et al.  Architecture decisions: demystifying architecture , 2005, IEEE Software.

[33]  Kevin Lano,et al.  Slicing of UML models using model transformations , 2010, MODELS'10.

[34]  Richard N. Taylor,et al.  Software Design and Architecture The once and future focus of software engineering , 2007, Future of Software Engineering (FOSE '07).

[35]  Masoud Rahgozar,et al.  Approaches and Schemes for Storing DTD- Independent XML Data in Relational Databases , 2007 .