Models Management

Semarchy supports out of the box metadata versioning.
When working with a model in the Semarchy Workbench, the developer works on a Model Edition, that is a version of the model.

Model management includes all the operations required to manage the versions of the models.

Introduction to Metadata Versioning

A Model Edition is at a given point of time either Open or Closed for editing.
Branching allows you to maintain two or more parallel Branches (lines) of model editions.

Model Editions and Branches

Version Numbers

A model has a version number that is automatically generated with the Branch ID number and Model Edition number. The branch and model numbers start at zero and are automatically incremented as you create new branches or model editions.
A model edition appears in the following format: <Model Name> [<branch>.<edition>]. For example, the first model edition in the first branch has the version [0.0]. The fourth edition of the CustomerAndFinancialMDM model in the second branch is named CustomerAndFinancialMDM [1.3].

A Chronological Example

The following example shows the chronological evolution of a model through editions and branching:

The following schema illustrates the timeline for the edition and branches. Note that the changes is the two branches are totally decoupled. Stars indicate changes done in the model editions:

Month    : January       March      April   May        June     August
Branch 0 : [0.0] -***-> [0.1] -*-> [0.2] ----------*-> [0.3] ----------->
Branch 1 :                    +-branching-> [1.0] -**-**-****-> [1.1] --->

At that stage, two editions on two different branches remain and are open: CustomerHub [1.1] and CustomerHub [0.3].

Working with Model Editions and Branches

Model edition and branching can be managed from the Model Administration perspective.

To access the data administration perspective:

  1. Select the Overview perspective the toolbar.
  2. In the Overview, click the Manage Model Editions... link in the Administration section. The Model Administration perspective opens.

Creating a New Model

Creating a new model creates the model with the first model branch and model edition.

To create a new model:

  1. In the menu, select File > New > New Model.... The Create New Model wizard opens.
  2. In the Create New Model wizard, check the Auto Fill option and then enter the following values:
  3. In the Description field, optionally enter a description for the Model.
  4. Click Finish to close the wizard. The new model is created, with a root branch and a first edition.
  5. Model Edition perspective opens on the new model.

Closing and Creating a New Model Edition

This operation closes the latest open model edition in a branch and opens a new one. The closed model edition is frozen and can no longer be edited, but can be deployed to production environments.

Warning: It is only possible to close an open edition. This edition is the latest one from a branch.

Warning: It is only possible to close an edition that is valid.

To close and create a new edition:

  1. In the Model Editions view of the Data Administration Perspective, expand the model and the model branch containing the edition that you want to close.
  2. Right-click the latest model edition of the branch (indicated as opened) and select Close and Create New Edition.
  3. Click OK to confirm closing the model edition.
  4. The Enter a comment for this new edition dialog, enter a comment for the new model edition. This comment should explain why this new edition was created.
  5. Click OK. The model is validated, then a new model edition is created and appears in the Model Editions view.

Important: Be cautious when closing a model edition. Closing an edition cannot be undone, and a closed edition cannot be reopened.

Branching a Model Edition

Branching a model edition allows restarting modifying a closed edition of a model. Branching creates a new branch based on a given edition, and opens a first edition of this branch.

Warning: It is only possible to branch from closed model editions.

Info: When creating a model, a first branch named <model_name>_root is created with the first model edition.

To create a new branch:

  1. In the Model Editions view of the Data Administration Perspective, expand the model and the model branch containing the edition from which you want to branch.
  2. Right-click closed the edition from which you want to branch and select Create Model Branch From this Edition. The Create New Model Branch wizard opens.
  3. In the Create New Model Branch wizard, check the Auto Fill option and then enter the following values:
  4. In the Description field, optionally enter a description for the Model Branch.
  5. Click Finish to close the wizard.
  6. In the Model Branch Created dialog, click Yes to open the first edition of this new branch.
  7. The newly created edition opens.