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: 103376,3d3f20d31be1c33a X-Google-Attributes: gid103376,public X-Google-Thread: fac41,2c6139ce13be9980 X-Google-Attributes: gidfac41,public X-Google-Thread: f43e6,2c6139ce13be9980 X-Google-Attributes: gidf43e6,public X-Google-Thread: 1108a1,2c6139ce13be9980 X-Google-Attributes: gid1108a1,public From: dewar@merv.cs.nyu.edu (Robert Dewar) Subject: Re: Separation of IF and Imp: process issue? Date: 1997/09/11 Message-ID: #1/1 X-Deja-AN: 271676813 References: <33E9ADE9.4709@flash.net> <5utag9$o6s@newshub.atmnet.net> <5v1gua$fkk@newshub.atmnet.net> <5v2k2n$1cfu$2@flood.weeg.uiowa.edu> <5v4095$h62@newshub.atmnet.net> Organization: New York University Newsgroups: comp.object,comp.software-eng,comp.lang.ada,comp.lang.eiffel Date: 1997-09-11T00:00:00+00:00 List-Id: Darren says < wrote: >In article <5v1gua$fkk@newshub.atmnet.net>, dnew@zloty.fv.com says... >> >>Actually (following up on my own post) how does a traditional CM tool >>make sure the Ada body matches the interface file? Does it actually >>run some external tool at checkin time to make sure the equivalence > > Before most people ever check a module back in they run the compiler >on the module. And it's trivial to write a script that takes the short form of an Eiffel class and checks it against the CM'ed short form. If you forget to run this, you can have a $1 fine. :-) My point is that having the spec and implementation in the same file is *not* any more of a handicap for Eiffel than having to run the compiler to check the body against the spec is in Ada. Of course, Eiffel then gives you the ability to use abstract classes as specs as well, but that's a different discussion.>> Many of these posts make me think that the authors have not really worked in a configuration managed environment. We keep getting responses like "well the error will be found elsewhere". Configuration management is not about preventing specific errors, like a body spec mismatch, it is about enforcing high level procedures concering access and responsibility and version integrity. These procedures are (one part) of a complete software process regime designed to ensure high reliability at all levels. CM per se is never about ensuring semantic consistency between files checked into the CM. After all, semantic consistency, defined at the highest level of abstraction, means that your application is correct, and we certainly do not know how to design a CM system that will only accept completely correct units!!! So, let me repeat my question of before, who among you Eiffel programmers HAS worked in a fully configuration managed environment (and I mean more than simply using RCS to check in and check out files, though even here the point about separate specs and bodies is relevant)? It would be interesting to hear how you handle the issue of access rights for modification of specifications (i.e. short forms)