Page 20 -
P. 20
CONTENTS xix
CHAPTER 21 OBJECT-ORIENTED ANALYSIS 571
21.1 Object-Oriented Analysis 572
21.1.1 Conventional vs. OO Approaches 572
21.1.2 The OOA Landscape 573
21.1.3 A Unified Approach to OOA 575
21.2 Domain Analysis 576
21.2.1 Reuse and Domain Analysis 577
21.2.2 The Domain Analysis Process 577
21.3 Generic Components of the OO Analysis Model 579
21.4 The OOA Process 581
21.4.1 Use-Cases 581
21.4.2 Class-Responsibility-Collaborator Modeling 582
21.4.3 Defining Structures and Hierarchies 588
21.4.4 Defining Subjects and Subsystems 590
21.5 The Object-Relationship Model 591
21.6 The Object-Behavior Model 594
21.6.1 Event Identification with Use-Cases 594
21.6.2 State Representations 595
21.7 Summary 598
REFERENCES 599
PROBLEMS AND POINTS TO PONDER 600
FURTHER READINGS AND INFORMATION SOURCES 601
CHAPTER 22 OBJECT-ORIENTED DESIGN 603
22.1 Design for Object-Oriented Systems 604
22.1.1 Conventional vs. OO Approaches 605
22.1.2 Design Issues 607
22.1.3 The OOD Landscape 608
22.1.4 A Unified Approach to OOD 610
22.2 The System Design Process 611
22.2.1 Partitioning the Analysis Model 612
22.2.2 Concurrency and Subsystem Allocation 613
22.2.3 The Task Management Component 614
22.2.4 The User Interface Component 615
22.2.5 The Data Management Component 615
22.2.6 The Resource Management Component 616
22.2.7 Intersubsystem Communication 616
22.3 The Object Design Process 618
22.3.1 Object Descriptions 618
22.3.2 Designing Algorithms and Data Structures 619
22.3.3 Program Components and Interfaces 621
22.4 Design Patterns 624
22.4.1 Describing a Design Pattern 624
22.4.2 Using Patterns in Design 625
22.5 Object-Oriented Programming 625
22.6 Summary 626
REFERENCES 627
PROBLEMS AND POINTS TO PONDER 628
FURTHER READINGS AND INFORMATION SOURCES 629