-
Modelling and modelling Tools
Hi there,
A question on UML modelling.
How many of you developers design your applications using an OO based
methodology based around use cases, class models, sequence diagrams and the
like. Do you model all the interactions using use cases and sequence models
first before starting to write the code? Do you generate your class
framework from your model (and reverse engineer code changes back in)?
And those of you that do, what do you use? There seems to be a real lack of
tools that support VB.NET at present. I know Rational is working on it for
their XDE product, but I want to evaluate some now. Any suggestions?
Thanks
Mike Mortensen
-
Re: Modelling and modelling Tools
Mike,
A trial version of Rational's XDE for .Net was packaged with the most recent
issue of .NET magazine so you should be able to get a copy somewhere.
Josh F.
"Mike Mortensen" <mike@winsoft.com.au> wrote:
>Hi there,
>
>A question on UML modelling.
>
>How many of you developers design your applications using an OO based
>methodology based around use cases, class models, sequence diagrams and
the
>like. Do you model all the interactions using use cases and sequence models
>first before starting to write the code? Do you generate your class
>framework from your model (and reverse engineer code changes back in)?
>
>And those of you that do, what do you use? There seems to be a real lack
of
>tools that support VB.NET at present. I know Rational is working on it
for
>their XDE product, but I want to evaluate some now. Any suggestions?
>
>Thanks
>
>Mike Mortensen
>
>
-
Re: Modelling and modelling Tools
"Mike Mortensen" <mike@winsoft.com.au> wrote:
>Hi there,
>
>A question on UML modelling.
>
>How many of you developers design your applications using an OO based
>methodology based around use cases, class models, sequence diagrams and
the
>like.
Doing that right now actually.
>Do you model all the interactions using use cases and sequence models
>first before starting to write the code?
Not really. Time constraints don't allow *all* the interactions to be modelled.
However, it is important to thouroughly understand all the critical interactions.
Use Cases are also important in validating requirements, and vice-versa.
In all my years working with methodology (worked in a company with 26 volumes
of it once), I also discovered that you can't drive everything from use-cases
either. It's simple to do that, so we naturally think it's the best thing
to do, but in realilty, once you define your interactions, operations, and
entities, you'll discover new and better User Interface models, which can
potentially take you back to modifying the Use Cases.
>Do you generate your class
>framework from your model (and reverse engineer code changes back in)?
No. I use the models as a reference and a validation mechanism.
Every model/code generation tool i've ever used produces abysmal results.
Some tools allow you to tweak templates and such, but that requires more
work, and in the end, i'd have been better off writing it from scratch.
>And those of you that do, what do you use? There seems to be a real lack
of
>tools that support VB.NET at present. I know Rational is working on it
for
>their XDE product, but I want to evaluate some now. Any suggestions?
I talked to Rational last week. I like the UML implementation they have,
but i've always hated the rest of tools/features, and this time around doesn't
seem to have changed much. Of course, some people swear by them, so it's
up to you to decide what you like/don't like. The tool is simply too generic
for my needs - not to mention far too expensive for the few parts i actually
intend to use. Unfortunately, I can't be much more specific than that due
to the NDA.
Since all i care about is the documentation anyway, I'm back to using Visio
for now.
-Rob
-
Re: Modelling and modelling Tools
Xde sucks. It doesn't support Vb.net, only c#.
-Jeff
"Joshua Frederick" <joshuaf@andrew.cmu.edu> wrote:
>
>Mike,
>
>A trial version of Rational's XDE for .Net was packaged with the most recent
>issue of .NET magazine so you should be able to get a copy somewhere.
>
>Josh F.
-
Re: Modelling and modelling Tools
Hi Rob,
Thanks for the reply. A couple more questions if I may.
From your reply would I be right in saying that you create use cases for
*all* of your application, then derive *all* the classes, then create sequence
diagrams for the *main* interactions adding operations and attributes along
the way. The more trivial interactions you overlook?
Do you create the other artifacts such as component and deployment diagrams
?
If you don't generate/reverse engineer the code, how do you keep your model
in sync with your app. Or dont you see the need for this?
Thanks
Mike
"Rob Teixeira" <RobTeixeira@@msn.com> wrote:
>
>"Mike Mortensen" <mike@winsoft.com.au> wrote:
>>Hi there,
>>
>>A question on UML modelling.
>>
>>How many of you developers design your applications using an OO based
>>methodology based around use cases, class models, sequence diagrams and
>the
>>like.
>
>Doing that right now actually.
>
>>Do you model all the interactions using use cases and sequence models
>>first before starting to write the code?
>
>Not really. Time constraints don't allow *all* the interactions to be modelled.
>However, it is important to thouroughly understand all the critical interactions.
>Use Cases are also important in validating requirements, and vice-versa.
>In all my years working with methodology (worked in a company with 26 volumes
>of it once), I also discovered that you can't drive everything from use-cases
>either. It's simple to do that, so we naturally think it's the best thing
>to do, but in realilty, once you define your interactions, operations, and
>entities, you'll discover new and better User Interface models, which can
>potentially take you back to modifying the Use Cases.
>
>>Do you generate your class
>>framework from your model (and reverse engineer code changes back in)?
>
>No. I use the models as a reference and a validation mechanism.
>Every model/code generation tool i've ever used produces abysmal results.
>Some tools allow you to tweak templates and such, but that requires more
>work, and in the end, i'd have been better off writing it from scratch.
>
>>And those of you that do, what do you use? There seems to be a real lack
>of
>>tools that support VB.NET at present. I know Rational is working on it
>for
>>their XDE product, but I want to evaluate some now. Any suggestions?
>
>I talked to Rational last week. I like the UML implementation they have,
>but i've always hated the rest of tools/features, and this time around doesn't
>seem to have changed much. Of course, some people swear by them, so it's
>up to you to decide what you like/don't like. The tool is simply too generic
>for my needs - not to mention far too expensive for the few parts i actually
>intend to use. Unfortunately, I can't be much more specific than that due
>to the NDA.
>
>Since all i care about is the documentation anyway, I'm back to using Visio
>for now.
>
>-Rob
-
Re: Modelling and modelling Tools
>How many of you developers design your applications using an OO based
>methodology based around use cases, class models, sequence diagrams and
the
>like. Do you model all the interactions using use cases and sequence models
>first before starting to write the code?
Yeap !
> Do you generate your class framework from your model (and reverse engineer
code changes back in)?
Not realy, but I'am developing a superfast coding (forms and classes) using
.NET framework + VISIO, where VB6 can't.
Reverse eng of VISIO UML not help too much, based on visio2000 reverses my
VB6 projects. Almost no need high quality VB programmers ! but on SQL site
still utilize traditional model of work.
> There seems to be a real lack of
>tools that support VB.NET at present.
I think so !
BUT, people at Microsoft is genius, expect them able to help us code faster
using VISIO, but not stuck with problems from old days 4GL.
>I know Rational is working on it for
>their XDE product, but I want to evaluate some now. Any suggestions?
I expect to see XDE !
-
Re: Modelling and modelling Tools
"Mike Mortensen" <mike@winsoft.com.au> wrote:
>
>Hi Rob,
>
>Thanks for the reply. A couple more questions if I may.
>
>From your reply would I be right in saying that you create use cases for
>*all* of your application, then derive *all* the classes, then create sequence
>diagrams for the *main* interactions adding operations and attributes along
>the way. The more trivial interactions you overlook?
For the most part yes, though on smaller projects, you tend to "cheat" a
little 
However, it's also a little more complicated than that. Rather than doing
a waterfall approach, where the methodology is driven one way, I round-trip
the process of design. You can take just about any part of a methodology
and use it's outcome as a validation for a previous part of the methodology.
For example, after I derive the classes, I might find a limitation that forces
me to go back and validate the use cases. I might find some oportunities
to make a better GUI while working on the classes, which causes me to go
back to the use cases too.
>Do you create the other artifacts such as component and deployment diagrams?
Only on projects that are suited for it. The one i'm working on now, for
example has enough components and is very distributed, so these docs keep
everything coordinated.
>If you don't generate/reverse engineer the code, how do you keep your model
>in sync with your app. Or dont you see the need for this?
Like I said, generated code is typically crap (IMO). It's often too generic.
I like to look at things on a case by case basis. Designing the code itself
is just as important as designing the class framework.
I remember using Rational years ago, and not liking the output of the tool
very much (though i love the documentation piece of it). Remembering what
was produced in the old product, I asked the tech during the demo how would
the tool handle multiple tables per class entity - to which he replied, "I
don't know why you would want to have more than one table per class."
That about sums it up.
As far as keeping the code in sync with the docs, you just have to be diligent.
Of course, I have written some add-ins that help assemble some of it.
-Rob
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
Forum Rules
|
Top DevX Stories
Easy Web Services with SQL Server 2005 HTTP Endpoints
JavaOne 2005: Java Platform Roadmap Focuses on Ease of Development, Sun Focuses on the "Free" in F.O.S.S.
Wed Yourself to UML with the Power of Associations
Microsoft to Add AJAX Capabilities to ASP.NET
IBM's Cloudscape Versus MySQL
|
Bookmarks