Hi Guys,
Our project has decided to adopt UML big style for a new project we are beginning. Having sat now through 3 days of UML training, I am struggling to see a benefit of this for our project.
The project will be a GUI based graphical rich application. With interactions between C# front end and Mathematical modelling on either Solaris, OpenVMS or Server 2003 (Preferred).
UML to me seems to be a huge syntactical nightmare, good for communicating design issues between people, but is it any good for actual design. A miriad of diagrams with a myriad of stereotypes, OCL etc. None of which sit exactly with the code. i.e. If a change
is made to code, I guess it is not reflected in diagram.
So, my initial feeling is "Bloatware" used by Academics, but not applicable to Windows based applications.
Anyone care to discuss ?
regards
Mike
-
-
m1keread wrote:...So, my initial feeling is "Bloatware" used by Academics, but not applicable to Windows based applications...
I hope you exclude students here! I hate UML! It's a nightmare. Tools are not very useful/mature and you invest more time then you get from it. You can't imagine what crazy UML 2.0 diagrams I have done in my life.
The best of this all is that professors at university who are holding the UML lessons are always business people! I haven't seen a real geek holding an UML lesson at our university. Business guys need those diagrams to understand a little bit what happens at the inside. They want to talk with us.
If you think UML is to much for the project you should do only some of the diagrams. Perhaps the class diagram or some flow diagrams... perhaps only for critical code. UML doesn't say you need to do any diagram. Even the tools, don't need to implement the FULL UML standard (there are several steps between non UML and full UML - it's crazy, you know)!
Btw: I'm more for XP or Scrum. -
Our professor mentioned in one lecture that we are only going to do UML diagrams in 5 years. No more coding. Just "UML coding". I hope so much we are NOT!
When looking at the tools I can't believe we are going to do any UML only coding for the next 50 years. That's enough for me to be out of business
-
littleguru wrote:Our professor mentioned in one lecture that we are only going to do UML diagrams in 5 years. No more coding. Just "UML coding".
That's a bit like the 'This is the year of Linux' line. I first heard the 'UML will take over in five years' line about, oh, five years ago.
UML is good for documentation, but not a useful tool for design (except when a diagram can help you clarify your thoughts).
I only use 'simple' UML: basic class and sequence diagrams. The rest is just academic 'dreamland' junk.
I once saw a UML diagram of the UML syntax -- it spanned two pages in the UML book I was reading and was totally impenetrable. A picture might be worth a thousand words, but a big picture is too much to take in.
Use UML to augment the plain english description, don't leave the words out completely.
Herbie
-
For class diagrams, the vs2005 Class Designer is massively more useful than UML now.
-
Having seen examples of how UML should be run, I can see the benefit for medium to large applications.
Start with your use cases - break them down to scenarios - create first draft interaction diagrams of the scenarios - create first draft class diagrams - polish diagrams iteratively and then write some code. It does have a flow, but it's only really useful if you follow that flow.
However, I never actually got to work on such a project using UML, so I have no idea whether it actually works like that
The tools to support UML however are a catastrophe, I've not seen any of the super-expensive tools, but anything less than $1000 is pretty much useless.
IMHO, if they could strip out some things from UML, and create a half-decent tool it could be useful, but at the moment it's almost a hindrance. -
Massif wrote:
The tools to support UML however are a catastrophe, I've not seen any of the super-expensive tools, but anything less than $1000 is pretty much useless.
IMHO, if they could strip out some things from UML, and create a half-decent tool it could be useful, but at the moment it's almost a hindrance.
I have used the C# generation feature of Visio to create basic class outlines, but that's it. It's a usefull tool to take some of the donkey work out of the initial class generation, but that's as far as it goes.
I will not be replaced by a UML tool!
Herbie
-
We did a comparison of the cheap UML tools, and not one of them came out without some sort of glaring error. In visio I think I was most distressed by the ability to put anything from any of the UML diagrams onto any of the other diagrams.
So you could draw states inheriting from classes and all sorts. Pretty odd stuff. Other people were worried by other things.
And then there's the special joy of using XML to transfer UML diagrams, despite a standard (whose name currently escapes me) we only found two tools which could talk to each other, and I think they were both based on the same open source project. All the other tools either didn't support the standard at all, or supported it in subtly different ways.
Sigh...
I quite liked poseidon, but was told by other team members that it fell over quite badly in wider use. -
I actually used Enterprise Architect in my previous job but we never really got off the ground with UML. I think UML is great for documentation when a project is complete but too much of a learning curve for the design phase.
Anyone here ever worked with Rational? Curious of how hands off of code you actually are. -
harumscarum wrote:I actually used Enterprise Architect in my previous job but we never really got off the ground with UML. I think UML is great for documentation when a project is complete but too much of a learning curve for the design phase.
Anyone here ever worked with Rational? Curious of how hands off of code you actually are.
I was allowed to use it for university... To complex... Even simple stuff is hard to do...
I don't like tools that add more complexity to a simple task than required. The only button for such a tool is the uninstall button in the control panel.
Btw. don't ask me never something about using Oracle 9i (+) in Windows XP SP2. *grrr* -
I guess the DSL way is more for developer than UML. Because you have a specific language for a specific task, like the class diagrams in visual studio. One tool I have tested was the VS Together plugin from Borland which works good, but was also a good way to decrease the performance of VS.
-
UML is not presciptive.
It's a tool box.
You pick the diagramming style and actifacts that suits your need.
The problem with UML is it's coverage is to broad in my opinion.
For my mind a business analyst can document business processes with UML, but a developer cannot get enough detail from UML to start to code.
The people behind UML, the OMG , say the answer is to add more artifacts and rules about logic, I believe there is over 60 artifacts now, so it's just getting to complicated. Better tools isn't going to make it easier.
Microsoft believe the answer is building Domain Specific Languages or DSL's for short. What are simply that, languages, graphical, notational, whatever you like, but for your particular context. Good examples of a DSL are an electonic wiring diagram (graphical) or SQL (notational)
The key to an DSL is that logic/definitions/stuff is all parcelled up logically, an example is a transistor, you don't care about it's component parts that make it up or how it works, so you just create a picture that means transistor.
The same can be done with code and this is what you do with the DSL tool kit version 1.0 that you can find in the Visual Studio 2005 SDK (which you can download from here).
So the next time you think about your class diagram ... think about a DSL being the next logical step. Think about that class, as a whole segment of code, classes, programs ... even whole systems! Why not?
So is DSL going to be the missing link between Business Analysts and Developers? So we can at last start speaking a common language?
Well may be, but we aren't there yet, I believe we are on the right lines with DSL's, I believe a set of domain languages with hand off to each other will evolve but I think they will evolve from us and not from the likes of a software company or an university. I would like to think that this is something we could do right here ... and why not ? -
Uuups Sabot , the same opinion at the same time.
So, I guess we have a wish. Maybe Vista Ultimate
-
Sabot wrote:The people behind UML, the OMG , say the answer is to add more artifacts and rules about logic, I believe there is over 60 artifacts now, so it's just getting to complicated. Better tools isn't going to make it easier.
Oooh! The CORBA guys. UML 2.0 adds a lot new diagrams, artifacts and nonsense. It makes everything so complex and you need sometimes draw 3 - 5 diagrams to have everything for a little feature. It's to much overhead. -
littleguru wrote:

Sabot wrote: The people behind UML, the OMG , say the answer is to add more artifacts and rules about logic, I believe there is over 60 artifacts now, so it's just getting to complicated. Better tools isn't going to make it easier.
Oooh! The CORBA guys. UML 2.0 adds a lot new diagrams, artifacts and nonsense. It makes everything so complex and you need sometimes draw 3 - 5 diagrams to have everything for a little feature. It's to much overhead.
I'm not excited by UML 2.0 and I'm sure I'm not the only one, this is perhaps why I'm just not hearing stories of it's adoption.
I would be interested to hear about anyone that is using it.
Anyway, if I hear that 'code is the documentation' again ... I will scream ... because this just shows complete lack of understanding. There are more people in the development life-cycle than just coders and they need to understand whats happening. -
Sabot wrote:I'm not excited by UML 2.0 and I'm sure I'm not the only one, this is perhaps why I'm just not hearing stories of it's adoption.
I would be interested to hear about anyone that is using it.
Anyway, if I hear that 'code is the document' again ... I will scream!!!!!
There is so much (sooooooooooooooooooo much) space between UML 2.0 and "code is the document" - Miles, no better: light years!
I haven't seen it also being used very much. The time (a year ago) I had to do UML 2.0 at university I had to draw some shapes and diagrams on our own. On paper, since there was no decent tool to do them... -
littleguru wrote:Our professor mentioned in one lecture that we are only going to do UML diagrams in 5 years. No more coding. Just "UML coding". I hope so much we are NOT!
We've been using UML only coding for a couple of our software projects for the past 4 or 5 years. The advantages in coding time and ease of coding are minimal at best. The real advantage of model based design (and this is a HUGE advantage) is in simulation and testing.
littleguru wrote:When looking at the tools I can't believe we are going to do any UML only coding for the next 50 years.
These tools are already on the market, and being used by millions of software engineers already. The tools are very mature.
-
Detroit Muscle wrote:

littleguru wrote: Our professor mentioned in one lecture that we are only going to do UML diagrams in 5 years. No more coding. Just "UML coding". I hope so much we are NOT!
We've been using UML only coding for a couple of our software projects for the past 4 or 5 years. The advantages in coding time and ease of coding are minimal at best. The real advantage of model based design (and this is a HUGE advantage) is in simulation and testing.

littleguru wrote: When looking at the tools I can't believe we are going to do any UML only coding for the next 50 years.
These tools are already on the market, and being used by millions of software engineers already. The tools are very mature.
help!
Thread Closed
This thread is kinda stale and has been closed but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.