Home > Archive > Extreme Programming > July 2007 > UML in XP Methodology
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
UML in XP Methodology
|
|
| dormantroot@gmail.com 2007-07-19, 7:03 pm |
| Folks,
I'm trying to learn XP methodology and I've been researching a lot. Th
one thing that i can't understand is where do you use UML within this
methodology? I've been using Unified Process Methodology all along and
from experience i can say that UML is a valuable tool.
Does XP completly avoid using UML or is there any other tool within XP
that replaces UML?
please help me with your advice.
thanks
john
| |
| Phlip 2007-07-19, 10:01 pm |
| dormantroot wrote:
> I'm trying to learn XP methodology and I've been researching a lot. Th
> one thing that i can't understand is where do you use UML within this
> methodology? I've been using Unified Process Methodology all along and
> from experience i can say that UML is a valuable tool.
>
> Does XP completly avoid using UML or is there any other tool within XP
> that replaces UML?
XP's documentation also does not exactly specify that you use a keyboard,
mouse, chair, monitor, etc, either...
Use UML to draw diagrams of your classes; for example during a code review.
At work we review each feature with our supervisor. If some classes were
complex enough to require a diagram, we would draw it. And I occassionally
run a tool that automatically generates a diagram.
Tip: Don't use UML as a way to make your classes more complex than they need
to be, or to support such classes.
--
Phlip
http://www.oreilly.com/catalog/9780596510657/
"Test Driven Ajax (on Rails)"
assert_xpath, assert_javascript, & assert_ajax
| |
| dormantroot@gmail.com 2007-07-20, 7:04 pm |
| On Jul 19, 8:16 pm, "Phlip" <phlip...@yahoo.com> wrote:
> dormantroot wrote:
>
>
> XP's documentation also does not exactly specify that you use a keyboard,
> mouse, chair, monitor, etc, either...
>
> Use UML to draw diagrams of your classes; for example during a code review.
> At work we review each feature with our supervisor. If some classes were
> complex enough to require a diagram, we would draw it. And I occassionally
> run a tool that automatically generates a diagram.
>
> Tip: Don't use UML as a way to make your classes more complex than they need
> to be, or to support such classes.
>
> --
> Phlip
> http://www.oreilly.com/catalog/9780596510657/
> "Test Driven Ajax (on Rails)"
> assert_xpath, assert_javascript, & assert_ajax
Philip,
what tool do you use to create the diagrams?
| |
|
| dormantroot wrote:
> what tool do you use to create the diagrams?
A whiteboard, paper, or RadRails.
And a diagram should not be so detailed you can't read it. It should
generally illustrate a few links between two points, like a directions route
on Google Maps. A diagram should exclude any detail that doesn't refer to
the route.
Read /Agile Modeling/ by Scott Ambler (IIRC).
--
Phlip
http://www.oreilly.com/catalog/9780596510657/
"Test Driven Ajax (on Rails)"
assert_xpath, assert_javascript, & assert_ajax
| |
| John Roth 2007-07-20, 10:01 pm |
| On Jul 19, 7:04 am, dormantr...@gmail.com wrote:
> Folks,
>
> I'm trying to learn XP methodology and I've been researching a lot. Th
> one thing that i can't understand is where do you use UML within this
> methodology? I've been using Unified Process Methodology all along and
> from experience i can say that UML is a valuable tool.
>
> Does XP completly avoid using UML or is there any other tool within XP
> that replaces UML?
>
> please help me with your advice.
>
> thanks
> john
XP doesn't prescribe UML because it doesn't like to do a lot of formal
design up front. Informal design is a different issue, and using UML
to sketch out possibilities on a whiteboard or piece of paper is a
great thinking tool.
It also doesn't use UML as design documentation. In XP, the code and
unit tests should be adequate for low level design documentation; if
they aren't then we encourage people to learn how to make them
readable.
Complicated systems frequently do need some high level documentation,
but we prefer that it be kept really simple, and at a high enough
level that it doesn't change from month to month. UML is much too low
level and detailed to serve this purpose.
In other words, use of UML as a FORMAL design tool is missing the
point of how TDD works.
John Roth
| |
|
| John Roth wrote:
> It also doesn't use UML as design documentation. In XP, the code and
> unit tests should be adequate for low level design documentation; if
> they aren't then we encourage people to learn how to make them
> readable.
Way. During a code review, the reviewer says "but what's that other class
for?" and I switch the editor tab to their test case. Each test case
Assembles the target objects, Activates one of their methods, and Asserts
its return value. So this pattern quickly and naturally reveals how objects
work together.
> Complicated systems frequently do need some high level documentation,
> but we prefer that it be kept really simple, and at a high enough
> level that it doesn't change from month to month. UML is much too low
> level and detailed to serve this purpose.
And yesterday at work, my pair and I managed to make a class go away! The
tests all still passed, so now we need less UML...
--
Phlip
http://www.oreilly.com/catalog/9780596510657/
"Test Driven Ajax (on Rails)"
assert_xpath, assert_javascript, & assert_ajax
|
|
|
|
|