The Post-it® Notes Test for UML Diagrams 58
A lot of teams require their developers to document their designs in UML, using Visio or another tool, before they can start coding.
Of course, this is not at all Agile. For one thing, the design is likely to change quite a bit as you learn while coding. Hardly anyone returns to the diagrams and updates them. Now they are lies, because they make claims about the designs that aren’t true.
UML still has a place in agile projects, of course. It’s a great tool for brainstorming design ideas. So, how do you decide when a diagram is worth keeping and therefore, worth maintaining? Here’s a little strategy that I recommend.
Draw the diagram during those brainstorming sessions on a white board or a poster-sized Post-it® Note. Drawing it this way means you have invested almost no additional effort, beyond the brainstorming itself, to create the diagram. Also, you won’t feel bad about lost work if you eventually throw it away.
Leave the diagram on the wall for everyone to see while they implement the design.
By the time the note is falling off the wall or the dry-erase marker is wearing off the white board, you’ll know if the ideas are still relevant or completely obsolete.
If they are obsolete, you can erase the board or toss the paper. If they are still relevant, and probably changed somewhat, you now know that the diagram is worth preserving. Go ahead and spend the time to create an updated, more permanent version in your drawing tool (but don’t spend too much time!).
Great post Dean. One other way to try to meet this “diagram first” criteria (particularly with distributed teams where a poster / whiteboard may not work) is to get your team a cheap digital camera. When you are done brainstorming, take a photo and use the photo in your documentation wherever the traditional Visio diagram would be typically be used. If you need to edit the diagram, reproduce it on a whiteboard and take another photo. If a more permanent record is required, then as you mention, you can take the time in the traditional tool. Often however, you’ll find that the people insisting on the Visio / UML have their requirements satisfied when they see the photo in the document.
Very good post. I have always found it difficult to be agile and maintaining some diagrams with so little of time spent on analysis.
Hi Dean,
That sounds like a good filter, hope you have plenty of wall space ;o)
But seriously, the problem would be a lot smaller if tool vendors did a better job from a usability perspective. Something is seriously wrong if people can draw their diagrams faster on paper than with computer support.
At least when it comes to UML sequence diagrams I think I’ve created something that fits well with the agile mindset : Trace Modeler, an easy to use and smart editor for UML sequence diagrams.
It makes it really painless to draw and change sequence diagrams and is much faster than anything you could do on paper. Basically it takes care of all the layout issues, freeing you to focus on the content.
You can check out a 30 sec demo on the download page at http://www.tracemodeler.com/download/index.html
Once updating a diagram becomes quick & painless, I believe the equation for agile documentation alters. And even if it doesn’t, you’ll have saved some time anyway!
If you give it a try, let me know what you think of it. I’m always happy to get feedback of course, but I’m especially interested in how Trace Modeler can better support ‘agility’.
Best regards, Yanic
“A lot of teams require their developers to document their designs in UML, using Visio or another tool, before they can start coding.
Of course, this is not at all Agile.”
Huh? Why is this not agile? The real requirement here is that there should be a minimum design done before coding. Would you start building anything of remote complexity without a plan? You want at way to promote conceptual integrity throughout the lifetime of the application.
I think your issue is the requirement to use Visio. However, if the team wants to use Visio, and is empowered to do so, is it not “agile”? As long as the expectation is made to keep it up-to-date and the team understands that I don’t see an issue here.
@Aaron, In my experience, I start with a design in mind, of course, but it quickly evolves as a drive it through TDD. I rarely find that my “initial plan survives contact with the enemy”, to paraphrase Helmuth von Moltke the Elder. TDD is not only an implementation approach, it is also a process of discovering the optimal design.
We all form conceptual models as we go. Sometimes it’s useful to capture some of the big-picture ideas graphically, but I rarely find it useful to go beyond the “Post-It Note” approach.
Again, I assert that drawing lots of design diagrams in Visio or any other (maybe faster) tool is not agile. It’s not code. It doesn’t execute. It’s only when you write executing code that you discover the optimal design, if you’re not constrained by a design that you’ve invested in and you feel bound to uphold. That’s perhaps the most pernicious problem with Big Designs Up Front, not the sub-optimal effort, but the pressure to stay true to the design, even when your implementation is driving you in a different direction.
I say this as someone who believed very strongly in modeling a decade ago, when it was considered the state of the art, and who even worked for a time at a Well-Known Company That Promotes Modeling. We’ve learned a lot since then.
@Yanic, I’ll have to try TraceModeler. Indeed, when I worked on modeling tools for the WKCTPM ;), I realized pretty quickly how inefficient our tools were, compared to a good text editor, and how much they needed a good human-factors makeover!
@Paddy, thanks for mentioning the idea of using a digital camera. It’s a very good solution for distributed teams and which teams aren’t distributed these days??
While UML seems like a fine because it is a standard and therefore it evicts the diagramming mess that existed before UML, UML still lacks several qualities that I would like to have in a design tool.
Most of the time when I’m speaking about the design of a class library, I draw a triangle meaning “all the descendants of this class”. There is no way to say that in UML.
Also, UML can’t capture design patterns in any meaningful way. I can’t even think of having design meetings and not being able to draw what we say and say what we draw. UML is useless in this context.
Neither can my cellphone, but that doesn’t mean I can’t use it to communicate at all.
It’s just a notation, use it to your advantage for the things it can do and use your imagination for the rest.
Dean, I’ve made a translation of your tip to brasilian portuguese: http://expressocapital.blogspot.com/2008/02/o-teste-do-post-it-para-diagramas-uml.html
Let me know if there is any problem, or anything else.
herllo
How to enter into my computer when i forgot administrative password?
I realized pretty quickly how inefficient our tools were, compared to a good text editor, and how much they needed a good human-factors makeover!
Once updating a diagram becomes quick & painless, I believe the equation for agile documentation alters. And even if it doesn’t, you’ll have saved some time anyway!
The Indonesian archipelago has been an important trade region since at least the seventh century,when the Srivijaya Kingdom traded with China and India.
A small search engine optimisation consultancy based on the Shropshire-Wales border.
it is a great tool for brainstorming.nice job thanks for informative article.Alina’s List
Thanks a lot for putting your valuable information. before coding we have to do a lot work in this regard. Nice post i hope you will continue this work.
Listings
cheap VPS
it always creeps you out to decide which diagram to keep and which not to keep. and your idea of drawing it on the whiteboard and letting is not the exact way. you should go for some more advanced options. thanks for the post with regards spa manicure
Nice post. I have always found it difficult to be agile and maintaining some diagrams with so little of time spent on analysis.Thank you so much for sharing this post. craigslist tampa
I was very pleased to find this site. I wanted to thank you for this great read!! I definitely enjoying every little bit of it and I have you bookmarked to check out new stuff you post.
Once updating a diagram becomes quick & painless, I believe the equation for agile documentation alters. And even if it doesn’t, you’ll have saved some time anyway!
Corporate leadership training and development is a must for any company or organization with plans to succeed. There is a difference between being a leader
Nice article to read. Keep posting good and useful information.
Credasys is a full service background information provider specializing in tenant screening, employment screening and mortgage credit checks.
Its Cool!Thanks for ur nice sharing!!It help me a lot with those information!
PizzaLiefer.de Suchen und bestellen online! Spitze pizza Restaurants in , Düsseldorf, Kiel, München, Hamburg, Erlangen, Frankfurt, Fürth, Hannover, Leipzig und Köln
Your website is excellent , i have been looking for this information everywhere.
give you the method to move songs, video and so on backup to Mac from iPhone.
Backup your iPhone SMS to computer easily.
i came to your blog instantly and amazed to see that its full of info what i was searching forgive you the method to move songs, video and so on backup to Mac from iPhone.
very good post..nice and very informative one. michael van der ham
Want to buy the hotest white iphone 4 Conversion Kit? www.whiteiphone4.com will be your best online store. Don’t hesitate to buy the charming iphone 4 Conversion Kit!
i came to your blog instantly and amazed to see that its full of info what i was searching for
your post is so good.you discus good points in this post.thanks for this post…ss craigslist
Thanks for this post, it’s amazing.
your post is so good.you discus good points in this post.thanks for this post…ss tampa
I really like this essay. Thank you for writing it so seriously. I want to recommend it for my friends strongly. iPad PDF Transfer for Mac can help you transfer ebooks in PDF format from ipad to mac/iTunes.
Thanks for shareing! I agree with you. The artical improve me so much! I will come here frequently. iPad to Mac Transfer lets you transfer music, movie, photo, ePub, PDF, Audiobook, Podcast and TV Show from iPad to Mac or iPad to iTunes.
By the time the note is falling off the wall or the dry-erase marker is wearing off the white board, you’ll know if the ideas are still relevant or completely obsolete.
I really don’t know much about these notes. I guess it is very helpful indeed. Daycare Forms
Buy $10 Replica Designer Sunglasses with 3-day FREE SHIPPING Buy $10 Replica Designer Sunglasses with 3-day FREE SHIPPING
Hi, i enjoy reading your website or blog. I got many ideas for my blog. Thanks for the info
Most of the time when I’m speaking about the design of a class library, I draw a triangle meaning “all the descendants of this class”. There is no way to say that in UML.
I like this post. A really good one. Thanks guys. roofing venice
Real Estate Property India: Buy/Sell/Rent Real Estate Properties India. Buy Real Estate Apartments, Commercial Property India, Residential Properties India at AtOnePlace.
really good article. Thanks
internette görüntülü olarak okey oyunu oyna, gerçek kisilerle tanis, turnuva heyecanini yasa.
I really like your article, I always read it :-)
Have the christian louboutin patent leather pumps is a happy thing. Here have the most complete kinds of christian louboutin leather platform pumps.
I found that his foot odors never bring us to death.I never regret buying these beats by dr dre studio for him.
Online UK costume and fashion jewellery shop with, jkkjkl
It is the function of science to discover the existence of a general reign of order in nature and to find the causes governing this order. And this refers in equal measure to the relations of man – social and political – and to the entire universe as a whole.
It is the function of science to discover the existence of a general reign of order in nature and to find the causes governing this order. And this refers in equal measure to the relations of man – social and political – and to the entire universe as a whole.
I liked you blog so im going bookmark it with my prefered websites, you have posted an amazing posts so thank you I liked you blog so im going bookmark it with my prefered websites, you have posted an amazing posts so thank you
I contact blog just a few days .The articles in your blog are so wonderful.Your blog gives me a deep impression .Because I like your nature .
The Post-it® Notes Test for UML Diagrams 54 hoo,good article!!I like the post!61
The Post-it® Notes Test for UML Diagrams 55 good post137
it is best to document everything in a corporate situation
Good diaper bags can make all the difference! Children are a big responsibility and require much time and effort to keep them safe, happy and loved?