Geeks With Blogs
Gavin Stevens's Blog the ramblings of another developer....

You got me thinking Matthew.... I'm sure this may be a touchy topic.  It seems we live in a world of developers who don't see a need for any project design and documentation. I sit right next to one at work, and of course he doesn't like C# either. :) cheers CB. In addition, my boss thinks that we should scrap .Net and go back to ASP :)

I haven’t really used any too formal architectural models in my career either.  A few years back however I started working on a distributed real time software application.  This application would send a receive messages over interconnected TCP sockets.  The more complex this application became, and the more conflicting messages that could be received from different data sources pointed directly to needing some type of sequence diagram to help model the internal communications of the application.  Here I ran into a problem. Sure I could put together a rough sequence diagram; I chose to use something other than Visio, because it complains about everything you do unless your whole UML project is cohesive.  So, a simple sequence diagram is pretty easy to understand, but the problem is of course that sequence doesn’t incorporate any logic.

I would of course always end up with my own diagrams that I would draw on graph paper.  These diagrams would be a combination of logic, state, and sequence to help me understand and program the intricacies of the application.  But, these diagrams were lacking in separation and clarity of logic, sequence and state.

I have tried a bunch of different approaches to learn UML, but it is one of the driest subjects I have ever had to study.  From what I have read also, it tends to go overboard.  I don't think we necessarily need Use cases for every type of functionality an application is to provide.  I took an interest in Rational's XDE software, got the demo, only to realize it was definitely something I would need some training to master. 

So, I recently picked up UML 2 for Dummies, at least they make it a little entertaining!  So, as soon as I get around to actually picking up this book and reading it, maybe I can get a little farther on the path of functionally using UML. For now, its still sitting on my dresser.

I'm sure most of us know that software development must get to the place where it is a lot more like engineering.  It seems UML is a guide to help us draw up the blueprints for software that we can develop, but I really have yet to see many developers embrace it.

What do you think?  How do you feel about using UML or other types of modeling in your projects?  I would be interested to read a few more blobs on some of you guys' perspective.



Posted on Wednesday, September 8, 2004 7:43 PM | Back to top

Comments on this post: Getting up to speed with UML

# re: Getting up to speed with UML
Requesting Gravatar...
I think UML is great for up front design and documentation. Unfortuantely, most of the tools I've used don't 'round-trip' very well and it becomes a burden to keep, say, a sequence diagram in synch with the actual code. Plus I want something that makes it easy to model everything I use, like custom attributes, internal classes, events, properties, const versus readonly. Not being able to do these things easily is frustrating.
Left by Scott Allen on Sep 12, 2004 3:04 PM

Your comment:
 (will show your gravatar)

Copyright © Gavin Stevens | Powered by: