Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!bloom-beacon!MWSUN.MITRE.ORG!nigam From: nigam@MWSUN.MITRE.ORG Newsgroups: comp.software-eng Subject: Re: Attempts to connect SA/D and OOPS Message-ID: <8908251356.AA04062@mwsun.mitre.org> Date: 25 Aug 89 13:56:59 GMT Sender: daemon@bloom-beacon.MIT.EDU Organization: The MITRE Corp., Washington, D.C. Lines: 96 ------- Forwarded Message Received: from CALSTATE.BITNET by CUNYVM.CUNY.EDU (IBM VM SMTP R1.2.1MX) with BSMTP id 1641; Thu, 17 Aug 89 20:49:13 EDT Received: by CCS.CSUSCC.CALSTATE.EDU from Mail by CSUMailer (1.3); Thu, 17 Aug 89 17:40:38 PDT Date: Thu, 17 Aug 89 17:40:24 PDT From: PAAAAAR%CALSTATE.BITNET@CUNYVM.CUNY.EDU Subject: Re: Attempts to connect SA/D and OOPS To: soft-eng Cc: (Dick Botting), (Resend - Previous version probably garbled or lost...) In Vol 6 Number 42, Edward Berard described the costs and problems of discarding older methods and tools to gain the benefits of Object Oriented Programming. He mentions 4 new methods: OODA - Object-oriented domain analysis OORA - Object-oriented requirements analysis OOD - Object-oriented Design OOP - Object-oriented implementation (often called Object-oriented programming) He stated that these were different to previous methodologies and hinted at the existance of much detailed information on these techniques. He also said that >I would very much like to avoid a detailed discussion of the processes >involved in OORA, OOD and OODA I would certainly value a detailed discussion of such topics - a seminar on Ada and OOP costs $500 for example and 2 days. He refers to the use of Petri Nets to describe the behaviors of object-oriented systems - I studied these in some faculty seminars back in the early 1970's - as I recall, when we drew a Petrie Nets some of the cycles in the equivalent directed graph were associated with `objects`. For example Making coffee had cycles running thru all places involving `perculator`, and another cycle covered all the `cup` occrences and so on... When two or more of these cycles overlapped then the objects tended to be interacting. Does something like this also happen in OO systems? How many real projects have used Petri Nets? How do you communicate a Petri Net over the network? He asks >Must this "pattern of communication" be explicit or >implicit. I was trying to define important Entities and Relationships in OO Software Engineering - in particular searching for the Relationships betwee n Objects that it would be helpful to have on record. I would claim that technical drawing is a standard way to show the boundaries of mechanical objects and to make explicit how they touch. Babbage invented a diagram to help him simplify his Analytical Engine - one part made explicit how parts were connected. Electrical Engineers have explicit lines connecting objects in a circuit diagram. I was thinking along these lines: If I've got the task of changing an object-oriented system what I need to do is to find out what objects could cause the observed problems and which could not. Afterall doctors have anatomy diagrams and X-rays that make explicit the connections implicit in the body. If there was accessible and explicit documentation of what classes of objects can influence other classes - my maintenance task should be easier... Or suppose if you are working on an Object-oriented system for my bank, I will want to be certain that the object representing the customer's money is isolated from other "customers" and from the programmer/designer except under specific and explicit circumstances. I want evidence that the system will not do the Salami Trick! However I think DFDs are a comparatively uneconomic representation. I'd like to test the N-squared chart developed in TRW some years ago. These naturally map any set (nodes) and pairwise `relations` into a matrix with clearly visible connections and or boundaries. (They also take up a lot of space) Dr. Richard J. Botting, Department of computer science, California State University, San Bernardino, CA 92407 PAAAAAR@CCS.CSUSCC.CALSTATE paaaaar@calstate.bitnet PAAAAAR%CALSTATE.BITNET@CUNYVM.CUNY.EDU ------- End of Forwarded Message