UCSCBaskin School of Engineering  
General Information Alumni & Vistors Events, News & Organizations Degrees & Departments Research Classes Admissions & Advising People & Jobs Administration

BAMBOO: Automatic Generation of SCM Systems


Welcome
About This Project
News & Status
Containment Modeling Framework (CMF)
Semantic Modeling Framework (SMF)
Rule Engine Technologies
Automatic Code Generation
Related Papers & Documents
Downloads
Credits & Contact

 Last Update: 12/09/2004
 

 

Containment Modeling Framework (CMF) Overview

Containment Modeling Framework (CMF) is a framework to construct data models and automatically generate the repository layer for SCM systems. A containment model is the repository schema definition for a particular SCM system. The actual data stored in the repository is an instance of the containment model for that system.

CMF is a specialized form of E-R modeling. It has two basic modeling primitives: entities and relationships:

Entities represent data abstractions and relationships describe connections and constraints between entities. Entities have two basic types: atom and container. Atoms cannot contain other entities and they often represent things like file content, attributes, or metadata items like author, last modified time, etc. Containers are used to form containment structures consisting of atoms or other containers.

Relationships can be either inclusive or referential. An inclusive relationship means if the container gets deleted, the containees are removed too; but for a referential relationship, the container only stores pointers to the containees and containees don't get removed when the container is deleted.

Entities and relationships can have attributes like ordering and multiplicity. For details, please refer to Uniform Comparison of Configuration Management Data Models.

CMF Graphical Modeling Language

CMF origianlly comes with a graphical modeling language. We show the notataions in the following figures and give an example of Personal Information Environment (PIE) described using the graphical modeling language.

PIE graphical containment model

 

CMF Textual Modeling Language

In order for computer programs to process graphical models of CM systems, we invented two XML schema files (graphical structure is shown below) scm.xds and repos.xsd to translate graphical models into textual models. One is to describe CM model, its entities, relationships and properties; the other is for repository description, its logical and physical data types.

XML Schema for Model Description

 

XML Schema for Repository Description

 

The following are the two XML containment model files for PIE: pie.xml is the containmnet model description file; repos_pie.xml is the repository description file. Some entity and relationship properties are explained as the following:

Entities have the following properties:

  • Entity Type: either Container or Atom
  • Container Type: Generic, And or Xor
  • Total Containees: total number of containees that can belong to a container
  • Total Containers: total number of containers one entity belongs to
  • Cycles: whether a container can contain itself
  • Ordering: whether there is ordering for containees of one container

Relationships have the following properties:

  • Containment Type: Referential or Inclusive
  • Reference Location: stored on container, on containee or both
  • Membership: number of instances of a container type one entity belongs to
  • Cardinality: number of instances of a containee type one entity belongs to
  • Ordering: whether there is ordering among instances of a particular relationship

 


General info · News · Events · Degree Programs · Research · Classes · Admissions · Advising · People · Jobs · Administration
SOE Webmail · SOE SSH · SOE Wiki · Search · Sitemap · Contact us · Driving directions · Privacy · UCSC
© Baskin School of Engineering, University of California, Santa Cruz
1156 High St., Santa Cruz, CA 95064 · (831) 459-2158 · webmaster@soe.ucsc.edu