Xref: utzoo comp.object:3211 comp.software-eng:5373 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!newstop!sun!amdcad!dgcad!dg-rtp!farmhand!cole From: cole@farmhand.rtp.dg.com (Bill Cole) Newsgroups: comp.object,comp.software-eng Subject: Re: Documenting OO Systems Message-ID: <1991Apr16.124522.16592@dg-rtp.dg.com> Date: 16 Apr 91 12:45:22 GMT References: <3201:Apr705:40:4591@kramden.acf.nyu.edu> Sender: cole@farmhand (Bill Cole) Organization: Data General Corporation, Research Triangle Park, NC Lines: 30 Steve Savitzky writes: |> Every working definition of ``engineering'' appears to exclude computer |> science. |> |> I think Knuth was absolutely right when he called his book "The Art of |> Computer Programming". It's possible to treat software as a product |> of engineering only when it's embedded in a non-interactive system. |> As soon as the software has a user interface, artistic considerations |> take over. |> I'd extend that to any user interface -- including reports. Someone will spend time (maybe hours) with the reports we generate and 'readability' is a definite factor in how we format and produce the report. Programming is a creative endeavor at some level. We have to devise ways to overcome obstacles placed in our paths by an EE or another programmer. Many times, the solution to a problem is nothing short of the 'eureka' moment, that golden moment of insight that brings an unexpected fix to a difficult problem. If we were strictly engineers, we could down a catalog of routines and, by cleverly sticking them together, build a program. Each programmer has a catalog of routines they've either learned or built, it's true, and you could argue that this constitutes a form of engineering catalog that EEs or CEs use to build computers or buildings. The difference is that programmers are tasked to build new components if they can't find one in the own catalog of program components. How many CEs build bridges out of self-designed components? The views expressed here are opinions formulated for and by myself, /Bill