Case Data Model Versioning

Case data model versions are set on the project level. Correct version management is essential when upgrading case data models or process applications that reference them.

Case data model version numbers are set on the Properties > Lifecycle dialog of the Business Data project.

The default format for a case data model version number is:

major.minor.micro.[qualifier]

where:

  • major defines the major version number of the case data model.
  • minor.micro.[qualifier] defines the minor version number of the case data model.
  • qualifier is an optional parameter that, if used, will be replaced by the timestamp value in the Properties > Lifecycle > Build Information > Build Version field.
  • Build Version is a timestamp that is updated whenever the project is updated.
    Note: The use of qualifier is different in a process project. On a process project version number, qualifier is replaced by a timestamp when the DAA is created.
The current case data model version number is used when the Business Data project is deployed, and is visible:
  • in TIBCO Administrator, as the business data application's Application Template Version.
  • in the Openspace Data Admin gadget, as the case model's version number.

When you upgrade a case data model, you must update the Business Data project's major or minor version number, depending on whether you have made destructive or non-destructive changes to the model. See Upgrading a Case Data Model.

If a process project references the Business Data project, the current case data model version number is used in the reference when the DAA for the process project is generated. This creates an exact-match application dependency from the process application to that version of the business data application.

Consequently, TIBCO recommend that when you upgrade a case data model, you should also upgrade any existing process application that references that case data model - even if that process application makes no use of the updated parts of the case data model. Keeping case data model applications and dependent process applications in step in this way facilitates subsequent deployments or undeployments of either application. See Process Dependencies and Case Data Models.

The following example illustrates how case data model version numbers are constructed, and how they should be managed.

  1. Customers is a Business Data project that contains the case data model.
  2. The project uses the default Project Lifecycle values for Id and Version.
  3. The project includes a single BOM, also called Customers.
  4. The Tag property on the Model defines the prefix that will be applied to all case data tables created for the Customers BOM. If Tag is empty (the default option), the system decides the value to be used.
  5. The Customers BOM contains a single case class - Customer, which in turn contains an automatic case identifier and a single, optional attribute for the customer's surname.

  1. When the Customers project is deployed to the BPM runtime:
    • By default, Business Studio uses the project Id as the application name, suffixed with the major component of the project Version number (1).
      Note: TIBCO recommend that you do not change the default application name.
    • The BPM runtime uses the major component of the project Version number (1) and the BOM Tag property value (Cust) to build the name of the case data table that represents the Customer case class.
  2. The solution designer changes the model, adding an optional first name attribute to the Customer case class. Adding an optional attribute to a class is a non-destructive change to an existing model, so he updates the project's version number to 1.0.1.qualifier. (If he does not do this, the version number is updated automatically anyway.)
  3. He now deploys the project. Because the major version and project Id are unchanged, this is a minor upgrade to the existing application and case data table.
  4. The solution designer now makes a further change to the model, changing lastName to be a compulsory attribute. This constitutes a destructive change to the model, so the major component of the project Version number must be updated (to 2).
  5. Because the major component of the version number has been updated, deploying the project results in the creation of a new application and a new case data table.