Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uunet!mcsun!ukc!stc!root44!hrc63!mrcu!paj From: paj@mrcu (Paul Johnson) Newsgroups: comp.object Subject: Re: I need arguments for OO... Message-ID: <406@oasis.mrcu> Date: 5 Feb 90 09:47:25 GMT References: <1129@swbatl.UUCP> Reply-To: paj@uk.co.gec-mrc (Paul Johnson) Organization: GEC-Marconi Research Centre, Great Baddow, UK Lines: 49 Summary: Expires: Sender: Followup-To: >I'm trying to put together a presentation on Object-oriented programming and >it may get presented to some very blue-suit types who can hardly understand >the need to look at environments other than IMS/COBOL, much less OOP. So I'm >looking for good arguments. I can just hear someone asking the question now: > >"But we've got Structured Analysis and we're getting CASE tools. Why do we >need Object-oriented programming?" > >I know that CASE and OO are not mutually exlcusive (in fact, IMHO, it seems >they are synergistic), but the structured analysis part will be trickier to >try and answer to satisfaction. Good luck. This sort of thing is always tricky. I would talk about re-use. Current re-use is of the "take the existing source and modify it" variety. This causes problems for maintainance: you have many slightly different variations of the same code scattered through your systems and no system for keeping track of them. Explain that OO languages (like Eiffel) have genericity (solving one whole class of re-use problems involving changing the type) and inheritance. Inheritance is used when a module has some areas in common with others, but those areas cannot be isolated in one or two functions: they are spread throughout the code. Something not to mention but to bear in mind is that NONE of the structured design methods (and tools based on them) will produce OO designs. They will simply cause you to write structured programs in OO languages. Ignore any blurb that says a method is "object-oriented": it is not (btw I have been looking at this for my company, so I know). At present there is no simple solution to this problem, except perhaps to do a general OO design first, then try to do a detailed structured design, and then use both to write the program. How efficient that will be I do not know (Awaiting flames with interest). Share and enjoy, Paul. -- Paul Johnson | Internet: paj@uk.co.gec-mrc | Phone: +44 245 73331 ext 3216 -------------!------------------.----------!------------------------------- GEC-Marconi Research is not | Don't worry: Baldrick has a Cunning Plan! responsible for my opinions. | (Graffiti on East side of Berlin Wall)