Re: .NET Limitations when implementing UML

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance

From: Niki Estner (niki.estner_at_cube.net)
Date: 11/01/04


Date: Mon, 1 Nov 2004 19:54:29 +0100


"Martyn Lawson" <MartynLawson@discussions.microsoft.com> wrote in
news:BA41653B-8CD7-4389-ACB2-A189681DBB99@microsoft.com...
> Thanks Niki,
>
> The second point confirms what my Programmer has been telling me but does
> go
> against everything I've read about OOAD and UML. But if that's how .NET
> implements them then i'll re-work all my sequence diagrams - great!!!

I'm sorry, but then you probably misunderstood everything you've read...
(Java interfaces have the same semantics, so do UML interfaces)

> However, I do not really understand what you meant regarding the first
> point. I understand that Sequence Diagrams can be used to model a variety
> of
> things and perhaps confused things by mentioning ASP.

The point is that there's absolutely no need to implement a sequence diagram
with some kind of controller class.
Maybe you confused that with a design pattern?

> The question is really that Controller classes in UML are private and can
> therefore only be seen by classes in the same component. Since the
> boundary
> class (in our situation the ASP page) is not in the component (VS.NET
> project) it cannot see the Controller. Is the only available option to
> make
> the Controller a public class?

Not sure if I got that question: The idea of a private class is that it's
not visible outside the enclosing assembly. If you want it to be visible,
make it public. ("private" in UML has very similar semantics)

Niki

> Any further help would be appreciated.
> Cheers,
> Martyn...
>
>
>
> "Niki Estner" wrote:
>
>> "Martyn Lawson" <MartynLawson@discussions.microsoft.com> wrote in
>> news:556511CF-CFC1-4E2A-9DA9-0801BBF72F9A@microsoft.com...
>> > Hi,
>> >
>> > I am currently working as an Analyst on a .NET Web Project using
>> > ASP.NET
>> > and
>> > C#.NET.
>> >
>> > I have a couple of, at least what should be, quick questions:
>> >
>> > 1. My understanding of UML says that the Controller classe of a
>> > Sequence
>> > Diagram should be implemented as a private class within a component.
>> > However, my Programmer has said that since the ASP code lives outside
>> > the
>> > component, the Controller must be implemented as public. Is this
>> > correct?
>> > If
>> > so, doesn't this force the controller to become an interface for the
>> > component?
>>
>> Sequence diagrams show what's happening in your app, the temporal order
>> of
>> events (meaning the english word "event", not the C# keyword...). These
>> events are usually function calls. (and, of course .net *does* have
>> function
>> calls) But I've also seen sequence diagrams showing windows messages or
>> HTTP
>> requests. It depends on what you want to model with the UML diagram.
>>
>> There is no "right way to implement" these diagrams.
>>
>> > 2. On a similar point. UML suggests that each component should have at
>> > least
>> > one Interface (although more may be used). In my project I have decided
>> > to
>> > use a single Interface for a component with 5 entities. However, my
>> > Programmer has said that unless all entities have the same methods
>> > (which
>> > they don't) then the same interface cannot be used. Is this correct? If
>> > so,
>> > what is the point in combining like entities into a single component?
>>
>> Your programmer is correct. That's the whole point of an interface. (You
>> shouldn't use them if you don't know what they're good for only because
>> some
>> UML book told you every component "should have one")
>>
>> Niki
>>
>>
>>



Relevant Pages

  • Re: .NET Limitations when implementing UML
    ... The second point confirms what my Programmer has been telling me but does go ... implements them then i'll re-work all my sequence diagrams - great!!! ... The question is really that Controller classes in UML are private and can ...
    (microsoft.public.dotnet.general)
  • Re: Applications of sequence diagrams
    ... Being the part of UML, sequence diagrams are used in modeling process. ... What *other* applications do you forsee? ...
    (comp.object)
  • Re: Sequence diagrams in UML
    ... You don't need any special UML software to communicate UML. ... There is no software which will make sequence diagrams for you! ... >uml tool to make sequence diagrams, ...
    (comp.lang.java)
  • Re: is uml appropriate for this ...
    ... process for which I am writing my app using uml. ... We have used sequence diagrams to document processes. ...
    (comp.object)