Page 1 of 1
UML
Posted: Thu May 28, 2009 9:52 am
by kaisellgren
Do you guys use UML or do you use software like
http://www.sparxsystems.com/products/ea ... phplanding to design your applications?
If you do, how seriously do you take that design step - do you design for hours (or days) how the code works and then you apply your design?
Do you just use the simplest demonstrations on your design such as inheritance, etc, but not stuff like multiplicity associations, aggregation, composition, etc?
Re: UML
Posted: Thu May 28, 2009 11:51 am
by Weirdan
I do use UML sometimes when analyzing complex problems. The most useful to me is a sequence diagram though - I don't feel the need to design inheritance structures in UML since they are super-obvious in PHP code.
Re: UML
Posted: Thu May 28, 2009 12:07 pm
by jayshields
Nope. I imagine that if I did a big (paid) project though I'd draw a whole load of design diagrams to show the clients that I'd actually planned/designed something before jumping straight in.
I wouldn't use software though, unless you're wanting to generate stubs from your diagrams (like NetBeans does). A trusty old pen is the best tool, along with some post-it notes for things like class diagrams and CRC cards.
Re: UML
Posted: Sat Jun 27, 2009 11:47 am
by Jammerious
Hi,
I am wondering how does this work in serious companies and which methodology they use. Can any of the big dawgs share some insight?
I'll be looking for work soon so I'd like to have a head start

Re: UML
Posted: Sat Jun 27, 2009 6:14 pm
by Ollie Saunders
UML is a design and communication tool for expressing relationships between classes. It is not a tool for identifying what classes you will need, to do that user stories are much better. Generally the usefulness of UML is much less than it would appear at first. In situations where I need to design a complex object model for a system UML does help just as a very rapid way of expressing some of the things that are forming in my mind and if you're working with others a common notation is useful to show your intentions and sometimes useful for documentation but UML is little use beyond these things.
When I do use UML it goes out of date really fast; like, within 30 minutes after drawing it. Once you start coding you immediately think of things that will invalidate your UML design. That's OK as long as you're expecting it. Drawing up lots of UML diagrams before starting to code is known as BDUF (big design up front) and is increasingly (verging on widely) known to be a waste of time, don't do it. If your boss is forcing you to, that's bad and I feel sorry for you.
Re: UML
Posted: Sat Jun 27, 2009 6:16 pm
by Ollie Saunders
I wouldn't use software though, unless you're wanting to generate stubs from your diagrams (like NetBeans does). A trusty old pen is the best tool, along with some post-it notes for things like class diagrams and CRC cards.
I've used
Cadifra UML Editor in the past, it's the only UML software I've ever bothered with because it's really really fast. I can get my ideas out quick. (It's all right-click context based, takes a few minutes to get used to but then it's great).
I guess I kind of think of UML as mind mapping for code. I'm talking about UML class diagrams here.
Re: UML
Posted: Sun Jun 28, 2009 4:48 am
by Jammerious
Ok thanks for your reply. For now I think I'll be using just the class diagram and maybe the use case package diagram. Like you said, I don't want to spend time maintaining the model, but being project lead (and the only one on it atm, lol) it's nice to have a simple place of reference for the other developers. BTW I found Dia is an opensource visualization tool, with UML too. Visio is the best I've seen so far, but I'd rather promote the use of OS apps.
I make the db schema directly in MySQL Workbench.
So far I've used Sybase PowerDesigner with a floating licence on some faculty work and I reckon the advantages of the modelled approach. I went to an interview for internship and they actually said they use PowerDesigner, but they were doing .NET mostly

Anyway, this is a hobby project on which I intend to use all the components that an up-to-date php developer should have knowledge of =)
Re: UML
Posted: Tue Jun 30, 2009 6:57 am
by BornForCode
I use EA business version and i am using it in all project phases.
Since i am working as IT and Business Analyst i have the pleasure sometimes to make everything (still begging for salary increase

).