Thursday, May 06, 2010

Harnessing UML in Ubuntu

Software development was never easy. Software design became extremely difficult with the explosive growth of computers and Internet. Let me accept that I was never a fan of UML. I always believed that software development is an art and the design process is more of an inspiration than a mechanical process of finding nouns and verbs. Patterns, well I thought they were probably the worst creativity-repellents possible. So I was always lousy with UML until I realized that this aversion was compounded due to using MS Visio. Visio probably is the worst place to go to develop UML diagrams. My faith in Visio was developed while using the minimal project management tools  (during undergraduate studies) so when it came to doing UML I simply went ahead and used Visio for Software Design.

Not until 2007 did I come out of the dark ages when I used umbrello for the first time. Then i came to realize that the true worth of a UML Drawing tool. The way in which all the diagrams were integrated gave a sense of connection. While in Visio it was always like drawing a redundant diagram be it class diagram or interaction diagram. However with  umbrello this is  not the case. The model that is defined in one diagram can be used in the other diagram. This functionality is emphasized by the code-generation facility. Although I personally did not like to use this facility but its a handy tool specially when dealing with very large projects. The fact that umbrello supports code-generation in many languages adds to the tool-box of the designer.

How to install umbrello in Ubuntu?
$ sudo apt-get install umbrello
Once installed the program is available in Applications--> Programming menu.

1 comment:

Shalin Siriwaradhana said...

Few reasons why I dont use visio,

1. My OS is Ubuntu

2. Visio sucks

3. not affordable even if I could use in a virtual-box

I use a platform independent solution called creately for my diagramming needs. Its useful and cloud based collaboration is also enabled for free.