As described in An Overview of Item Status, each item in SystemWeaver has its own status, e.g., Work, Frozen, Released, or CS Released.
Likewise, each single item has a version #. The versioning of an item is defined by its own version history, which is a sequence of consecutive versions of the item, or, in the case of branched versions, a tree.
The Status of an item determines if a new version can be created.
By default, when viewing items in the structure tree, you will be able to see the version # of each item and if there is a next version available.
Viewing all Versions of an Item
Because versioning is so central to SystemWeaver, there is a view dedicated to it. The Versions view provides an overview of the version history of an item, and lets you change versions, and easily compare the different versions.
Use of Multiple Versions
SystemWeaver is a highly collaborative environment, and allows for the reuse of items which means all items in the database can potentially be reused multiple times in a model or in multiple models in the database. An item can be included any number of times as parts in a structure and this can result in different versions of the same item being included in a given structure.
Depending on the specifics of the structure, and the used meta model and constructs, this might be a problem, or it might not.
Take the use of requirements in a product definition as an example. If one version of the requirement is used in the specification of the product, and another version is used as a basis for test, then this is a clear problem. (The Test & Verification module of SystemWeaver also deals with this case.)
On the other hand, if different subsystems in the product use different versions of the requirement, simply because the design changes were not completed at the same time, than that might not be a problem, because the effects of the requirement did not stretch across the subsystem boundaries.
Usually in a design, you want to do changes so that old solutions (as designed, as manufactured) are backward compatible. If you change an interface it is good to make the change so that old designs will still work for the new version of the interface. This means that two components can in fact be designed for different versions of the interface, but still be able to work together.
Views that Support Creating New Version
SystemWeaver makes it easy to take out a new version of a released item or part by offering the option in various views. There are multiple standard views where you can take out a new version of a selected Item, two of them will simultaneously replace the selected item with its new version in the structure that is displayed.
The Structure Tree
Since users do most of their work via the structure tree, this is where the new version operation is most often done. The option is located in the Status menu and is called New version and replace or New version and replace in structure when a part item is selected.
The New version and replace option creates a new version of the selected part's item and replaces the item with the new version. With New version and replace in structure, it will also do the same for any part items located above the selected item as long as:
- You have access right to the item, and
- There are no later versions of the item
A dialog will indicate the Action for each part's item. If one or both of the above two criteria are not true for any item in the path, the New version and replace in structure operation will not be performed.
In the below example, the user has write access to all items in the structure above the selected item, and there are no existing newer versions. The replace operation will be performed on each of them as shown below.
If, at any point, an item or sub-structure does not meet the above criteria, the dialog will display this. No action will be performed. In the below example, the user does not have access to "ECU2" and, therefore, cannot take out a new version on it or its sub-structure.
The user can then investigate the case to determine how to proceed.
The Versions View
The Versions view provides an overview of the version history of an item and offers options to change and compare versions. Aside from a New Version option, it also offers Branch options.
With either option, a new version is created and will display in the Versions view, but unlike the Structure tree and the Status view, the selected item in the structure tree does not automatically get replaced. That update in the tree must be done afterwards via, e.g., the Structure tree using Replace to next version or Replace to any version.
The Status View
This view displays not only the version of the selected item, but also the versions of all occurrences of it in the structure tree. It offers two alternatives for the new version and replace operation, one of which is useful for when a part is used multiple times within a structure. See Status: Overview of Item Status and Use for more information.
There are other views that also offer the New version (and replace) option for parts, e.g., the Parts view (for creating a new version of the selected part's item(s)), and the Coverage (mapping item) view.