Path: utzoo!attcan!uunet!lll-winken!sun-barr!cs.utexas.edu!usc!apple!bionet!agate!linus!linus!chance!mitchell From: mitchell@chance.uucp (George Mitchell) Newsgroups: comp.specification Subject: Re: Difference between Spec and Code? Message-ID: <125516@linus.mitre.org> Date: 6 Nov 90 14:55:25 GMT References: <21500@dime.cs.umass.edu> <5321@uqcspe.cs.uq.oz.au> <13576@june.cs.washington.edu> <1990Oct31.102351.21789@newcastle.ac.uk> <1990Nov06.020123.29702@comp.vuw.ac.nz> Sender: usenet@linus.mitre.org Reply-To: mitchell@chance.UUCP (George Mitchell) Organization: MITRE-McLean Software Engineering Laboratory Lines: 55 In article <1990Nov06.020123.29702@comp.vuw.ac.nz> lindsay@comp.vuw.ac.nz wrote: `In article <1990Oct31.102351.21789@newcastle.ac.uk>, `des0mpw@colman.newcastle.ac.uk (M.P. Ward) writes: `|> Naturally, for a specification to be smaller it _has_ to contain `|> less information: the input-output behaviour is arguably the most `|> useful information to a user of the program, therefore the `|> specification will have less (or no) information about data `|> structures and algorithms. ` .... `Saying that a specification is "more abstract" than a program does mean `that it contains less information. The whole point, however, is that `the "missing" information is concerned with HOW rather than WHAT, so `(from the specifiers point of view) it is irrelevant. In the opening chapter of _Essential_Systems_Analysis_ McMenamin and Palmer give some background of logical vs. physical, what vs. how, and strategic vs. tactical. All in all, their concept (and presentation) of "essence" and "incarnation" is very helpful. Essence: "all characteristics of a planned response system that would exist if the system were implemented with perfect technology." Essence = Essential activities = Essential memory Essential activities: "Those tasks that the system would have to do even if you could implement it using perfect technology." Essential memory: "All the data the system would have to remember if all it did was carry out the essential activities." Essential activities are divided into two, not mutually exclusive, categories: Fundamental activities and Custodial activities. Fundamental activity: "Performs a task that is part of the system's stated purpose." Custodial activity: "Establish and maintain the system's essential memory." Stimulus Stimulus | | V V -------------- --------------- Response | Custodial : : Fundamental |-------------> | Activitity : : Activity | -------------- --------------- | ^ Response | | _V____________|_ Essential Memory ---------------- -- George Mitchell, MITRE, MS Z676, 7525 Colshire Dr, McLean, VA 22102 email: gmitchel@mitre.org [alt: mitchell@community-chest.mitre.org] vmail: 703/883-6029 FAX: 703/883-5519