[comp.software-eng] rebuttal to anti-CASE article

lsh@anomaly.sbs.com (Loring S. Holden) (07/12/90)

(Posted for a fellow Cadre employee who doesn't have access to USENET...)

In article <37538@genrad.UUCP> charlie@genrad.com (Charlie D. Havener) 
expresses his dissatisfaction with his experience with current CASE tools.
I offer this as the rebuttal he asked for.

He writes:

> The message I get and believe is that Object Oriented analysis, design 
> and implementation via a supportive languge is superior in all ways to 
> the old structured analysis approach.  

"Superior in all ways"?  That can be debated.  However, Cadre has invested 
several years in Object-Oriented Software development.  For our application,
it is a superior method.

He continues:

> It seem to me the vendors of these old case tools are blowing all the 
> smoke and fog they can to protect their lucrative markets....
> The CASE vendors are happy as can be when one of their employees gets an 
> article published that, in effect, says 'Don't worry - Structured Analysis 
> works just fine with objects'

To that I take offense. 

CASE industry's "lucrative market" is people who want tools to support 
software engineering methods.  We support software engineering methods 
that are well accepted.

Like Mr. Havener, we crave object-oriented methods.  From the methods, we are
dedicated to producing tools.  In a paper currently submitted for publication 
titled "Experiences Using CASE for Object-Oriented Design with C++", the 
following statement is made:

    Although not yet a product nor a complete method, we have had some 
    success.  We feel that this knowledge will help build the next generation 
    of methods and tools, as well as provide an intermediate solution for 
    those who want to do object-oriented design before the methods and tools 
    mature.

This is hardly a claim that `Structured Analysis works just fine with objects'.
Rather it is a clear statement that we recognize the need for mature, well 
accepted object-oriented design methods from which tools will grow to support 
the methods.  

I'm not about to use this forum to do a competitive analysis of CASE OO tools.
However, I can say that CASE vendors are quickly reacting to the needs for OO
tools.  Certainly Cadre has proven it's commitment to supporting object-oriented
methods.  In 1988, Sally Shlaer and Stephen J. Mellor published "Object-Oriented
Systems Analysis".  That same year Cadre announced support for that method.  The
first phase of that effort is currently available and further support is planned.

Mr. Havener continues:

> A quote from the Coad/Yourdon text, "Computer-Aided Software Engineering 
> (CASE) -- it's hard to believe that such simplistic software tools are 
> getting so much attention these days. ....  a less sexy but more accurate 
> name would be CADC - Computer Aided Drawing and Checking."

crm@romeo.cs.duke.edu (Charlie Martin) replies:

> Interesting quote, but Coad and Yourdon have an axe to grind and a
> product to flog, just like everyone else.  "Computer aided software
> engineering" is what CASE stands for, and if a lot of the basis of
> software engineering is drawing specific notations and checking them,
> then computer aides for this ARE computer aided software engineering.

Thank you and well said.  

I would like to add that better CASE tools *do* give you more than that.
Better CASE tools are multi-user allowing engineers to more easily share 
analysis and design information.  In addition, they have hypertext properties 
which help you navigate among the objects within your system.  They have 
support tools to help you automate generating system documentation.  They have 
tools for reverse engineering code into Structure Charts to aid with redesign....  
I could go on, but readers don't need a feature list.

More importantly, when you purchase a CASE tool, you get more than just the tool.  
You create a relationship with a CASE vendor.  That means service.  The 
initial question Mr. Havener asked was 'Are Structured Design CASE tools 
worth investing time, effort and money in?'  If you need to justify such 
a tool we will gladly put you in touch with many customers who will say "yes"
and back that up with data.

Mr. Havener asserted his belief in Object-Oriented methods.  At our User Group, 
he could have discussed that with some of the leading authorities in Software 
Engineering today.  In the three day conference (of which the theme was "CASE 
insertion"), ten sessions were devoted to Object-Oriented practice and 
principles.

Mr. Havener continues:

> The government loves paper - these tools help you create a monument of paper. 

Actually, the government *requires* a *well documented* system.  A large system 
requires a lot of paper to document; that is the cause of the monument of paper.
The volume doesn't depend on whether or not you have CASE tools.  The 
documentation is just easier to produce if you have CASE tools. Object-Oriented 
methods *may* reduce the amount of paper produced.  But this is only true if 
the Object-Oriented methods are skillfully used.  Whether you are using 
Object-Oriented methods or more traditional methods, CASE tools help
you to manage the documentation and complexity of your project.

> one of the nice thing about Objects is that you can do fine with no CASE 
> tools at all.

With a limited number of Objects and a small development group, sure.
With hundreds or thousands of objects and a multi-departmental, multi-site 
development team (like most of our customers), I wish you luck.

I'm not saying that teamwork or any CASE tool is the answer to anyone's 
software engineering dreams.  What any responsible software engineering group
needs to do is evaluate the existing methods, and then make a commitment to 
those methods and find tools to support them.  CASE tools developers have a lot 
to offer for traditional Structured methods, and actively seek ways to 
support new methods.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
Eric Esterling, Senior Technical Support Engineer, Cadre Technologies Inc.
(This is not an official response from Cadre, but rather an engineer 
defending CASE tools.)