Object-Oriented Software Engineering

Anton Eliëns

Vrije Universiteit, Amsterdam

CMG Course - 10 juni 1998


www.cs.vu.nl/~eliens/online/courses/cmg/oo


slide: CMG Course: Web Applications


Topics:


slide: Object-Oriented Software Engineering (abstract)


Keywords and phrases


slide: Keywords and phrases


Characterizations


slide: OO is ...


Let's have a look at the Introduction from Principles of Object-Oriented Software Development


slide: Let's have a look ...



   Did
      YOU
         ever
  	    manage
  		    a 
  		       project?
  

slide: Did you ever manage a project?


Critical Success Factors


slide: Critical Success Factors


Key Failure Indicators

see Surviving Object-Oriented Projects: A managers Guide


slide: Key Failure Indicators


OO - Success and Failure


slide: OO - Success and Failure


Possible benefits - responsiveness


slide: Possible benefits - responsiveness


Drawbacks


slide: Drawbacks


The hazards of C++?


slide: The hazards of C++?


Managing (the complexity of) C++


slide: Managing (the complexity of) C++


Risk-reduction Strategies

see Risk Avoidance Patterns


slide: Risk-reduction Strategies


Applications Frameworks


slide: Case studies: Application Frameworks


Design by Contract

see Ch. 3, Contracts


slide: Design by Contract


Frameworks = Components + Patterns

Ralph Johnson, CACM Nov. 1997

Self-documentation Principle

Bertrand Meyer, OO Software Construction 2nd ed.

the designer of a module should strive to make all information about the module part of the module itself ...


slide: Frameworks = Components + Patterns


The benefits of frameworks stem from the inversion of control

A Framework defines an Architecture?


slide: The benefits ...


Software Architecture = a set of rules, guidelines, interfaces, and conventions used to define how components and applications communicate and interoperate with eachother ...

see patterns


slide: Software Architecture


A Catalogue of Design patterns

see the GOF Design Patterns and the Patterns Homepage


slide: A Catalogue of Design patterns


CORBA

See Ch 6: Component Technology


slide: CORBA


Dimensions of Risks

Don't discuss risks, unless you know how to do Project Management


slide: Dimensions of Risks


Risk Reduction Strategies


slide: Risk Reduction Strategies


knowledge


slide: Knowledge


teaming


slide: Teaming


productivity


slide: Productivity


ownership


slide: Ownership


distraction


slide: Distraction


training


slide: Training


OO offers


slide: Conclusions


Yet beware of


slide: Beware of