Normally after our Central Arkansas Refresh meetings I come home, have a late dinner with my wife and then blog about the meeting but this past Tuesday night I think I had brain overload. Larry Taylor from the Software Designers gave a presentation on UML (unified markup language). I went into the meeting with a little bit of knowledge regarding UML and what role it plays in software development but haven’t actually used it enough to become very familiar with it. I had a general idea as to what the “open diamonds” and “closed diamonds” meant but that’s about as far as it went for me.
Larry gave an awesome explanation as to how he uses UML to scope out just about every project he works on and demonstrated it’s value on a workflow. After seeing this I had to ask myself if I was leaving out a key process right after discovery on custom applications that I do. Granted, I don’t do a whole lot of custom applications (probably 10 all of last year), and all of the applications that I build are pretty intermediate in architecture, but he made this look so impressive I got thinking about my processes pretty hard.
–
Since all of my application development is done in PHP, and all of my PHP is generated inside PHPRunner IDE, I don’t think that I can personally benefit from adding formal UML to my list of processes because PHPR more or less is built around the idea of being extremely visual and easy to read. Granted, if I was coding something in a language that I am not as familiar with, or if the project was simply enormous, I can see where UML could really simplify things.
Another advantage that I can see for UML is the ability to spread things out evenly to a team of developers that each might be delivering a specific component of the project. Larry even referenced the Microsoft Notecard process where each developer on a team would receive a notecard explaining the component that there were supposed to deliver.
If you develop any type of applications and aren’t using UML, you should at least check it out and see if it is something you or your team could benefit from using. Also, if you were unable to attend this past weeks #RefreshCA meeting, you can get Larry’s slides from the presentation on his blog: UML Presentation. Larry also has additional resources on his blog about UML that can be found here…
Larry has been coding for almost twenty years and heads up the Little Rock .NET users group, if you live in the Central Arkansas area and work with .NET you should check them out. If you aren’t for sure what I am talking about when I say UML, here’s an image that will give you a basic idea.
Questions or Comments?