[comp.software-eng] Vendors of Ada ADTs

wtwolfe@hubcap.UUCP (Bill Wolfe) (12/25/88)

   In response to e-mailed queries regarding the addresses of vendors
   for Ada ADTs and other reuseable software components, here is a summary:


      1) Wizard Software
         835 S. Moore Street
         Lakewood, CO  80226  USA

         Wizard sells the collection of ADTs described by Grady Booch 
         in his book, "Software Components with Ada" (or words to that
         effect).  A wide spectrum of implementations is provided, 
         covering variations such as whether the ADT is of finite 
         or infinite capacity, whether the ADT has been hardened
         such that it can cope with the shared-variable environment
         (in which a single instance of the ADT is subject to simultaneous
         demands for service from an arbitrary number of tasks), etc.  

         Booch's book also describes ADT construction techniques in 
         sufficient detail to enable any reasonably intelligent 
         programmer to construct his/her own toolbox of ADTs,
         and that approach is not without its advantages. 


      2) Lib Systems, Inc.
         P.O. Box 18173
         Anaheim, CA  92817  USA

         Lib Systems provides software in the following categories:
         Mathematical Algorithms, Real-Time Control Systems, Graph
         Algorithms, Board Support Packages, Business Packages, String
         Processing, Sorting Algorithms, Searching Algorithms, Geometric
         Algorithms, and Miscellaneous.  Appropriate ADTs are provided
         for use with these packages, where appropriate; for example,
         both sparse and dense representations of a graph ADT are
         provided.  However, they do not appear to provide the depth
         of coverage available in the Booch components; judging from
         the Lib Systems catalog, I would doubt that their graph ADTs
         would survive long in a multitasking environment.
 
    
   As I mentioned in comp.lang.ada earlier, I prefer to construct my own
   ADTs, and I therefore have absolutely no experience with, and in no
   way do I endorse, the products of either vendor.  I have summarized
   the knowledge available to anyone who reads the vendor catalogs and
   the "Software Components with Ada" book.  It is recommended that anyone
   who is considering purchasing products from either vendor become familiar
   with objective reviews of those products; perhaps someone who knows of
   the existence of such reviews could summarize the results.

   Other reuseable software sources which I have heard of but have no
   specific information on include the GRACE library from EVB, and the
   RAPID library of MIS software.  Anyone having knowledge of these or
   other sources should feel free to contribute a followup article.   



                                            Bill Wolfe

                                     wtwolfe@hubcap.clemson.edu

Jerome_V_Vollborn@cup.portal.com (12/27/88)

I have used the GRACE package from EVB and it did implement the ADT's well. 
The test programs and documentation are excellent.  The design methodology 
used was Grady Booch's version of object oriented design as filled in by 
Ed Berard.  The modules furnished were worth the price ($50 000 for a site 
license which I understand is no longer available) as examples of object 
oriented design.  BTW EVB Software Engineering furnishes a warranty with the 
product (apparently Ed doesn't like to be considered legally insane (i.e., 
not responsible for his actions)).

Jerome_V_Vollborn@cup.portal.com (01/04/89)

Bill Wolfe sent a note saying that I should clarify my previous posting.

EVB Software Engineering has a package of ADT's that generally follow Grady 
Booch's taxonomy.  They are a family of generic packages for stacks, lists, 
queues, ... There are versions of each ADT for managed/unmanaged, single user/
multi-user, balking/non-balking, ... Write to EVB and they will supply a 
sales brochure with all of the details.

Each of the components has three major pieces:  a design description, a test 
program, and the Ada code.  The design description and test cases will answer 
Dr. McKay's questions (what services are provided, how well are the services 
provided, and under what circumstances) without having to reference the code 
itself.

The most impressive things about the GRACE package (to me at least) are (1) 
the design documentation is complete for all of the components; (2) the 
components are consistantly well commented, documented and tested; (3) the 
code is very clean and a very good example of what Ada code should look like 
(e.g., exceptions are only used for exceptional conditions not as sneaky 
goto's as in Grady Booch's book on reusable components); and (4) Ed Berard 
envisions these components as the equivalent of SSI IC's in the hardware 
world.  Note that the GRACE components have the three elements necessary to 
be truly reusable:  a design document element, test cases, and source code.

The address for EVB is:

		EVB Software Engineering, Inc.
		5303 Spectrum Drive
		Frederick, Maryland 21701

		301-695-6960

I don't have the name of the lady who handles the orders and shipping.  I 
have changed companies recently and her name got lost.