Dan,
You've already gotten a number of excellent answers to your question, but
I'll still toss in my two cents.
We build a UML model of the software because, when we do, we build the
software faster/for less money. All the other reasons for building UML
models, and design in general, have got to boil down to getting the work
done faster/less expensively. And if building design doesn't accomplish
that, we shouldn't do it. [I will acknowledge Ashley Raiteri's point that
the Customer sometimes has specific requirements to produce design. I live
in the same world, alas. But if design isn't getting the project done
faster/cheaper, then the Customer is making a mistake by requiring it.
Still, they have the gold...]
Remember not to limit your perspective to just producing the software, but
to also include the full life cycle costs of maintenance. If maintaining
the model isn't making it cheaper/faster to maintain the software, then we
shouldn't maintain it.
All that said, I think design in general, and Rose-UML in particular, have
the potential to make software development both faster and cheaper, for
many of the reasons listed. It can communicate better than code, it can
abstract away details and let us change our level of focus, and in
conjunction with REI, it can be a powerful tool for producing quality code.
Matt
Dan Lupu
<[EMAIL PROTECTED] To: Rose Forum
<[EMAIL PROTECTED]>
co.il> cc:
Sent by: Subject: (ROSE) Why do we build UML
models ?
owner-rose_forum@ra
tional.com
06/18/01 07:43 AM
Please respond to
Dan Lupu
Hi all,
One of our developers asked me: "Why do we need to build a UML model of the
software?. Why not to go straight to the code?"
I have two different answers for this:
1. Build a UML model of the software in order to execute it and this way
check the software architecture.
2. Build a UML model of the software in order to have a road map for
understanding the system(for new developers to the project).
The first answer implies maintaining the model in sync with the code. (this
is a problem in Rose!)
The second answer implies that you can stop modeling at a specific level of
detail and let the developers learn more from the code.
So, why do you use a model? What is the point of it?
Many thanks,
Dan Lupu
SQA manager, Email: [EMAIL PROTECTED]
************************************************************************
* Rose Forum is a public venue for ideas and discussions.
* For technical support, visit http://www.rational.com/support
*
* Admin.Subscription Requests: [EMAIL PROTECTED]
* Archive of messages:
http://www.rational.com/products/rose/usergroups/rose_forum.jtmpl
* Other Requests: [EMAIL PROTECTED]
*
* To unsubscribe from the list, please send email
*
* To: [EMAIL PROTECTED]
* Subject:<BLANK>
* Body: unsubscribe rose_forum
*
*************************************************************************
************************************************************************
* Rose Forum is a public venue for ideas and discussions.
* For technical support, visit http://www.rational.com/support
*
* Admin.Subscription Requests: [EMAIL PROTECTED]
* Archive of messages:
http://www.rational.com/products/rose/usergroups/rose_forum.jtmpl
* Other Requests: [EMAIL PROTECTED]
*
* To unsubscribe from the list, please send email
*
* To: [EMAIL PROTECTED]
* Subject:<BLANK>
* Body: unsubscribe rose_forum
*
*************************************************************************