I’m looking for advice on the best practices for setting up projects in Capella. My projects are usually quite similar, with consistent project roles and functionalities. So operational analysis and logical architecture do not differ too much. Furthermore, I have a few products already engineered in Capella that I need to integrate into new projects.
I see two main approaches:
Using Capella’s library functionality to create reusable elements (but I’m not familiar with that)
Copying and pasting elements and diagrams from existing projects / using REC/RPL
Which approach would you recommend for maintaining consistency and efficiency? Additionally, are there any specific add-ons or tools that could help streamline this process? E.g. I like to use the Property Value Management Tool (PMVT)…
If I am not mistaken, you cannot copy/paste REC/RPL from one Capella project to another unless… they are in a library. Using a library is not very complicated, it is just another Capella project except that it has the capability to be referenced by other Capella projects. That way, once it is referenced, you can use RECs contained in the library in different projects.
If you have existing RECs, I think there is a function to “promote” them to a library. That should be in the documentation.
Now if you have an existing OA/SA/LA and that you want to reuse it across multiple projects, using libraries+REC/RPL is one way. Other options could be:
Using the System to Subsystem transition (there are different type of transitions offered by this add-on and chances that one of them is exactly what you’re looking for)
Using the filtering add-on is probably another way to do it
Thank you for your answer. Yes, you cannot copy paste REC/RPL from other projects, and also simple copy / paste of elements does not work all the time. I went with promoting RECs to the library and this works pretty well.
I also tried the System to Subsystem transition, but for that approach I still need a little more time to test it properly and evaluate the pros and cons.
Thank you for help!
Paul
I would like to explore the following> “…it is just another Capella project except that it has the capability to be referenced by other Capella projects”, however, I do believe Capella libraries is only meant for model elements, but not for diagrams. That is, can model elements and diagrams be reused in other models?
For example, if data is defined in a class diagram, it would then be useful to import the data but also the diagram showing it. The diagram can be quite complex to replicate for later extend it, for example. In addition, images in the library will not be added to the shared.
What it would be the an approach to define a model with model elements, diagrams and images, and then make it available to import and reuse it in another model?
technically speaking, the REC/RPL mechanism works only on elements contained in the semantic model. No replication of diagrams or images are available.
you can put a diagram or an image in a library project
a user wanted to recreate a diagram available in a library, he would replicate the elements in his project, then initialize a new diagram and drag and drop the elements on it, and then copy-paste the layout from the diagram in the library
In addition to the above topic, I have a related question:
How can I convert a standard Capella project into a Capella library project, and vice versa?
I tried modifying the “.project” file (specifically <nature>org.polarsys.capella.project.nature</nature>), but this did not work. Could you please provide the correct approach or solution?