home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / software / 5477 < prev    next >
Encoding:
Internet Message Format  |  1993-01-28  |  3.5 KB

  1. Path: sparky!uunet!charon.amdahl.com!pacbell.com!ames!olivea!veritas!joshua
  2. From: joshua@Veritas.COM (Joshua Levy)
  3. Newsgroups: comp.software-eng
  4. Subject: Re: Why is the Software Process NOT working
  5. Message-ID: <1993Jan26.185901.12145@Veritas.COM>
  6. Date: 26 Jan 93 18:59:01 GMT
  7. References: <1993Jan19.155446.13593@cs.few.eur.nl> <EMERY.93Jan19174523@goldfinger.mitre.org> <1993Jan22.130940.21486@dmu.ac.uk>
  8. Organization: VERITAS Software
  9. Lines: 62
  10.  
  11. Graham Perkins argues that the software process is not working for
  12. several reasons including:
  13. >1) Education not respected
  14. >2) Prejudice against academic methods
  15.  
  16. I think the reason the software process does not work is much simpler.
  17. Colleges and Universities are expected to teach people the background
  18. knowledge need to be a good software engineer, and they do not.
  19. It is that simple.
  20.  
  21. Using myself as an example: I graduated in the 1980s from a top 20
  22. (in the USA) Engineering school, having completed the hardest
  23. undergraduate software engineering degree available.  This degree 
  24. program was part of the engineering school.  As part of that degree:
  25.  
  26.     I never took a class in testing (of any kind).  None was offered.
  27.     I never took a class in version control or configuration management,
  28.        or took any class which discussed these issues.   None was offered.
  29.     One class required writing or helping to write documentation.
  30.     One class required writing or developing requirements or specifications.
  31.     I never took a class which discussed the release process.  None was
  32.        offered.
  33.     I never took a class which discussed data base systems in any way.
  34.        None was offered at the undergraduate level.
  35.     I never took a class which discussed adding features to an already
  36.        exiting program.  None was offered.
  37.     I never took a class which discussed porting code or writing portable
  38.        code.  None was offered.
  39.  
  40. How long are schools going to graduate people while pretending that
  41. testing, version control, release process, data bases, and program 
  42. modifications don't exist?
  43.  
  44. My degree program had lots of physics, calculas, and math.  It was
  45. obviously designed by a bunch of PhDs to produce PhDs, but in terms
  46. of software engineering, it was a total disaster.  I could take
  47. a course in every professor's trendy research subject, but I could
  48. not take a course in how to test a program.  Just discusting.
  49.  
  50. It is almost funny, in retrospect:  I was forced to take 5 math classes
  51. and more than 3 science classes, but I was not offered a class which
  52. required me to write a program which would run on more than one machine,
  53. and I never had to write a test suite, or modify an already existing
  54. program.  
  55.  
  56. I don't know if all software engineering degrees are a poorly designed
  57. as the University of Pennsylvania's program in the late 1980s.  I hope
  58. not, but I suspect so.
  59.  
  60. If you are a prof, and reading this, I hope you will look at your
  61. degree requirements, and ask yourself two questions:
  62.  1. Is my department teaching people how to be graduate students,
  63.     or engineers?  Remember, most of your studies will become 
  64.     engineers, not grad students.
  65.  2. Is it possible to graduate from my department without writing a
  66.     test suite, modifing existing code, porting code between machines,
  67.     writing requirements, or undestanding version and release control?
  68.     These are the things that software engineers spend most of their
  69.     time doing in the real world.  If you do not teach (or try to teach)
  70.     these things, your engineering degree is a fraud.
  71.  
  72. Joshua Levy  (joshua@veritas.com)
  73.