From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fac41,f66d11aeda114c52 X-Google-Attributes: gidfac41,public X-Google-Thread: 103376,f66d11aeda114c52 X-Google-Attributes: gid103376,public From: mheaney@ni.net (Matthew Heaney) Subject: Re: Critique of Ariane 5 paper (finally!) Date: 1997/08/14 Message-ID: #1/1 X-Deja-AN: 264910663 Distribution: world References: <33E503B3.3278@flash.net> <33E8FC54.41C67EA6@eiffel.com> <33E9B217.39DA@flash.net> <33EA5592.5855@flash.net> <33EB4935.167EB0E7@eiffel.com> <33EB754E.446B9B3D@eiffel.com> <33EBE46D.2149@flash.net> <33EF9487.41C67EA6@eiffel.com> <33F20BCE.AB3@link.com> <33F22AD8.41C67EA6@eiffel.com> Organization: Estormza Software Newsgroups: comp.lang.ada,comp.lang.eiffel Date: 1997-08-14T00:00:00+00:00 List-Id: In article , jsa@alexandria.organon.com (Jon S Anthony) wrote: >> It seems that the idea of using modern techniques to >> improve software reliability shocks some people so much > >There is nothing new about assertions or the notion behind DBC. The >basic ideas have been floated in various forms for a looonnggg time >now. Perhaps that's true, but I myself didn't learn this until I read Bertrand's book back in '89. You can trace axiomatic specification back to the Floyd article, the Hoare article (and to the "Little Black Book"), and the later papers about ADTs by Guttag, Liskov, and Reynolds, but I don't think it's inappropriate to give Bertrand credit for popularizing the idea of a contract between client and server. Had he not brought the contract model to the masses (it rode the wave of popularity of the object movement), I'm not sure I or anyone else would be arguing about it now. I read his book with the intention of learning about object-oriented programming, but came away with much more than that. To me, the concept of design by contract is at least as important as object technology. (Indeed, as our discipline matures, we see that there are myriad "architectural styles," object-oriented being only one of them. But the contract idea will always be applicable, no matter how you build your house.) Bertrand and I have plenty to disagree about (Ada is AOK with me, thank you very much), but the efficacy of design by contract is not one of them. He would be wise to not claim too much credit, to avoid the mistakes of his peers (What exactly is the "Booch method"? Or the "Object Modeling Technique"? Are Grady's objects any different from mine or yours?), but the effect of Bertrand's cogent enunciation of the contract philosophy is undeniable. I can say without hyperbole that Object-Oriented Software Construction changed my whole way of thinking about programming, and I consider that book to be among the finest software engineering texts ever written. So sally forth, Bertrand, and thank you! -------------------------------------------------------------------- Matthew Heaney Software Development Consultant (818) 985-1271