This week's book giveaways are in the Refactoring and Agile forums.
We're giving away four copies each of Re-engineering Legacy Software and Docker in Action and have the authors on-line!
See this thread and this one for details.
Win a copy of Re-engineering Legacy Software this week in the Refactoring forum
or Docker in Action in the Cloud/Virtualization forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

UML with XP

 
Matthew X. Brown
Ranch Hand
Posts: 165
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
There seems to be alot of value in creating UML to ensure that the understanding of the system and requirements are clear. However, in XP- it seems that the only tools to model with are CRC cards, which are Ok- but aren't as robust as UML. Where does UML fit in with XP?
 
Lasse Koskela
author
Sheriff
Posts: 11962
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Matthew Brown:
Where does UML fit in with XP?

That's actually an interesting question I hadn't thought of so far. Not that I would've had that much experience in my backlog...
With a quick Googling I found a couple of interesting sources for info about UML+XP:
- UML meets XP
- XP and UML? Clearly the Wrong Question to be Asking
- XP and UML wiki page
I'm planning to go through these while commuting...
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In short, there is nothing that precludes the usage of UML from XP. Most often, XP teams will use UML on white boards or paper napkins to foster short design sessions.
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
BTW, what do you mean by UML being more robust?
 
Junilu Lacar
Bartender
Pie
Posts: 7327
45
Android Eclipse IDE IntelliJ IDE Java Linux Mac Scala Spring Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Matthew Brown:
There seems to be alot of value in creating UML to ensure that the understanding of the system and requirements are clear.

I don't think UML really "ensures" anything. UML, like CRC cards, are tools for communication. As with any form of communication, delivery and reception affect the quality and usefulness of the conversation.
Sure UML has its uses and applications where CRC cards would be insufficient. But CRC cards and sessions with them are very effective for getting team members thinking, bouncing ideas off of each other, and even "walking through" designs. Would having people sit at their own desks and bang out UML diagrams with Rational Rose for a week get the same results? Maybe, but I doubt it.
On the flipside, UML has a broader scope and if used appropriately can communicate a wider variety of ideas than CRC cards can.
I guess my point is that you can't really say one is more effective than the other because they are meant to be used in different contexts.
 
Matthew X. Brown
Ranch Hand
Posts: 165
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Regarding the term "robust" I guess I simply meant that you can put alot more detail behind the way that the classes/objects are interacting- not that you can't describe that with CRC cards- its just more formalized within UML. You guys are correct- UML isn't a silver bullet- I just wanted to see how I could marry the two(XP/UML).
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic