Design Tool Selection (UML)

Published on December 09, 2008

Design Tool Selection (UML)

    A few months ago I was instructed to choose a tool for the design and documentation of systems. In the company where I work, all this was done in Word and other office programs, and the products that the company produces became more and more complex, more and more people participated in the development, and so on. Therefore, there was a need to use some more suitable tool for the work of analysts, designers and developers. I will share the findings.

    After a brief acquaintance with similar tools, 5 were identified, which are evaluated in more detail. When evaluating, my colleague and I identified about 30 criteria for the objectivity of the assessment. We grouped these criteria as follows:
    - System design - does the tool provide enough functionality for documentation of requirements, user cases, OO design, and other UML diagrams. Does it have functionality for creating dependencies between objects of different types, the ability to track changes. This is a mandatory criterion for the tool.
    - Export- The tool should support convenient export of artifacts produced in it. Different export formats should be available - at least html and doc. Document templates should be easily modified. This is also a mandatory criterion.
    - Ease of use. The tool should be convenient, intuitive, with a simple interface for frequently used functions.
    - Minimizing routine . It would be nice for the tool to do some things by itself - for example, generate test cases, object design from the database, maybe pieces of code.

    So, 5 tools and their assessment.
    1. Case Complete- A tool for recording requirements, creating user cases and the relationships between them. Convenient interface, export, but one serious minus - this thing does not go beyond us cases. In general, it is not clear how she got on our list. 2 out of 5.
    2. Artiso Visual Case - the first thing that catches your eye when using this tool is a wildly uncomfortable user interface. It took me 5 minutes to create an elementary class. In addition, the tool does not have the ability to bind objects (like the us-case <-> class), etc. 1 of 5.
    3. Magic Draw - the tool has a very strong side for UML, but it becomes a little uncomfortable because of this. Still, there is no connection between different objects (like a class and activity, etc.). 3 out of 5.
    4. Sparx Enterprise Architect- Meets almost all the criteria put forward, just some of the frequently used functions are hidden somewhere. Probably, if you get used to it - good. Also, I didn’t find how to connect requirements with design objects. Maybe I was looking badly. 4 out of 5.
    5. Sybase PowerDesigner - the first impression after opening the program is a completely different level. All functions are located exactly where you expect to find them, and this tool satisfied all 30 criteria from the described groups. In addition, PowerDesigner has a bunch of very useful features that did not fall into the list of criteria - such as impact assessment, model validation, Repository, and much more. 5 out of 5.

    Here here , I laid out a full comparison, if you are interested.

    Although PowerDesigner is several times more expensive than others, we chose it. Today I use it for 2 months - if anyone is interested, I can write about it - not everything in it is perfect (but close!).

    Probably immediately ask why Rational Rose was not on the list. I do not like him! He's not handsome. And yet, I could not find where to legally download it. But in principle, he is good. But PowerDesigner is better