On 13/09/12 18:23, Modulok wrote:

Does anyone use UML (Unified Modeling Language) with python? If so, what tools
do you use? Is it worth the added effort?

I use UML with most things and even in situations where I'm not writing code or developing software. It is a good general purpose modelling notation for understanding co0mplex problems.

And the last phrase is key. If the problem isn't complex you don't really need UML. If you can hold the concept in your head or explain it with text/pseudo code you don;t need UML.

If you have a dozen or more classes all interacting and multi-level state machines and dozens of different user roles interacting or a 6 or 7 level deep inheritance lattice or a multi site distributed system then UML is invaluable. If you have less than 4 classes and only one level of inheritance then you probably don't need it.

In between its a matter of taste and situation.

As for tools I've used everything from Visio/Dia through to IBM RSA and Borland Together, and of course whiteboards!

The fact its Python makes no difference at all, what matters is how complex is the problem? How many people need to share the understanding? Do you even understand it? If you don't understand what you are being asked to solve(*) then UML is possibly essential since it gives you the analytical tools needed to break the complexity into something you can get your head around and the notation to record the result.

(*)The vast majority of the projects I work on start out with
something I don't even begin to comprehend....It often takes 3-6 months of analysis before I'm even at the stage of starting a design.

--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to