[comp.software-eng] Programming vs. Software Engineering

billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 ) (03/23/90)

From lws@comm.WANG.COM (Lyle Seaman):
 
  [Note: I have removed the inappropriate comp.lang.c newsgroup] 

> billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu writes:
>>   counterpart.  This is despite the fact that STANFINS-R had to take 
>>   raw COBOL programmers and train them to be Ada Software Engineers, 
> 
> In my experience, the terms programmer and software engineer conjure up
> two entirely different worlds of practice.  I can't imagine training 
> a programmer to be a software engineer (much less a Software Engineer)
> in anything like the amount of time spent of STANFINS-R.

    Then consider the following descriptions of the STANFINS-R experience:

     Claton J. Hornung, Senior Software Specialist and Project Manager, 
     Computer Sciences Corporation:

      It was determined that COBOL programmers who had never worked 
      with a structured programming language such as Ada... had 
      preconcieved notions about Ada and a strong religious devotion
      to the COBOL way of design and programming.... The training
      demonstrated that concepts discussed in terms of a COBOL
      programmer facilitated the mind set transition.  After this
      experience the programmers became more receptive to new ideas
      and appreciated the new found power of Ada and associated
      software engineering concepts.

      Many students demonstrated a lack of fundamental understanding
      in the basic concepts of data structures and basic design.  Not
      only did training have to focus on these concepts, but it became
      necessary to focus on software engineering principles and goals
      as well.   

     Kenneth Fussichen, Computer Scientist, Computer Sciences Corporation:

      The promise of Ada that attracts the MIS [practitioner] is the
      promise of maintainability.  Virtually every other major software
      engineering principle pales in its image.  Maintenance is such an
      expensive chore that if it can be practically overcome, Ada would
      be assimilated quickly by the MIS [world].  Preliminary findings 
      indicate that our Ada implementation may be significantly more 
      maintainable than its COBOL predecessors [i.e., previous versions
      of STANFINS which had been written in COBOL]....

      The aggregate level of learning for [STANFINS-R project members]
      is among the highest I've ever seen.  More [project members] 
      attend classes in the evening, write professional papers, belong 
      to professional organizations and book clubs than any other [project]
      I've seen.  The knowledge of Software Engineering principles is the
      highest of any [project in which] I've participated.  

   So I think it *is* possible, and STANFINS-R does support that contention.   


   Bill Wolfe, wtwolfe@hubcap.clemson.edu

chip@tct.uucp (Chip Salzenberg) (03/24/90)

According to billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu:
>      After [STANFINS-R training] the programmers became more
>      receptive to new ideas and appreciated the new found power
>      of Ada and associated software engineering concepts.

I trust that the difference between "appreciating the power of Ada and
associated software engineering concepts" and "becoming trained
software engineers, able to make practical application of software
engineering concepts" is clear to everyone.

(No, not you, Bill; I mean everyone _else_.)

It is truly unfortunate that anecdotal evidence is the only kind of
evidence available to all of us who would like to compare languages.
With programmers as test subjects, controlled experiments are *so*
expensive...
-- 
Chip Salzenberg at ComDev/TCT   <chip%tct@ateng.com>, <uunet!ateng!tct!chip>
          "The Usenet, in a very real sense, does not exist."

psrc@pegasus.ATT.COM (Paul S. R. Chisholm) (03/24/90)

In article <8462@hubcap.clemson.edu>, billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 ) writes:
> . . . consider the following descriptions of the STANFINS-R experience:

> Claton J. Hornung, Senior Software Specialist and Project Manager, Computer
> Sciences Corporation:

> It was determined that COBOL programmers who had never worked with a
> structured programming language such as Ada... had preconcieved notions about
> Ada and a strong religious devotion to the COBOL way of design and
> programming.... The training demonstrated that concepts discussed in terms of
> a COBOL programmer facilitated the mind set transition.

?

> After this experience the programmers became more receptive to new ideas and
> appreciated the new found power of Ada and associated software engineering
> concepts.

(Not necessarily in that order?-)

> Many students demonstrated a lack of fundamental understanding in the basic
> concepts of data structures and basic design.  Not only did training have to
> focus on these concepts, but it became necessary to focus on software
> engineering principles and goals as well.

> Kenneth Fussichen, Computer Scientist, Computer Sciences Corporation:

> . . . Preliminary findings indicate that our Ada implementation may
> be significantly more maintainable than its COBOL predecessors

Translation:  take a bunch of folks who hadn't even caught to
structured programming, teach them good coding techniques, and the
resulting code is much better.

Thank *God* for Ada, huh?-)

> The aggregate level of learning for [STANFINS-R project members] is among the
> highest I've ever seen.  More [project members] attend classes in the
> evening, write professional papers, belong to professional organizations and
> book clubs than any other [project] I've seen.  The knowledge of Software
> Engineering principles is the highest of any [project in which] I've
> participated.

These are the guys who had "never worked with a structured programming
language"?  They didn't learn Ada, they were reincarnated!

But Mr. Wolfe, in my opinion, misses the point.  Most software
engineering (requirements analysis, design of data structures and
functions, various kinds of testing, configuration management, etc.) is
completely language independent.  I'm glad STANFINS-R was able to take
people with bad habits and instill good habits in them; but nothing Mr.
Wolfe has posted in this article says anything good about the Ada
programming language.

> Bill Wolfe, wtwolfe@hubcap.clemson.edu

Paul S. R. Chisholm, AT&T Bell Laboratories
att!pegasus!psrc, psrc@pegasus.att.com, AT&T Mail !psrchisholm
I'm not speaking for the company, I'm just speaking my mind.

billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 ) (03/25/90)

From psrc@pegasus.ATT.COM (Paul S. R. Chisholm):
> Most software engineering (requirements analysis, design of data 
> structures and functions, various kinds of testing, configuration 
> management, etc.) is completely language independent.  I'm glad 
> STANFINS-R was able to take people with bad habits and instill 
> good habits in them; but nothing Mr. Wolfe has posted in this 
> article says anything good about the Ada programming language.

   OK, let me be more explicit.  The Ada programming language 
   was explicitly designed to provide maximal support for the
   software and particularly code engineering process, and it
   has clearly been extremely successful at doing so.  

   Satisfied?


   Bill Wolfe, wtwolfe@hubcap.clemson.edu

archer@elysium.sgi.com (Archer Sully) (03/27/90)

In article <8481@hubcap.clemson.edu> billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 ) writes:

>From psrc@pegasus.ATT.COM (Paul S. R. Chisholm):
>> Most software engineering (requirements analysis, design of data 
>> structures and functions, various kinds of testing, configuration 
>> management, etc.) is completely language independent.  I'm glad 
>> STANFINS-R was able to take people with bad habits and instill 
>> good habits in them; but nothing Mr. Wolfe has posted in this 
>> article says anything good about the Ada programming language.

>   OK, let me be more explicit.  The Ada programming language 
>   was explicitly designed to provide maximal support for the
>   software and particularly code engineering process, and it
>   has clearly been extremely successful at doing so.  

>   Satisfied?

NO!

You still haven't shown (and never will show, at this rate) that Ada is
not only sufficient but necessary for producing good code, which appears
to be your stated aim.

Archer Sully 	      |  I'm 27 years old.  That's 54 in Nerd Years
(archer@esd.sgi.com)  | 	-- Keith Rienzi

rsd@sei.cmu.edu (Richard S D'Ippolito) (03/27/90)

Sorry to pick on this one, but it's representative:

In article <5723@odin.corp.sgi.com> Archer Sully writes:

 >You still haven't shown (and never will show, at this rate) that Ada is
 >not only sufficient but necessary for producing good code, which appears
 >to be your stated aim.
 >
 >Archer Sully

I'm a bit more than tired of this -- the current discussions have turned
these groups into sandboxes, and the flying stuff is irritating my eyes.

I would suggest that those who insist on comparing their pails by color take
the exchange off line or to alt.lang.wars.  My sometimes-clouded mind has
concluded, possibly due to a malfunction, that comp.lang.ada exists for the
discussion of any Ada-related issue, from its place in software engineering,
to its effect on the procurement process, to its compilers, to its
successful uses, etc., and is mainly of interest to those who are trying
their best to produce quality software for the USDoD.

Those of you who wish to point out that Ada is imperfect are only confirming
what man has already learned about the artifacts of man.  You are cheerfully
invited to submit your suggestions to the Ada 9X committee.  Anyone who
attended the 89 TRI-Ada conference had the opportunity to hear Robert Firth
warn that there would be no language perfection in our lifetimes and to hear
him urge us to get on with the job.

Those of you who share my delusion that Ada and Software Engineering are not
one and the same are invited to share your experiences in comp.software-eng
with those of us who are trying to bring software development up to the
level of engineering that now exists in the many traditional engineering
disciplines.  Is not there much more than the art (or science, to the extent
that it is one) of crafting code?

Several times in the past year, I and members of our group have published
pointers to papers describing our experiences in using Ada for real efforts
and describing our methods.  That we have received no responses leads me
to conclude, again, maybe erroneously, that there are only two types of
reader here -- those who already know the benefits of Ada and those who are
not receptive to information which might undermine cherished language and
practice beliefs.

We were hoping to hear from the uncommitted, and from those who could help
us improve the state of the practice by reviewing our efforts and by relating
theirs.


Rich D'Ippolito
Software Architectures Engineering Project
SEI, Pittsburgh


PS: I have left the reference to atl.cobol in the distribution in order that
that related followups be directed to the appropriate one of the other two
groups.  I do not subscribe to it.
-- 
How do you know how I can see lessen you kin look out my eyes?
Hoke, in _Driving Miss Daisy_				 rsd@sei.cmu.edu
------------------------------------------------------------------------