Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Some friends and I are starting up a hobby programming project. I wonder if there is any good method/tool/service which lets us collaborate on UML diagrams online. This can be in any form (online direct edit, source-control style, etc.) as long as we can make changes independent of each other.

share|improve this question

closed as not constructive by gnat, Martijn Pieters, MichaelT, Kilian Foth, thorsten müller Apr 17 '13 at 9:42

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

    
Why don't you just use a source control system? –  Dima Nov 8 '11 at 18:31
    
You could read this and try them. –  Ken Chan Nov 8 '11 at 19:05

2 Answers 2

up vote 1 down vote accepted

What I do is to share my model and my diagrams directly on CVS inside my project. After each major change I commit.

Anyone in the team can change the model or the diagrams. It works pretty well because the class diagram is synchronized with the code and no offline out of box code generation is used.

share|improve this answer
    
This is the method we ended up using. We are programming in C# using Visual Studio so we just added a Modelling project to the solution. –  Zeta Two Nov 13 '11 at 21:51

It is difficult to create a CASE tool that allows different users to change things simultaneously.

In the past, Texas Instruments created IEF that is a repository based tool based on batch check-out and check-in process. A similar product ERWin also uses a repository for storing the model meta data. None used the collaborative style. The challenge is to handle conflicting user interactions, for example one user may be defining a proper in a class while the other user attempts to delete or rename the class either in the same diagram or in another one.

Also, it is generally good idea to have one person in charge of a diagram. Ideas are welcome but final implementation should be a single person's responsibility unless the model is well divided into separate parts.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.