From: herbst@seq.uncwil.edu (R.T. Herbst)
Newsgroups: comp.software-eng
Subject: Re: Why is the Software Process NOT working
Summary: Ain't necessaryly so
Date: 27 Jan 93 01:20:47 GMT
Organization: Univ. of North Carolina @ Wilmington

In article <C1F1vC.27B@plato.ds.boeing.com>, mattb@plato.ds.boeing.com (Matt Baney) writes:
> In article <1993Jan20.132009.10982@cc.gatech.edu> tomg@cc.gatech.edu (Tom Gale) writes:
> >> So I wonder, what happens when they leave university? Do they forget
> >> everything they have learned. Or is there some mysterious fact  
> >> that changes you when you start working.
> >
> >I think they're doing exactly what they were taught in the universities.
> >
> >This is a bit of a generalization, but I don't see much emphasis on
> >process improvement, quality, and good software engineering skills in
> >general in our university curriculums.  Sure, there may be a few
> >elective courses in software engineering or software management, but
> >in 90% of the courses programming assignments are done as a complete
> >hack in order to meet some short term deadline with the knowledge that
> >the code will be thrown away when finished.  My impression is that
> >most students view software engineering courses as a nuisance with too
> >much report writing and not enough coding.  Hacking on the other hand
> >has a mystique in the academic setting that breeds hacker wanna-be's.
> >
> >So I believe that universities are breeding grounds for hackers.  It
> >isn't until they've come out into the real world and been involved in
> >several failed projects that the light begins to come on.
> >
> I agree, in college you learn to hack out code, mainly on your own without
> any input or help from any outside people (but occasionally in small groups),
> that will never be used or looked at again by yourself or anyone else, code
> that will never be "used" by any user.  Yet when programmers get to the 
> real world they are expected to work together with other programmers, work
> on a small part of a much larger program, write code that is maintainable
> by someone-else, or maintain someone-elses code, and finally write code that
> will be used and tested by a completely separate group of people.
>   
> I would like to see a two or three segment sequence of computer science 
> courses where in Segement I: programming teams of 3-4 people must build
> some sizable application, including a users manual and maintenance manual,
> then in the next segments, the programming teams are re-shuffled and the
> new teams act as users of one of the applications from the previous segment
> and maintainers of another.  And are not allowed to be user or maintainers
> of an application they helped develop?  The user groups and/or instructor
> would propose some enhancements/modifications that the maintenance groups
> would have to implement.
> 
> FWIW
> matt
> 
> 
> -- 
> |  Matt Baney         | Boeing Defense and Space Division    |
> |  -----------------  |   Knowledge Systems Group            |
> | "I can't tolerate   | UUCP:        ..!bcstec!plato!mattb   |     
> | intolerant people!" | Internet:  mattb@plato.ds.boeing.com |

Some time ago there were a number of postings that indicated that
software engineering courses are being offered that emphasize
teamwork on a project. 
I offer such a course. It is well accepted by the students.

Our problem in academia is grading. We must grade the individual.
My apporach tothis in the SWE course is to give each student 
specific job like responsibility for one phase of the 
so called life cycle. The grade depends on how well that job is done.

Having spent 25 years at Bell Labs, I try to simulate the work place
as closely as possible. An element of the individual grade is how
well the individual works with the group. I insist that each
student keep a log of activities. this log is 15% of the grade.
Putting all of this together, I am able to assign individual 
grades ina group effort. Gee! how does this differ from the 
work a day world. Not much. 
I agrees we need to do more of this. On the other hand
the student must acquire individual skills. This is best done
by individual work in the early courses.

I expect that the number of SWE courses will increase. To do what
I want to drequires a full year. There is just not room 
to do this and satisfy other requirements.

I would be happy to accept fund from Boeing to develop a 
year long course in SWE that would satisfy many of the
concerns that have been expressed in this thread.
herbst@seq.uncwil.edu
Newsgroups: comp.software-eng