Path: utzoo!utgpu!water!watmath!clyde!ima!think!fad From: fad@think.COM (franklin a davis) Newsgroups: comp.software-eng Subject: Re: What is CASE (long) Summary: CASE tools are still just graphic "word processors." Keywords: CASE, methodology, design tools Message-ID: <18625@think.UUCP> Date: 29 Mar 88 17:15:16 GMT References: <1458@vaxb.calgary.UUCP> <3850005@wdl1.UUCP> Sender: usenet@think.UUCP Reply-To: fad@balder.think.com.UUCP (franklin a davis) Organization: Thinking Machines Corporation Lines: 97 In article <3850005@wdl1.UUCP> rhj@wdl1.UUCP (Bob Jones) writes: >> I have started hearing a lot about CASE. What is it? > >The second part of your question (what benefits could I expect ...) is >more subjective. Nobody today is marketing a single CASE product or even >a complete set of CASE tools which give you everything you need to build >software. All CASE products are just tools. A well integrated toolkit >is easier to use, but harder to come by, but the tools you identify >(requirements analysis, test case generators, configuration management, etc.) >are important pieces in the overall process. My two cents -- the current state of the art in CASE tools is that they are fancy "word processors" for design diagrams. Some of them check syntax ("spelling checking") and some of them can transform between views, but none of them (yet) really understands design, and can help find design flaws. For example, drawing data-flow diagrams is a tedious process. Revising and correcting them as a design evolves is even worse. A good CASE tool helps a lot -- but basically it gives you pretty diagrams, some degree of easy editing, and a few other valuable extras such as summary lists of contents and connections (data dictionaries). >> Finally, are there any commercial CASE systems? > >There are many commercially available CASE toolkits (I wouldn't call any >of them complete systems). Here are some names: > > Software Through Pictures from IDE (runs on Suns and VMS Vaxstations) > Teamwork from Cadre (runs on several platforms) > Excelerator fro Index Technology > CASE 2000 from Nastec > Promod (has several integrated tools) > >This is only a partial list. There are many other good products. > >Bob Jones >Ford Aerospace Corporation While I was a student at the Wang Institute of Graduate Studies we used Teamwork and Excelerator, and looked at others. Some are clunkier than others -- it partly depends on hardware platform -- but none of them are close to the dream system, that would automatically find problems in the design and suggest alternatives. StateMate from iLogix (formerly AdCad) is an interesting system, deveolped in Israel and now sold here. It's new, and I don't know how mature, but it's a different idea from the others. It is a state-machine model, with hierarchy, that can actually execute (simulate) the state machine you've drawn. For example, it can find all the possible conditions that lead to a particular outcome. I think it's a very interesting idea, but probably a ways from robust usefulness. Design, from Meta Software, is purely a drawing tool. It has some power that most of the others don't have, at a very low price, but doesn't support a whole project, data dictionary, etc. It's much less intuitive than MacDraw, but it supports connectivity and hierarchy in a way that normal drawing programs on the Mac and PC don't. They have plans to extend the graphics platform with design rules etc., and even sell two versions of the system with hooks to implement your own methods and syntax on top of Design. Another pair of quite different systems that I don't know much about are Ken Orr's tool that implements his "methodolgy", and JSD Tool, (?) a tool that draws Jackson JSD diagrams. A caveat about useing CASE tools: it was generally agreed by users at Wang Institute and by attendees at a CASE conference that the tools don't teach the methods well -- you should know the design method before the tool is much use. The tool may be an aid or an incentive to learning, and the methods are now becoming more driven by their software implementations. But a word processor doesn't make you a good writer. My own use is mostly for requirements definition and architecture design, when you need to lay out the pieces of the big picture and get the connections right. When the tools are more powerful it will be worth my time to draw diagrams at the level of subroutines and functions, especially when the tools can automatically generate code. (Some claim that now, but what I've seen just create data structure descriptions, which isn't such an issue in the applications I work on.) A last opinion and I'll get off my soapbox. The CASE field is overly dominated by gurus. There are a number of models, and each has fervent proponents. I've seen a room full of these people arguing. It's interesting, but it seems to me like psychology -- each approach is only a partial model of the actual process (which is too complex to model given our current understanding). None is particularly more "correct" than any other, and all have their uses. --Franklin Davis franklin a davis Thinking Machines Corp. Cambridge, MA 02142 617-876-1111 {ihnp4, harvard, seismo}!think!fad "Roll away...the dew!"