This chapter has dealt with the implications an object-oriented approach has for practical application development.

Application integration

1


slide: Section 11.1: Application development

In section 1, the Microsoft object linking and embedding facility and the OMG proposal for the integration of disparate components, which involves an interface description language (IDL), general object services and an object request broker (ORB), were discussed. We also looked at the ODMG standard for persistent objects, which extends the OMG proposal with object storage facilities. Further, we discussed the duality between objects and events, which plays a role in analysis, design and implementation. In section 2, we looked at the issues that arise in the design of reusable software libraries, and we discussed the conventions and support tools that were developed for the Eiffel libraries. We also looked at the realization of template classes for the abstract data structures bag and set in C++.

Library design

2

  • reuse -- library design
  • conventions -- naming, taxonomy
  • indexing -- archival and querying
  • template classes -- bags and sets
} In section 3, when considering methods and tools for object-oriented application development, we discussed the heritage from structured approaches and looked at the Fusion method as an example of a strongly systematic approach to the process of development. The Fusion method has been compared with a number of other methods, including Objectory, OMT, Booch OOD and CRC. Further, we looked at some CASE tools and programming environments, as well as some of the object database systems for C++.

Methods and tools

3

  • methods -- structural -> object-oriented
  • tools -- analysis, design, implementation
  • comparative study -- Fusion
  • program development -- environments for C++
  • object database systems -- with C++ interface

Libraries for C++

4

  • criteria for libraries -- user specific, domain, features
  • requirements -- data structures, mathematics, simulation, GUI
We concluded, in section 4, with an overview of the libraries for C++. In particular, we looked at the criteria guiding the choice for a particular library, including user-specific criteria, domain-specific criteria and features concerning documentation and support.