comp.lang.ada
 help / color / mirror / Atom feed
* ADA 95 Child Packages and UML
@ 1999-10-22  0:00 Peter Lindgren
  1999-10-24  0:00 ` Philippe Dalleau
  0 siblings, 1 reply; 4+ messages in thread
From: Peter Lindgren @ 1999-10-22  0:00 UTC (permalink / raw)


Hello!
How do I model Ada95 child packages in UML?
Is it possible at all?

TIA,
Peter
-- 
-- Peter Lindgren  Design Engineer  Ericsson Microwave Systems AB --
-- http://www.ericsson.se/microwave         M�lndal ECN 865 70503 --
-- ERIEYE Airborne Early Warning System       Get your own AWACS! --
-- Opinions above - expressed or implicit - are strictly personal --




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: ADA 95 Child Packages and UML
  1999-10-22  0:00 ADA 95 Child Packages and UML Peter Lindgren
@ 1999-10-24  0:00 ` Philippe Dalleau
  1999-10-25  0:00   ` Richard D Riehle
  0 siblings, 1 reply; 4+ messages in thread
From: Philippe Dalleau @ 1999-10-24  0:00 UTC (permalink / raw)


Hello,

Peter Lindgren wrote:
> 
> Hello!
> How do I model Ada95 child packages in UML?
> Is it possible at all?

Sure but it depends a lot on the UML tool you choose.
With Rational Rose/Ada 95 : via a class or a component whose name
follows the rule : identifier.{identifier}.

--
Philippe Dalleau
--
All the websites of my company :
http://www.aeromatra.com and http://www.lagardere.fr/us/sites/index.html




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: ADA 95 Child Packages and UML
  1999-10-24  0:00 ` Philippe Dalleau
@ 1999-10-25  0:00   ` Richard D Riehle
  1999-10-28  0:00     ` Peter Lindgren
  0 siblings, 1 reply; 4+ messages in thread
From: Richard D Riehle @ 1999-10-25  0:00 UTC (permalink / raw)


In article <38132103.380DA624@club-internet.fr>,
	Philippe Dalleau <phda@club-internet.fr> wrote:

>Hello,
>
>Peter Lindgren wrote:
>> 
>> Hello!
>> How do I model Ada95 child packages in UML?
>> Is it possible at all?
>
>Sure but it depends a lot on the UML tool you choose.
>With Rational Rose/Ada 95 : via a class or a component whose name
>follows the rule : identifier.{identifier}.

No. It is not possible to correctly model child library units
in UML.  There is a workaround, as described above, but it is 
something of a kludge. There is no UML way to properly represent 
an architecture built on child and private child library units.

In its defense, UML is a modeling tool.  Asking a question such
as "Can I model xxxx in UML," is a lot like asking, "Can I program
the cache in C++ (or Ada)?"  One must consider the level of 
abstraction being addressed by a linguistic protocol.  Many
software architects believe UML and its various associated methods
to be just the right tool for abstracting away the kind of detail
that distracts from architectural considerations.

On the Ada side, UML includes mechanisms that cannot be easily 
designed in Ada.  The most compelling examples of these are 
the "association class" and multiple inheritance.  

This problem is not unique to Ada. UML does not represent every C++
construct, and vice versa.  It highlights a principle described 
in Bertrand Meyer's, "Object-Oriented Software Construction" which
he calls, "Linguistic Modular Units."  The idea is that the language
of modeling must correspond to that of design, that of programming,
and that of testing, etc. throughout the software lifecycle.  At every
place in our software effort in which there is a linguistic disconnect,
we increase the probability for failure.  I don't know that anyone
has ever done serious research on this issue.  It would probably make
a good Ph.d. thesis for someone.

Richard Riehle
http://www.adaworks.com





^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: ADA 95 Child Packages and UML
  1999-10-25  0:00   ` Richard D Riehle
@ 1999-10-28  0:00     ` Peter Lindgren
  0 siblings, 0 replies; 4+ messages in thread
From: Peter Lindgren @ 1999-10-28  0:00 UTC (permalink / raw)


Richard D Riehle wrote:
> 
> In article <38132103.380DA624@club-internet.fr>,
>         Philippe Dalleau <phda@club-internet.fr> wrote:
> 
> >Peter Lindgren wrote:
> >>
> >> Hello!
> >> How do I model Ada95 child packages in UML?
> >> Is it possible at all?
> >
> >Sure but it depends a lot on the UML tool you choose.
> >With Rational Rose/Ada 95 : via a class or a component whose name
> >follows the rule : identifier.{identifier}.

I guess you have a dependency from the child to the parent
   ___         ___
  | P |<------| C |
   ---         ---

if the child uses its parent (as it often does).
However, I see it also as some kind of inheritance, but static
and private, with no overloading. Strange but very useful.

I would suggest that the dependency is stereotyped as <<Child unit>>.
Anybody to disagree?

> No. It is not possible to correctly model child library units
> in UML.  There is a workaround, as described above, but it is
> something of a kludge.
[snip]

> In its defense, UML is a modeling tool.  Asking a question such
> as "Can I model xxxx in UML," is a lot like asking, "Can I program
> the cache in C++ (or Ada)?"

I do not agree here. My question is legimite, since you (can) do
detailed modelling in UML, not just stick to the analysis model.

However, that is a different thread I not intend to start due to
lack of time...  :-(

/Peter
-- 
-- Peter Lindgren  Design Engineer  Ericsson Microwave Systems AB --
-- http://www.ericsson.se/microwave         M�lndal ECN 865 70503 --
-- ERIEYE Airborne Early Warning System       Get your own AWACS! --
-- Opinions above - expressed or implicit - are strictly personal --




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~1999-10-28  0:00 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-10-22  0:00 ADA 95 Child Packages and UML Peter Lindgren
1999-10-24  0:00 ` Philippe Dalleau
1999-10-25  0:00   ` Richard D Riehle
1999-10-28  0:00     ` Peter Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox