Integrations (PTC products, 3rd party products and code) > 3rd party product integrations (CM, DOORS, Rose, Simulink and XML) > Configuration management tool integration > Typical lifecycle of a model stored in a CM tool (CM tool integration) > Typical lifecycle of a model stored in a CM tool (CM tool integration) > Typical lifecycle of a model stored in a CM tool (CM tool integration) — Changing items
  
Typical lifecycle of a model stored in a CM tool (CM tool integration) — Changing items
There are typically three stages for storing and working with a model stored in a CM tool (a CM tool model):
Storing a model in a CM tool the first time
Creating a replica of a CM tool model
Changing items in a CM tool model
Changing items in a CM tool model
When you create a replica of a CM tool model, the replica contains only stubs of the Model and Packages. You can populate these stubs with the items they contain through a Tools > Configuration Management > Get Latest operation.
Get Latest operation: use this operation when you working directly with a CM tool. A get latest operation copies the latest version of a Package or Model from the CM tool environment to the Modeler environment. You perform a get latest operation to populate stubs or to ensure that the Package or Model is up-to-date. You can perform a get latest operation only on a Package or Model that is checked in, or checked out to another Modeler Model.
To change an item or diagram in the CM tool model, you must check out the Model or Package that owns that item or diagram. After making the required changes to the item or diagram you can then check in the Model or Package you checked out. Packages and the Model can be independently checked out.
Check Out operation: A check out operation copies the latest version of a Package or Model from the CM tool environment to the Modeler environment. After performing a check out operation, you can change the Package or Model in Modeler. Within the CM tool environment, the Package or Model is checked out and locked to you and it cannot be checked out by another user. You perform a check out operation to make changes to a Package or Model that is stored in a CM tool.
Check In operation: A check in operation copies a Package or Model from the Modeler environment to the CM tool environment. You use a check in operation the first time you want to copy new Models and Packages to the CM tool environment, and thereafter to check in Packages and Models that are checked out to you.
* 
Important:
You cannot use your CM tool to check out multiple versions of a Package or Model file for parallel development, because package and Model files cannot be merged.
When making changes, you should check out the required Packages as a set, make the required changes, and then check in those Packages as a set. Working with sets of Packages keeps the CM tool package files in a complete and consistent state.
* 
For the purposes of get latest, check in and check out operations, the Model behaves as a Package. Each Modeler item must be scoped by either the Model or a Package.
If you right-click the Model or a Package, the configuration management commands are under the Configuration Management submenu.
The time taken to perform a get latest or check out operation will be reduced if you have write access to the Model and each Package in that Model, and in each case the Model or Package is not protected.
After a Package or Model is under configuration control, it can be either checked in or checked out:
When a Package or Model is checked in:
In the CM tool, the Package or Model is not checked out. Another user can check out the Package or Model to their Modeler environment to make changes to it.
In the Modeler Model from which the Package or Model was checked in, the Package or Model is protected (in the Access Permissions tab of the Property Pages, the Protected check box is selected.) This prevents any of its contents being modified.
When a Package or Model is checked out:
In the CM tool, the Package or Model is checked out to the user that performed the check out operation. Other users cannot check out the Package or Model to their Modeler Models, but they can perform get latest operations on a Package or Model that is checked out to a different Modeler Model.
In the Modeler Model to which the Package or Model was checked out, the Package or Model is unprotected (in the Access Permissions tab of the Property Pages, the Protected check box is cleared.) This allows its contents to be modified. Note that the Package or Model can be checked in only from the Modeler Model to which it was checked out, and only by the user who checked out the Package or Model.
* 
Warning: If you manually change the Protected status of a Package, its status may be misinterpreted by the CM tool integration software.
You create a Package in a CM tool Model by checking out the Package (or Model) that is to be its parent. In Modeler you then create the new Package, and then check in both the new Package and its parent Package. The new Package is checked in to the CM tool project that owns its parent Package or Model.
You delete a Package from a CM tool Model by checking out both the Package you want to delete and its parent Package. In Modeler, you then delete the Package, and then check in the parent Package of the deleted Package. The deleted Package is removed from the CM tool Model, but its file will remain in the CM tool project. If a new Package has the same scoped name as a previously deleted Package, you will not be able to check in the new Package unless you delete the CM tool files (PKF and IDF) for the Package that was deleted.
Example - Changing items in a CM tool Model
In this example, a replica of the Ticketing System CM tool model has been created, and we are now going to create an Actor named Customer in the Ticket Allocation Package.
Initially, the Ticket Allocation Package is not checked out.
We want to change the Ticketing Allocation Package, so we check it out by right-clicking the Ticketing Allocation Package in Modeler, pointing to Tools > Configuration Management, and then clicking Check Out.
Notice the following:
In VSS, the two files for the Package have been checked out and locked, which is shown by the red check marks.
In Modeler, an outgoing (right pointing) arrow and pencil indicates that the Package is now not protected and checked out to the Model.
We can now add the Customer Actor to the Ticket Allocation Package in Modeler.
After adding the Customer Actor to the Package we check in the changes to the CM tool Model. From Modeler, right-click the Ticketing Allocation Package, point to Tools > Configuration Management, and then click Check In.
Notice the following:
In VSS, the two files for the Package are now checked in, making them available to other users.
In Modeler, the Package is under configuration control, protected and not checked out to the Model.
Having checked in the Package, we must now consider the Modeler Model to be out of date because other users may have checked in changes to the CM tool model. If in future we need to make further changes to the CM tool Model, we will not need to create a replica of the CM tool Model. Instead, we would perform a get latest operation on the Modeler Model (including new sub-Packages) so that it is up-to-date with the CM tool Model, and then check out the Packages we wanted to change.