Description: Software Engineering Digest v5n50 From: CSBVAX: Date: 25-DEC-1988 15:23:36 From: CSBVAX::CSBVAX::MRGATE::"SMTP::MITRE.ARPA::SOFT-ENG" Date: Sun, 25 Dec 88 14:09:11 EST From: soft-eng@mitre.arpa (Alok Nigam) Full-Name: Alok Nigam Message-Id: <8812251909.AA04863@mitre.arpa> Organization: The MITRE Corp., Washington, D.C. To: soft-eng-dist@mitre.arpa Subject: Software Engineering Digest v5n50 Software Engineering Digest Saturday, 24 Dec 1988 Volume 5 : Issue 50 Today's Topics: Pseudo-Code description... Re: software complexity measures IEEE NEWS GROUP CREATED Looking for Software Publishers Makefile Generators (3) ALGORITHM DESIGN BIBLIOGRAPHY - RESULTS (245 lines) Re: Software Maintenance for the UNIX Operating System The High Cost Of Software Practice & Experience (3) What's the Best OOP Text? (2) Human Factors and Software Engineering Re: Professional Programmers (was: Seeing the future) Vendors of Ada ADTs ------------------------------------------------------------ Date: 13 Dec 88 04:41:41 GMT From: munnari!basser!natmlab!ipso!metro!pta!teti!nswitgould!ausonics!hanifl@uune t.uu.net (Hanif LADHA) Organization: Ausonics Pty Ltd, Sydney, Australia Subject: Pseudo-Code description... Would like a ``standard'' way in which I can represent pseudo-code in a design specification. Such specifications are reviewed by hardware engineers who aren't neccessarily fluent with a programming langauge (eg C). Appreciate any info. Thanks in advance. Ps: Oh yes and Merry Christmas to everybody! ------------------------------ Date: 17 Dec 88 07:05:38 GMT From: tektronix!reed!psu-cs!warren@bloom-beacon.mit.edu (Warren Harrison) Organization: Dept. of Computer Science, Portland State University; Portland OR Subject: Re: software complexity measures Numerous software complexity metrics are currently available. The most popular (at least as far as commercial software metric analyzers go) are the Cyclomatic Complexity and Software Science. To the best of my know- ledge, there are currently around half-dozen commercial software metric packages on the market, and they all include these two families of metrics. The October '89 issue of Computer Language Magazine will feature a 'focus on' section for software metric tools ... I don't yet know which one's they'll be looking at, but will post it when I find out if there is any interest. Two more recent trends tend to be towards "interconnection complexity" and data structure/flow complexity. The interconnection metrics are best exemplified by Sallie Henry's metric, though a number of others are also available. No commercial tools do the interconnection metrics (that I know of), but a couple do some version of data flow (eg, span of reference). I mention the metrics used by the commercial tools mainly because (1) these are being used 'in the trenches' and not on student projects, (2) the companies that make them are still in business which means at least some customers are happy with the metrics. If anyone wants to learn more, send me e-mail, write me or call me. ------------------------------ Date: 20 Dec 88 15:01:42 GMT From: att!whuts!homxb!hou2d!krsm@bloom-beacon.mit.edu (S.MURTHY) Organization: AT&T Bell Laboratories, Holmdel Subject: IEEE NEWS GROUP CREATED IEEE NEWS GROUPS (comp.org.ieee and att.society.ieee) Friends, The IEEE NEWS GROUPS, one for circulation within AT&T only called att.society.ieee and another called comp.org.ieee for world-wide circulation and use have been created. I sincerely thank all of you who have supported in this effort. I will try to get an article or some type of coverage in IEEE INSTITUTE (a news suppliment to IEEE Spectrum) to help publicize about this group and also increase awareness about the groups' usefulness. I encourage all of you to post any news information, call for papers, conferences, special lectures and also any professional discussions. To post anything Type postnews (Return) and then you get user friendly messages. I will be posting some background info on the news groups. Thanks to all of you, again. ------------------------------ Date: 18 Dec 88 20:33:49 GMT From: kong!emory!stiatl!todd@gatech.edu (Todd Merriman) Organization: Sales Technologies Inc., Atlanta, GA Subject: Looking for Software Publishers I am putting together a list of software publishers who are interested in evaluating software from independent developers. It will be catagorized by: o/s: msdos, unix, vms, etc. function: tools, office automation, languages, communications Please e-mail Todd Merriman ...!gatech!stiatl!todd ------------------------------ Date: 19 Dec 88 14:38:08 GMT From: ispi!tfli!cpmain!mergvax!rkxyv@uunet.uu.net (Rob Kedoin) Organization: Linotype Co., Hauppauge NY Subject: Makefile Generators I requested this information from comp.sources.wanted without any success. Can anyone from this newsgroup help ? - --- Does anyone know of any Public Domain makefile generators for UNIX ? My problem is that programmers(myself included) occasionally forget to add dependencies into their Makefiles. I am looking for a tool that will somehow create/verify a Makefile so I can be confident that no dependencies have been forgotten. I would like information on non-public domain, UNIX, programs if anyone has it. ------------------------------ Date: 22 Dec 88 00:14:00 GMT From: hpda!hpcuhb!hpindda!collin@bloom-beacon.mit.edu (Collin Park) Organization: HP Information Networks, Cupertino, CA Subject: Re: Makefile Generators 'mkmf' (according to my manpages, was written by UC Berkeley) is non public domain i guess. the manpage i have also refers to an article called 'automated generation of make dependencies' in software practice and experience 14:6 pp 575-585 (June 1984). i don't know of any public domain ones. ------------------------------ Date: 22 Dec 88 16:39:46 GMT From: jerbil@csvax.caltech.edu (Joe Beckenbach) Organization: California Institute of Technology Subject: Re: Makefile Generators The X windows system has a 'makedepend' command which parses like a C preprocessor to find dependencies which might be hidden by #defines, other #includes, and #if/#ifdef/#ifndef sequences. There are tradeoffs involved of course: 1- In building 'makedepend' in X windows, apparently a section of the cpp source code is needed to ensure proper decoding and handling of #if's. 2- Each file is processed once. If included multiple times, it simply reuses what information it has. This causes problems in the unfortunate case where a #if/#else clause selects one of two #includes in one file, and the other in another: the first time through will set the choice of dependencies in stone. The man page says that the algorithm assumes that all the source files for a given makefile use the roughly the same set of -I and -D flags. The mechanism is based at bottom on cobbling together a useful framework from a Berkeley kernel-building makefile which modifies itself to add appropriate dependencies. [Sorry, can't remember where it is. I think it's in a GENERIC directory somewhere. (And I call myself a system manager. :-) ] ------------------------------ Date: 21 Dec 88 17:49:51 GMT From: rochester!kodak!ektools!thomas@rutgers.edu (Thomas B. Kinsman) Organization: Eastman Kodak, Dept. 47, Rochester NY Subject: ALGORITHM DESIGN BIBLIOGRAPHY - RESULTS (245 lines) The following is a bibliography generated by a recent request to the net for reference books on algorithms in general. No names will be mentioned, but replies came from many countries around the world. Several people that I consider influential in our field responded. Thanks are expressed for all who responded. I found it amusing that there were several different combinations of titles and authors given for "THE Dragon Book". The rumors are not clear as to whether the authors (Aho, Hopcroft, Sethi, and Ullman) are married to each other, or are simply joined at the waist from birth. :-) You can all speculate about that among yourselves. Certainly they have made an important contribution to our field. People generally mentioned Knuth. However, Knuth was frequently mentioned as a lower priority choice when priorities were men- tioned. Many expressed difficulty with the way algorithms were given in Knuth. Others suggested that Knuth's method of presentation leads to a better understanding of the method of implementation. Sedgewich was a popular first choice. However, no one mentioned that there is now a second edition of this book. Note: This was not a scientific survey. Votes were cast for a reference by mentioning it in a positive way. In the case where prioritized lists were received, no weights were assigned. Ti- tles, Authors, etc... were taken on good faith. The existence of references was NOT CHECKED. Some people just responded by mentioning authors. Referring to a book as "Smith, and Jones" is not always helpful, especially if Smith and Jones ARE really married to each other and have jointly written several books. I did my best to figure out which book was intended, without killing myself in the process. Some respondents just mentioned titles. Some books are so closely related, i.e. the "Numerical Recipies in..." series, that they were grouped together. At any rate, this is just an information source for your consideration. Neither I, nor my company, recommend any of them. The following sources of inform- ation are some you may wish to know about: A more verbose list is posted to the news group "comp.misc". ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ General Quotes: "...you judge the utility of a reference handbook by the condi- tion (the more battered the copy, the more it's been used)..." "...It's really difficult to pick a first, because this is nearly always context-dependent..." "...I hunt around other peoples desks or wander through the load of sources we have on our system..." Source: "Algorithms", by Robert Sedgewick Votes: 19 quotes: "...general purpose..." Source: "The Art of Computer Programming", by Donald E. Knuth Volume 1/ Fundamental Algorithms Volume 2/ Seminumerical Algorithms Volume 3/ Sorting & Searching Votes: 39 quotes: "...the last place I go..." "...No question. Knuth..." Source: "Intro to Data Structures & Algorithms", (or perhaps), "Data Structures & Algorithms", by Aho, Hopcroft & Ullman Votes: 9 quotes: "It's a great little book of basic algorithms & data structures. Nothing too outrageous, though. My copy is almost worn out." Source: Data Structures + Algorithms = Programs, by Wirth Votes: 6 quotes: "...slightly easier to read, & includes quite a bit of Modula-2 code..." "...A notorious book...Disgusting..." Source: Design & Analysis of Computer Algorithms, by Aho, Hopcroft & Ullman Votes: 6 Source: The Theory of Parsing, Translation & Compiling, by Aho & Ullman Votes: 2 Source: Compiler Design, by Hopcroft, Ulmman & Sethi quotes: These are the "dragon" books. Source: Principles of Compiler Design, by Aho, Hopcroft & Ullman Votes: 4 quotes: The "dragon" book. Source: Compiler Design, by Aho, Hopcroft & Ullman Votes: 3 quotes: This is the second Dragon book. Source: Intro to Formal Languages, Automa Theory & Computation by: Hopcroft & Ullman Source: Handbook of Algorithms & Data Structures, by G.H. Gonnet Pub: Addison-Wesley, 1984 Votes: 4 quotes: "I often look at [this book]. It is useful in itself (with code in Pascal and/or C) but also full of references-- to 23 textbooks & 683 papers to be exact." Source: Writing Efficient Programs, by Bentley Source: Programming Pearls, by Bentley Source: Numerical Recipes in C, the art of scientific computing Numerical Recipes in FORTRAN, the art of scientific computing. Numerical Recipes, the art of scientific computing. by: W.T. Vetterling, S.A. Teukolsky, W.H. Press, B.P. Flannery Pub: Cambridge, Cambridge University Press, 1988. ISBN 0-521-35465-X Votes: 8 quotes: "...It doesn't matter which language, really..." "...for numerical stuff..." Source: Structure & Interpretation of Computer Programs, by Abelson & Sussman Votes: 3 quotes: "...for numerical stuff..." by: Bender & Orszag quotes: "...for numerical stuff..." Source: Artificial Intelligence Programming by: Charniac, Reisbeck, Mcdermott & Meehan quotes: "...It's not the most fundamental book, but I've found [it] to be the book that establishes the leap from 'Let's Learn Lisp!' to Lisp in the Real World - filled with all sorts of ideas, & permanently beside my terminal." Source: Recursive Techniques in Programming, by D.W. Barron, quotes: New York, 1968: American Source: Fundamentals of Data Structures Fundamentals of Data Structures in Pascal by: Horowitz & Sahni Votes: 5 quotes: "...my personal favorite..." Source: Principles of Data Structures & Algorithms by: Horowitz & Sahni Votes: 2 quotes: "...for general data structures..." Source: Fundamentals of Computer Algorithms, by Horowitz & Sahni Source: Computers & Intractability: A Guide to the Theory of NP-Completeness, by Michael R. Garey & David S. Johnson. Votes: 2 quotes: "...Perhaps not an algorithm catalog in the strict sense, but I find it useful in problem solving..." Source: Heuristics, by Pearl quotes: "...if the problem is NP complete..." Source: How to Solve It by Computer, by Dromey R.G pub: Prentice/Hall International Series in Comp. Sci. Source: Combinatorial Optimization: Algorithms & Complexity by: Christos H. Papadimitriou & Kenneth Steiglitz quotes: "fairly new but looks like its full of interesting stuff. I looked at several similar ones & bought this." Source: Computer & Job-Shop Scheduling Theory by: E. G. Coffman, Jr. (Ed.) quotes: "A collection written by several recognizable people." Source: "Factorization Methods For Discrete Sequential Estimation" quotes: "useful for estimation algorithms." Source: Data Structures & Network Algorithms, by Tarjan quotes: "...for network problems..." Source: Graphs & Network Algorithms, by Tarjan quotes: "...for combinatorial algorithms & recursive structures..." Source: Priciples of Database & KnowledgeBase Systems, by Ullman Votes: 2 Author: Teorey & Fry quotes: "...for data base work..." Source: Implementations of PROLOG, by Campbell Source: The Computer Modelling of Mathematical Reasoning, by Bundy Source: Anatomy of LISP, by Allen Source: Natural Language Understanding, by Allen Source: Data Structures, by Reingold & Hansen Source: Data Structures, by Standish Votes: 2 quotes: "...understandable level with good Knuth style specifications. Quite complete also..." Source: The Unix Programming Environment, by Kernighan & Pike Source: Software Tools, by Kernighan Source: Matrix Computations, by Holub & Van Loan quotes: "...for numerical analysis..." Source: Artificial Intelligence, by Winston quotes: "...for AI work, either of the books by Winston..." Source: LispCraft, by Wilensky Source: Computer Algorithms, by Sara Baase Source: Lisp, by Winston Source: The Art of Prolog Source: Prolog programming for AI, by Bratko Source: Fundamentals of Interactive Computer Graphics by: Foley & Van Dam Votes: 2 quotes: "...for graphics stuff..." Author: Chris Date quotes: "...Relational Databases..." Author: Ullman, Liskov, Guttag & Sowa quotes: "...Data structures/abstraction..." Source: Any number of articles in CACM Collected Algorithms of the ACM (CALGO). Comm. of ACM TODS (Transactions on Database Systems) Votes: 5 Source: Recent journal article(s) I've read on that problem Source: Algorithms in SNOBOL4, by Gimpel Source: "...the SIGARCH world..." ------------------------------ Date: 14 Dec 88 18:51:18 GMT From: mcvax!unido!tub!coma!axel@uunet.uu.net (Axel Mahler) Organization: Technical University of Berlin, Germany (West) Subject: Re: Software Maintenance for the UNIX Operating System >I'm looking for final solution in maintaining UNIX source code... We won't claim that this is the 'final solution', but what you're looking for sounds pretty much like "shape", a toolkit that we've just implemented. The toolkit consists of a set of version control commands and "shape", a significantly enhanced Make-oid. "shape" and the version control commands are integrated on top of AFS ("Attributed File System"), a dedicated version object base. The system features RCS-style version control and a configuration identification and - -build process that has full access to all revisions in the object base (other than make which only knows about plain files). AFS also supports derived object management, i.e. it maintains a cache of multiple versions of compiled object-files (e.g. compiled c-files with different compile switches). The "shape" program itself is upward compatible to Make in that it can properly handle conventional Makefiles. The *Shapefile* however, uses Makefile-style dependencies as (versionless) 'abstract system model' and employs 'configuration selection rules' to dynamically bind particular version objects in the object base to the names listed in the system model. The version selection mechanism exploits AFS' ability to maintain any number of arbitrary attributes for objects in the object base. This yields a configuration identification mechanism similar to (but more flexible than) DSEE's 'configuration threads'. On special request, shape records an identified configuration in a 'configuration identification document' (CID) which has the form of a completely bound Shapefile (all object-instances are explicit). This makes it particularly easy to rebuild recorded configurations. As CID's are themselves documents, they can be placed under version control, making it easy to maintain histories of entire software systems. One of the most useful features of shape is its support of various variant administration techniques. Shape makes no assumptions about the semantics of the 'variant' notion other than having "alternative (conceptually equivalent) instances of the same concept" (e.g. 'module'). Despite the particular semantics of a certain variant-concept, there is a small number of techniques to physically handle variants. These techniques are what shape supports. Most commonly used techniques are: - equally named files in different directories - one source file representing multiple variants that are extracted by a preprocessor using different preprocessor switches (e.g. conditional compilation) - one source file processed by different tools or different tool versions/variants (e.g. cross compilation, different coders) - combinations of the above. Shape includes a variant definition facility that allows very flexible and convenient handling of all of the above variant administration techniques. The object base abstraction presented by AFS provides uniform access to immutable revisions of data entities ('files') stored in special archives, and mutable regular UNIX files. Consequently, the AFS based toolkit lives peacefully (and meaningfully!) together with standard filesystem applications (editors, compilers, formatters etc.). Cooperative work within projects is supported by a build-in status model, controlling visibility of version objects, and locking, a primitive form of 'long transactions'. The general concept of object attributes provides for passing information between indiviual tools that would otherwise be lost. This mechanism is useful for building integrated environments from a set of unrelated tools. The toolkit character of the system allows to use it via shell-commands, or to build a customized environment on top of it. As an example, we used GNU-Emacs as an alternate user interface to the system which lead to a much more comprehensive, integrated user interface. For more sophisticated requirements, there is a complete C-language interface to AFS, on top of which all the toolkit programs are built. There are - of course - some drawbacks that appear worth mentioning. First of all, the shape toolkit implementation has prototype character. Although all of the described functionality is operational, we don't have any experience with larger scale software development projects. The system may still contain serious bugs. Second, shape is not exactly blindingly fast. It kind of hurts to use it on a MicroVAX II (our development system), especially when an average of 10 people are logged in. People who have a 68020 class workstation on their desk will probably have fun with shape. Some important aspects, such as distributed builds (as addressed by DSEE), are not present in shape. A word concerning the status of the system. The shape toolkit is in beta test at a number of companies right now. It is, however, not clear to what degree shape is used on large scale software development efforts (version control and configuration management are long term critical issues for a software company, so there is understandable reluctance to commit oneself to an unproven tool system). Shape is not a 'product'. You can't buy it, and if you have it, there is no guaranteed support. The good news is: shape is free. We consider posting the whole matter to comp.sources.unix, or donating it to the GNU project (if they want it). The software is UNIX portable, i.e. it runs under 4.[23]BSD, SunOS 4.0, Ultrix 2.0+, and will run under System V.3 very soon. In case you find shape interesting, you may want to read "An Integrated Toolkit for Engineering Software Configurations", in "Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments", Nov. 1988, Boston Mass., or write to shape@coma.uucp which is the same as shape@db0tui62.bitnet. ------------------------------ Date: 20 Dec 88 16:02:50 GMT From: mirror!rayssd!raybed2!linus!munck@bu-cs.bu.edu (Robert Munck) Organization: The MITRE Corporation, Bedford MA Subject: The High Cost Of Software Practice & Experience I just received an advertising flyer from John Wiley & Sons for the journal "Software Practice & Experience." Anyone who has had any contact with it knows about the quality of this journal; the articles are timely, well written/refereed, and extremely interesting, the Editors and Editorial Board are top-notch people, and the breadth of coverage is great. Somehow just the sight of that distinctive red cover says "this is good." Until, that is, you come to the subscription price. This flyer offers a mark-down from $315/year to $236.25/year for "personal subscriptions mailed to a home address." (Twelve issues.) I honestly don't understand that price. Given the cost of all those good people, production, (overseas) mailing, etc. etc., how can they possibly charge $20 an issue? I can't believe that greed is the motivation, except possibly for the publisher. I put a lot of time and effort into keeping up with the state of the art; about 40 journals, newspapers, etc. This one magazine would cost about 1/3 of what I'm spending now. Consider that it could be sent out in Postscript form by E-mail, saving all post-editing production costs. What would they have to charge then? (That $78.75 difference in cost bothers me, too. Suppose I read my copy and then donate it to a library. Do I have to send Wiley $78.75?) -- Bob ------------------------------ Date: 22 Dec 88 06:06:34 GMT From: bsu-cs!dhesi@iuvax.cs.indiana.edu (Rahul Dhesi) Organization: CS Dept, Ball St U, Muncie, Indiana Subject: Re: The High Cost Of Software Practice & Experience >I honestly don't understand that price [of $236 per year]. Lower-circulation periodicals cost more. But more importantly, for-profit publishers (as opposed to non-profit organizations such as ACM) charge what the market will bear. Because of its quality, "Software--Practice and Experience" is a "must have" for any library and for many individuals. ------------------------------ Date: 22 Dec 88 23:52:41 GMT From: naucse!rrw@arizona.edu (Robert Wier) Organization: Northern Arizona University, Flagstaff, AZ Subject: Re: The High Cost Of Software Practice & Experience The first time I ran into this journal was several years ago when there was a big announcement in the general computer press that a sort had been developed that was faster than quicksort, and the details were to be published in SP&E. I'm hazy on exactly what happened, but it seems like the sort was only faster on certain data arrangements. At any rate, does anyone know if these are "paid" articles, in the sense of substantial money going to the authors, or is it a "scholar" type pub, where it's just for glory (and tenure)? ------------------------------ Date: 22 Dec 88 05:15:33 GMT From: portal!cup.portal.com!Christopher_Charles_Lapp@uunet.uu.net Organization: The Portal System (TM) Subject: What's the Best OOP Text? I need references for the best description of object-oriented systems analysis. Can anybody steer me to the classic articles, texts, etc? ------------------------------ Date: 23 Dec 88 00:29:05 GMT From: elkins@topaz.rutgers.edu (George Elkins) Organization: Rutgers Univ., New Brunswick, N.J. Subject: Re: What's the Best OOP Text? I have recently gone from complete ignorance of OOP to a decent level of knowledge through reading "Object-Oriented Software Construction" by Bertrand Meyer. I didn't thoroughly understand it until after some experience with the Eiffel language, though. It may be useful even to those not having access to an Eiffel compiler, but I wouldn't vigorously recommend it to those without one. (Since then I've easily transferred my OOP knowledge to Smalltalk, which I quickly learned with only the most superficial reading of a book pertaining to Smalltalk. But I actually prefer Eiffel over Smalltalk due to my previous experience with block-structured procedural languages.) ------------------------------ Date: Thu, 22 Dec 88 08:58:12 EST From: Rajshree Bhatt Subject: Human Factors and Software Engineering I am extremely interested in issues on and related to Human Factors in software engineering. At present, I work as a Systems Analyst, but have every intention on returning to school to complete my doctrate. Any ideas, topics, discussions relate to that subject will be greatly appreciated. I am enrolled in a joint Ergonomics and Software Engineering Program at the University of Michigan, and at present gathering practical experience in the field. Please send all mail directly to me -- RBHATT@WAYNEST1. Comments on any developments in the field and the future of such a field would also be appreciated. THANK_YOU. ------------------------------ Date: 23 Dec 88 23:58:41 GMT From: sun.soe.clarkson.edu!rpi!rpics!adamsf@tcgould.tn.cornell.edu (Frank Adams ) Organization: RPI CS Dept. Subject: Re: Professional Programmers (was: Seeing the future) (I am directing follow-ups to comp.software-eng; this has nothing to do with architecture any more.) In article <1992@ndsuvax.UUCP> ncsmith@ndsuvax.UUCP (Timothy Smith) writes: > I have to disagree with your last sentence. If you extend this to >every area in which a programmer may be doing work, ... then the programmer >has to know about every trick in that area ... I think that the >programmer should examine what the specialist wants done, find areas that >look like canidates for optimization, and then ask the specialist ... I disagree strongly. A professional writing programs in any subject area has a responsibility to be become, if not expert, at least reasonably well informed about that subject. This is what employers should be looking for when hiring programmers, not familiarity with language X. (Although the latter can sometimes substitute for the former -- it is a safe bet that someone who knows MUMPS will know something about medical practice.) ------------------------------ Date: 24 Dec 88 21:11:37 GMT From: hubcap!wtwolfe@gatech.edu (Bill Wolfe) Organization: Clemson University, Clemson, SC Subject: Vendors of Ada ADTs 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. ------------------------------ End of Software Engineering Digest **********************************