home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / sci / logic / 2020 < prev    next >
Encoding:
Internet Message Format  |  1992-11-12  |  2.3 KB

  1. Path: sparky!uunet!newsstand.cit.cornell.edu!vax5.cit.cornell.edu!horj
  2. From: horj@vax5.cit.cornell.edu (Eric Scheirer)
  3. Newsgroups: sci.logic
  4. Subject: Computer Science vs. Software Eng. (was re: Natural Kinds)
  5. Message-ID: <1992Nov12.222503.15918@vax5.cit.cornell.edu>
  6. Date: 12 Nov 92 22:25:03 EST
  7. References: <1992Nov3.214913.25344@dcs.qmw.ac.uk>  <MARTINC.92Nov9095218@grover.cs.unc.edu>
  8. Followup-To: sci.logic
  9. Distribution: sci
  10. Organization: Cornell University
  11. Lines: 44
  12.  
  13. In article <MARTINC.92Nov9095218@grover.cs.unc.edu>,
  14. martinc@grover.cs.unc.edu (Charles R. Martin) writes: 
  15.  
  16. > engineering vs. chemistry, there are techniques and methods that apply
  17. > to software engineering that are *used* in computer science, and
  18. > (naturally) methods and techniques from computer science that must be
  19. > used by software engineers.
  20. > As to whether they *should* be separate: of course not.  All software
  21. > engineers know that computer science is a subdiscipline of software
  22. > engineering. 
  23. > --
  24.  
  25. I've been following this thread with great interest, and thought that
  26. it might be time to inject my bit.  I'll specifically disclaim my 
  27. qualifications here; I'm an undergrad in Cornell CS, where I've been
  28. focussing on theory.  I could probably handwave answers to most of 
  29. Prof. Pratt's lovely list of comp questions other than the graphics/image
  30. processing ones.  I also have a few years' experience as a C grunt in 
  31. a programming house.
  32.  
  33. I think that an interesting comparison of science vs. engineering vs.
  34. math in computing science can be drawn around the lines of program correctness,
  35. or verification (Q. #12).
  36.  
  37. There are, empirically, at least three major ways of detecting bugs:
  38.  
  39.   1. Use the program until it fails to work.  
  40.  
  41.   2. Try to construct a lot of test cases during development.
  42.  
  43.   3. Try to prove the program correct (in the Gries sense) before coding it,
  44.      and fail.
  45.  
  46. Certainly, it would be possible to construct an argument that these 
  47. methods correspond to "science", "engineering", and "math" respectively.
  48.  
  49. Program correctness seems to have a wide range of approaches, which 
  50. seem to cover the field from the clearly "math" to the clearly "engineering".
  51. -- 
  52. Eric Scheirer -- Cornell University, Ithaca, NY -- (607) 277-1899
  53. "I got remote control and a color TV; I don't change channels so they
  54.  must've changed me." -- Billy Joel
  55.  
  56.