Tuesday, October 5, 2010

Drawing with SDEdit

Today I had been assigned the task of creating sequence diagram for one of the project I am working on. As with most of the things this was first time for me.

A sequence diagram helps you in understanding flow of control from one component to another component of your software when a particular action (ex. User presses a button, or your web service receives a request, or a scheduler wakes up and starts some action) is triggered. It is the intermediate step between writing problem on a document to converting solution in a programming language (Java, C/C++ etc)

Anyways since I was new to doing this, my first thought was lets do it in Microsoft word or Powerpoint. But very soon I realized the futility of this approach. I will have spent whole day on drawing lines and blocks. Then someone suggested to use Microsoft Visio. I installed it too, but only to realize that it doesn't have capability to draw sequence diagrams.

Then I searched for tools. There are many tools available on internet but most of them are commercial. Finally I stumbled upon SDEdit. This is a java based tool and available as open source. Perfect for my needs. However understanding the working of this tool required reading the help text for 30 minutes or so. It uses commands to draw and is not as intuitive as MS Word or powerpoint. Reminds me of latex. But the end result was very beautiful. With just 10-12 commands I had drawn the sequence diagrams and created pdf out of it. It even allowed me to create pdf in landscape mode (better for viewing). Overall a very useful tool. Please share your experience and let me know if you have used other similar good open source tools for UML etc.

No comments: