comp.lang.ada
 help / color / mirror / Atom feed
From: Martin Dowie <martin@dowie-cs.demon.co.uk>
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: <384127A5.61431A14@dowie-cs.demon.co.uk> (raw)
In-Reply-To: 11f733ec.57d88b68@usw-ex0107-042.remarq.com

jim_snead wrote:

> I have been studying the Rational Apex product
> as an Ada 95 and Java development environment.
> Apex has an unusual feature called "subsystems"
> which to me seems quite useless.
>
> Apparently the notion is that you can place related
> pieces of software into a subsystem, which is a
> directory structure with strict naming conventions
> (ends with a *.ss which nests other directories).
> Other developers can place their own software into
> another subsystem as a library.  The "subsystem"
> seems to be a legacy organizing feature from
> archaic software practices.

> For any practical development in Java or Ada 95,
> this notion seems particularly baroque and
> antiquated.  With Java, the package namespace is the
> organizing feature. Even though Rational sells an
> Apex for Java, it is beyond me how subsystems would
> even begin to work with Java. I guess that one
> could put all of an organization's Java source libraries
> into a single subsystem. But then what is the point
> of a subsystem? In the same way, I believe that Ada
> package hierarchies are sufficient to avoid the
> need for multiple subsystems.

>
> Why would anyone consider paying money for Apes
> when it does not pay any attention to common
> Java or Ada 95 deployment philosophies? Or am I
> missing something?  (I do not care at all about
> C or Ada 83).

(pedantic point - they place their code in as a 'view' not a library)

for small systems one subsystem would be enough but for the large embedded
systems i
work with subsystems are pretty useful. apart from adding a layer of
organization to the
views - you have to have somewhere to put the views. so, either the tool
dictates how to
name such repositories which everyone must follow (automatically), or you make
up your
own rules (and every engineer will have their own preference, or worse, every
engineer in
every project!) so that writing your own tools becomes just that little bit
harder. a
common approach is to have a subsystem per piece of hardware your software
monitors/controls (thread?/process?/task?), other subsystems to deal with
classes,
shared data stores and inter task (process/thread) communications plus a 'main'
subsystem to pull them all together in one executable.

the real point about the subsystem is that this is where the repository for all
the code is
(including a note of what histories are available) - the views do not
automatically go
looking for each other to see which view is using which compilation unit at
whatever issue
or history.

Apex describe them on their web site -
"Rational Apex provides a framework for defining architectural components, known
as Rational Subsystems�. These subsystems integrate with the Rational Apex
version control system and with Ada 95 package hierarchies. Rational Apex
prevents undesirable code references by controlling visibility among
architectural components. Attempts to improperly reference units results in
compile time error messages. In this way, subsystems enable users to
automatically express and enforce the large-scale structure, or architecture, of
their applications."






  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 [this message]
1999-11-28  0:00   ` jim_snead
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     ` 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-02  0:00     ` Andreas Winckler
1999-12-01  0:00   ` David W. Glessner
  -- strict thread matches above, loose matches on Subject: below --
1999-11-26  0:00 Tom_Hargraves
     [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
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
replies disabled

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