Object-Oriented System Development, 1st edition

  • Dennis deChampeaux
  • Doug Lea
  • Penelope Faure

Unfortunately, this item is not available in your country.

Overview

There is more to "object-oriented" than application programming. Object-oriented methods have revolutionized the way analysts, designers, software engineers, project managers, and tool builders construct entire software systems.

Object-Oriented System Development will help you to better understand the role of analysis and design in the object-oriented development process. Rather than subscribing to a particular object-oriented method, this book gives step-by-step instructions on how to put key object-oriented concepts to work in software construction. Many examples, including a full banking system, are developed throughout the book to illustrate the process of object-oriented software development from analysis, through design, and into implementation.

With this book, you will learn how to:

  • use core object-oriented notions such as inheritance and encapsulation in analysis and design;

  • construct system models;

  • map designs to distributed-processing frameworks;

  • use prototypes more productively;

  • address system resource and performance issues;

  • use common tools and services; and

  • reuse declarative models, design architectures, and code.

Although geared to software professionals involved in the development of medium, large, and distributed systems, Object-Oriented System Development is equally valuable to anyone who wants to gain a detailed technical perspective on the object-oriented software development process.

"This book (Object-Oriented System Development) is for many different software professionals: analysts, designers, implementors, software engineers, project managers, students and teachers, and others."
- Computing Reviews

020156355XB04062001

Table of contents



1. Overview.

Scope.

Objects.

Development Paradigms.

Development Phases.

Summary.

Further Reading.

Exercises.

I. ANALYSIS.

2. Introduction to Analysis.

Purpose.

Models.

Process.

Summary.

Further Reading.

Exercises.

3. Object Statics.

Instances.

Classes.

Attributes.

Attribute Features.

Constraints.

Identifying Objects and Classes.

Summary.

Further Reading.

Exercises.

4. Object Relationships.

Relationships.

Collections.

Identifying Relationships Summary.

Further Reading.

Exercises.

5. Object Dynamics

Describing Behavior.

Transition Networks.

Examples.

Reducing Complexity.

Summary.

Further Reading.

Exercises.

6. Object Interaction

Transitions.

Sending and Receiving Events.

Interaction Notations.

Examples.

Summary.

Further Reading.

Exercises.

7. Class Relationships

Property Inheritance.

Subclasses.

Multiple Inheritance.

Sibling Relationships.

Set Operations.

Inheritance of Relations.

Summary.

Further Reading.

Exercises.

8. Instances

Subclasses and Instances.

Metaclasses.

Parametric Instances.

Summary.

Further Reading.

Exercises.

9. Ensembles.

Ensembles.

Exposing Constituents.

Other Decomposition Constructs.

Ensembles as Systems.

Summary.

Further Reading.

Exercises.

10. Constructing a System Model.

Requirements Fragment.

Use Cases.

Subsystems.

Vocabulary.

Classes.

Ensembles.

Model.

Summary.

Exercises.

11. Other Requirements.

Resources.

Timing.

Other Constraints.

Summary.

Further Reading.

Exercises.

12. The Analysis Process.

Software Development Process.

Default Sequence of Steps.

OO Analysis of the OO Analysis Process.

Alternative Processes.

Tools.

Summary.

Exercises.

13. Domain Analysis.

Models.

Reuse.

Summary.

Further Reading.

Exercises.

14. The Grady Experience.

II. DESIGN.

15. From Analysis to Design.

Continuity.

Transformation.

Design Phases.

Design Criteria.

Managing Design.

Summary.

Further Reading.

Exercises.

16. Description and Computation.

Translating Analysis Models.

From Abstract to Concrete Concrete.

Composing Classes.

Controlling Transitions.

Generic Classes.

Generating Instances.

Design for Testability.

Transformation and Composition.

Summary.

Further Reading.

Exercises.

17. Attributes in Design.

Defining Attributes.

Concrete Attributes.

Views.

Exports.

Composition and Inheritance.

Summary.

Further Reading.

Exercises.

18. Relationships in Design.

Relationships.

Collections.

Coordinators.

Relations versus Composites.

Summary.

Further Reading.

Exercises.

19. Designing Transitions.

States and Guards.

Atomicity.

Timing Constraints.

Concrete Transitions.

Summary.

Further Reading.

Exercises.

20. Interaction Designs.

Callbacks.

Replies.

Invocations.

Control Flow.

Summary.

Further Reading.

Exercises.

21. Dispatching.

Selection.

Resolution.

Routing.

Summary.

Further Reading.

Exercises.

22. Coordination.

Joint Actions.

Controlling Groups.

Open Systems.

Summary.

Further Reading.

Exercises.

23. Clustering Objects.

Clustering.

Cluster Objects.

System Tools and Services.

Persistence.

Summary.

Further Reading.

Exercises.

24. Designing Passive Objects.

Transformations.

Storage Management.

Passive Objects in C++.

Summary.

Further Reading.

Exercises.

25. Performance Optimization.

Optimization and Evolution.

Algorithmic Optimization.

Performance Transformations.

Optimization in C++.

Summary.

Further Reading.

Exercises.

26. From Design to Implementation.

Testing.

Performance Assessment.

Summary.

Further Reading.

Exercises.

Appendix. Notation.

OAN.

ODL.

Bibliography.

Index. 020156355XT04062001

Published by Addison-Wesley Professional (May 31st 1993) - Copyright © 1993