Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!apple!sun-barr!newstop!sun!sunfedcomm!regenmeister!chrisp From: chrisp@regenmeister.uucp (Chris Prael) Newsgroups: comp.software-eng Subject: Re: Information Systems is an Engineering Discipline Message-ID: <34399@regenmeister.uucp> Date: 29 Sep 89 00:47:27 GMT References: <1142@svx.SV.DG.COM> Sender: daemon@sunfedcomm Distribution: comp.edu Organization: Sun Microsystems, Inc. - Mtn View, CA Lines: 42 From article <1142@svx.SV.DG.COM>, by gary@dgcad.SV.DG.COM (Gary Bridgewater): > In article <34371@regenmeister.uucp> chrisp@regenmeister.uucp (Chris Prael) writes: >>From article <592@halley.UUCP>, by joannz@halley.UUCP (Joann Zimmerman): >>> One other very noticeable difference between other engineering fields and >>> computing is in the amount of failure analysis to be found in the field. >>> How would we go about developing this into a real engineering discipline? >>Why not follow the leaders? Do what the real engineers do. > Yes! Go buy a $1M software tester, hire a team of programmers to generate test > patterns, another team to program the tester to run the patterns, another > team to build a simulator to generate simulated output to compare to the > tester output, another team to take your specs and generate code, another > team to take your specs and emulate the machine to compare to the output from > the simulator to see that is does the right thing (did we forget the team to > write down what the right thing is?). In case you hadn't noticed, noone has ever figured out how to build a tester for the Golden Gate Bridge or the Sears Tower. Boy did/do you miss the point. The point is that real engineers DESIGN! And they document the design. Before they try to build what ever it is. Reletively few "programmers", "software engineers", etc. even know what the verb design means, let alone how to do it. I have been reading/hearing about magic pills, such as 4GL or CASE, that will be the perfect substitute for basic competence for 20 years. Oddly, not one of them has worked yet. > The only thing I think we can get from engineers is the same thing that the > Structured Methodology people have been saying for years - design it right > from the top down and then code to the design. Then get someone to check > both these things. Have a test methodology and stick to it. Do regression > testing on any changes. Document everything, always. Exactly! It works for them and it works when you do it in software too. There is no substitute for discipline and competence. Some of the new things may help a disciplined software engineer to do it better and/or faster, but they will never be a substitute for figuring out what you are going to do so that it is not significant who executes the design. Chris P