Has anyone used UML?
Harry George
hgg9140 at fred.local
Mon Jun 4 19:03:15 EDT 2001
I've done "software engineering" data and process modeling in big
death march projects and in small XP efforts. In every case, the
problem is to use models/diagrams where/when they are needed, not just
"because they told us to". And the only way they seem to be
maintained is if there is no printed documentation -- everything is
live on the web. Edit and publish in a 3 second cycle time.
Under these circumstances, UML models (specifically Dia) make sense
for conceptual modeling, logical data modeling, a dash of DFD's, and
the occassional state diagram. The idea is to bring the community of
players into a high0-level mindmeld as ASAP, not to lock down every
nuance of the implementation. Then do design and code reviews on the
implementation, which conveniently is in an easy-to-read langauge,
like...python
grante at visi.com (Grant Edwards) writes:
> In article <3B1BC755.65510E63 at bt.com>, Alan Gauld wrote:
> >
> >> I took a 3 day class on UML once. My impression: yet another
> >> "silver bullet" that doesn't work in real life.
> >
> >Like any design notation UML is there to communicate. If
> >the peer group is small enough the advantages are marginal.
>
> Agreed. All of the projects I've worked on have been small (1-2
> people typically, 4-5 max). Resources are always scarce and
> when schedule and budget gets tight, maintining the system and
> design description always seems to be the first thing to fall
> off the bottom of the priority list.
>
> "Just get the fix released to production, and we'll worry
> about updating the documents later..."
>
> >If you are working in a distributed group of 20 or more
> >programmers something likev UML is near essential. Most
> >of my projects involve several hundreds of programmers
> >(250 on the current one) and there we simply couldn't
> >operate without UML.
>
> One of the problems I've run into consistently over the past 10
> years is when management insists on using "big project"
> methodologies on tiny projects. Their reasoning seems to go
> something along the lines of: If one person can do a project
> like this in nine months using the "seat of the pants" method,
> then if we make him use Flowcharts/SASD/UML/whatever, then it
> should only take half as long!
>
> >> thought it was marginally useful, but like any other form of
> >> documentation, if it's not maintained (and it never is, AFAICT)
> >> it becomes worse than useless.
> >
> >It depends on the level that you work at. Architectures don't
> >vary that much and are useful for maintainers. But code varies
> >a lot so if you try to use UML for documenting code without
> >tool support for reverse engineering changes then I agree it
> >quickly becomes out of date.
> >
> >But How else do we communicate design to a new start - it takes
> >a long time to read a million lines of code.... UML and similar
> >tools cut that time down by an order of magnitude.
>
> I agree that you certainly need something for documenting large
> systems. The fashion in what that "something" is has varied
> over the years, and UML seemed as good as anything (certainly
> better than some).
>
> --
> Grant Edwards grante Yow! -- In 1962, you could
> at buy a pair of SHARKSKIN
> visi.com SLACKS, with a "Continental
> Belt," for $10.99!!
More information about the Python-list
mailing list