Path: utzoo!utgpu!water!watmath!clyde!rutgers!rochester!cornell!uw-beaver!mit-eddie!genrad!panda!teddy!svb From: svb@teddy.UUCP (Stephen V. Boyle) Newsgroups: comp.software-eng Subject: Re: Is it Art or is it Engineering Keywords: Art Engineering Tolerances Message-ID: <4618@teddy.UUCP> Date: 8 Feb 88 12:30:11 GMT References: <6879@agate.BERKELEY.EDU> Reply-To: svb@teddy.UUCP (Stephen V. Boyle) Organization: GenRad, Inc., Concord, Mass. Lines: 39 In article <6879@agate.BERKELEY.EDU> bks@ALFA.berkeley.edu (Brad Sherman) writes: >current software development is not really "engineering." > >What do "real" engineers do that we do not? > Since my background is Chemical Engineering, I'll use examples from that field. In Chem. E., when I needed to design a heat exchanger, I used a set of refer- ences that told me what the constants were for the materials the heat exchanger was going to operate on, and the *standard* design equations for the exchanger itself. I don't mean to imply that every problem in Chem. engineering (or any other engineering) design is easily and completely reduced to "look up the numbers", but it sure happens a heck of a lot more than when I'm writing soft- ware. Sure, there are some examples of "canned" routines and algorithms (quicksort is what immediately comes to mind), but in general, unless I, or someone else in my engineering group has read or remembers and makes known a solution to a past problem, I'm doomed to re-create the solution. The closest thing I can think of to what I consider "real" engineering in software are the user- interface building tools that let you quickly design a screen layout and which then generate the corresponding code. I guess what I consider the critical difference is the ability to put together little pieces of the problem that are relatively well known, without having to generate a custom solution for every application. This would allow software people to spend time on what makes the current application unique. Now before people get their keyboards cranked up, I want to make it clear that I am aware of algorithm and code libraries, but they are incomplete solutions to what I am describing. (There is no "Perry's Handbook" for Software Engineer- ing.) Plus, none of the above even whispers about scheduling. I'm not going to get into that tar pit, I've depressed myself enough for a Monday morning. -- ... !{decvax,linus,wjh12,mit-eddie,masscomp}!genrad!svb Steve Boyle GenRad Inc, Production Test Division MS 06, 300 Baker Ave, Concord, Mass. 01742