Separate file per package

41 views
Skip to first unread message

Peter Morris

unread,
Nov 11, 2022, 4:17:38 AM11/11/22
to StarUML
Does StarUML allow me to have packages + their diagrams in a model saved as separate files?

I'd like to support multiple people working on the model at the same time, but have fewer merge conflicts.

StarUML

unread,
Nov 11, 2022, 11:35:11 PM11/11/22
to StarUML
Hello,

You can use "Fragment" to manage a package as a separate file. For more info, please check here: https://docs.staruml.io/user-guide/basic-concepts#fragment

Please note that a fragment cannot have references to external model or fragments. A fragment is a closed set of model elements.

Thanks,
StarUML Team

2022년 11월 11일 금요일 오후 6시 17분 38초 UTC+9에 mrpm...@gmail.com님이 작성:

Peter Morris

unread,
Nov 27, 2022, 9:06:39 AM11/27/22
to StarUML
Thanks!

Unfortunately these seem to be export/import of templates rather than full package references.  The difference being that with a package reference I can refresh the reference (or reimport it) and any changes made in that package will be reflected in my current project.

StarUML fragments don't replace the previous "Fragment import", it just imports again.

In the attached example, I added "Name: String" to ContactItem.  When I re-imported I got a duplicate set of classes instead of updating my previous import.

image.png

Is there proper package support?

Pete


--
You received this message because you are subscribed to a topic in the Google Groups "StarUML" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/staruml/useZNh38Evs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to staruml+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/staruml/6ea8c9e0-d191-428f-8771-c020718595adn%40googlegroups.com.

StarUML

unread,
Nov 27, 2022, 10:21:10 PM11/27/22
to StarUML
Hi Pete,

That's intentional. Fragments are for storing and reusing parts of a model, not for concurrent collaboration. When dividing work by package and then merging the whole, duplicate packages should be deleted beforehand. Please note that a fragment is a closed set of model elements as mentioned in the previous thread.

We know that concurrent collaboration is not easy in StarUML. Because model elements referencing each other in a complex way, effective collaboration is difficult without the real-time collaboration (i.e. operational transformation) technology. To do this, a collaboration server must be run, and operational  costs such as roles, privileges, and security are involved.

It is not the direction of StarUML to become this large and complex toolset. Since StarUML pursues agile and concise modeling, it is not suitable for creating huge software models. Instead of writing one huge software model, we recommend writing several smaller software models for each key aspect of the entire software system.

Thank you,
StarUML Team

2022년 11월 27일 일요일 오후 11시 6분 39초 UTC+9에 mrpm...@gmail.com님이 작성:

mrpmorris

unread,
Nov 28, 2022, 3:07:55 AM11/28/22
to StarUML
Hi

You don't need servers etc.

If there was an option to reimport + replace then that would do it. I'd git pull, then import. Obviously, a menu option to reimport all, not manually do each package. 

Associations between classes from packages would be stored at project level.



Sent from my Galaxy
Reply all
Reply to author
Forward
0 new messages