Let's describe the problem with a concrete example:
1) Create a profile "MyProfile" that includes
- Stereotype "Logical Application Component", that includes
- Tag "Lifecycle", that is of
- Enumerated type: "Undefined, Envision, Development"
and where the default value is "Envision"
2) In a model "My Model",
- Import the profile "My Profile"
- Apply the stereotype to a component called "My Application"
- Set the "Lifecycle" tag to the value "Production"
3) In the profile "My Profile",
- Update the enumerated type by adding the value "Retired"
Now the Enumerated type looks like this:
Enumerated type: "Envision, Development, Production, Retired"
4) Import/Reapply the profile "My Profile" in the model "My Model"
Problem:
- "My Application" does not have the "Retired" value (Indeed, I can see this also in the table t_objectproperties)
- If, as an alternative, I reapply the stereotype to "My Application" then all tag values are set to the default value "Envision" (al my values are lost)
So, to summarize, are there any Sparx features, tools, scripts, snippets... that can be used to manage the lifecycle of UML profiles AND of the models that apply these profiles?
Thanks
Alain