comp.lang.ada
 help / color / mirror / Atom feed
From: jim_snead <basswoodNObaSPAM@my-deja.com.invalid>
Subject: Re: Is Apex dead as an environment for Ada & Java?
Date: 1999/11/28
Date: 1999-11-28T00:00:00+00:00	[thread overview]
Message-ID: <0a0133f8.3baf10c0@usw-ex0101-001.remarq.com> (raw)
In-Reply-To: 384127A5.61431A14@dowie-cs.demon.co.uk

In article <384127A5.61431A14@dowie-cs.demon.co.uk>, Martin Dowie
<martin@dowie-cs.demon.co.uk> wrote:
> common approach is to have a subsystem per piece of hardware your
> software
> monitors/controls (thread?/process?/task?), other subsystems to

Here is an essential problem with Rational
subsystems. Say you do have a software
subsystem for each one of your hardware items.
Let us call them Gamma and Omega.

So the Gamma subsystem implementors create a
couple of packages called "Logging" and "Debug".
These are not meant to be used outside of the
Gamma subsystem so they are not made visible
to the outside world via whatever mechanism
Apex uses.

Now say that the Omega subsystem has their
own internal packages called "Logging" and "Debug".
The Omega team goes ahead and develops these as
well, oblivious to the rest of the world.

Now the subsystem that you propose to integrate
these other subsystems comes along and tries
to link Omaga and Gamma into a single exec.
Of course, this won't work because of name clashes
between the hidden packages. Time to use another
approach!


Now here is how you do it with Ada 95. First create
a single subsystem repository. Next create two package
hierarchies called Gamma and Omega and organize these
into a directory structure of your choosing.

For the private packages, you create (ahem) private packages.

    private package Gamma.Logging is ...
    private package Gamma.Debug is ...

    private package Omega.Logging is ...
    private package Omega.Debug is ...

This Ada 95 approach apparently solves the original
subsystem problem better than the legacy Apex solution
does because it will eliminate the integration error while
solving the privacy problem.


Apex "Views" (i.e. controlled directories) and
"Histories" (i.e. branches) plus version control
are all that are required for development.
The concept of a subsystem is
counterproductive as it adds another variable to an
overspecified set of equations. If Apex subsystems
are to be used for anything other than an elaborate
Ada Include Path, it is certainly over-hyped for
Ada 95 use.  Apex subsystems add no value
in guaranteeing integration success. Ada 95 got it
right, and the old guard tool vendors are trying
to create FUD in how to correctly integrate large
software projects.




* Sent from RemarQ http://www.remarq.com The Internet's Discussion Network *
The fastest and easiest way to search and participate in Usenet - Free!





  reply	other threads:[~1999-11-28  0:00 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-11-26  0:00 Is Apex dead as an environment for Ada & Java? jim_snead
1999-11-28  0:00 ` Martin Dowie
1999-11-28  0:00   ` jim_snead [this message]
1999-11-28  0:00     ` mike_zebrowski
1999-11-28  0:00       ` jim_snead
1999-11-29  0:00         ` reason67
1999-11-29  0:00           ` jim_snead
1999-11-30  0:00             ` reason67
1999-11-30  0:00               ` jim_snead
1999-11-30  0:00             ` Martin Dowie
1999-11-29  0:00         ` Samuel T. Harris
1999-11-29  0:00           ` jim_snead
1999-11-29  0:00             ` John Duncan
1999-11-30  0:00               ` reason67
1999-12-01  0:00               ` Robert Dewar
1999-11-30  0:00                 ` John Duncan
1999-11-30  0:00             ` Samuel T. Harris
1999-11-30  0:00             ` Martin Dowie
1999-12-01  0:00             ` Aidan Skinner
1999-12-02  0:00               ` Robert Dewar
1999-12-03  0:00                 ` Simon Wright
1999-12-03  0:00               ` David C. Hoos, Sr.
1999-11-30  0:00         ` Martin Dowie
1999-11-29  0:00       ` jim_snead
1999-11-30  0:00         ` Samuel T. Harris
1999-11-30  0:00           ` jim_snead
1999-12-01  0:00             ` Samuel T. Harris
1999-11-30  0:00     ` Martin Dowie
1999-11-30  0:00       ` jim_snead
1999-12-01  0:00       ` Robert Dewar
1999-12-01  0:00         ` Martin Dowie
1999-12-01  0:00     ` jim_snead
1999-12-02  0:00       ` Ted Dennison
1999-12-02  0:00         ` Larry Kilgallen
1999-12-09  0:00           ` Mark Hertel
1999-12-11  0:00         ` Robert Dewar
1999-12-11  0:00           ` Richard D Riehle
1999-12-11  0:00             ` Marin D. Condic
1999-12-11  0:00             ` Marin D. Condic
1999-12-11  0:00             ` Marin D. Condic
1999-12-11  0:00             ` Marin D. Condic
1999-12-02  0:00       ` Robert Dewar
1999-11-30  0:00   ` Simon Wright
1999-11-30  0:00     ` jim_snead
1999-11-30  0:00 ` Tucker Taft
1999-11-30  0:00   ` jim_snead
1999-12-01  0:00     ` Larry Kilgallen
1999-12-01  0:00 ` Andreas Winckler
1999-12-01  0:00   ` jim_snead
1999-12-02  0:00     ` Andreas Winckler
1999-12-02  0:00     ` Samuel T. Harris
1999-12-02  0:00       ` jim_snead
1999-12-06  0:00         ` Samuel T. Harris
1999-12-18  0:00         ` Steven Hovater
1999-12-01  0:00   ` David W. Glessner
  -- strict thread matches above, loose matches on Subject: below --
1999-11-26  0:00 Tom_Hargraves
1999-11-26  0:00 ` jim_snead
1999-11-26  0:00   ` Steven Hovater
1999-11-26  0:00     ` jim_snead
1999-12-09  0:00       ` Wes Groleau
1999-12-12  0:00         ` jim_snead
1999-11-27  0:00     ` Robert Dewar
1999-12-09  0:00   ` Henrik Delin
     [not found] ` <01bf3857$22ca59a0$022a6282@dieppe>
1999-11-26  0:00   ` Ed Falis
     [not found]   ` <01bf38cc$04d205e0$022a6282@dieppe>
1999-11-27  0:00     ` jim_snead
1999-12-18  0:00       ` Steven Hovater
replies disabled

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