PART Ⅰ INTRODUCTION 3
1 面向对 象分析和设计 3
2 Iterative, Evolutionary, and Agile 17
3 Case Studies 41
PART Ⅱ INCEPTION 47
4 Inception is Not the Requirements Phase 47
5 Evolutionary Requirements 53
6 Use Cases 61
7 Other Requirements 101
PART Ⅲ ELABORATION ITERATION 1 — BASICS 123
8 Iteration 1—Basics 123
9 Domain Models 131
10 System Sequence Diagrams 173
11 Operation Contracts 181
12 Requirements to Design—Iteratively 195
13 Logical Architecture and UML Package Diagrams 197
14 On to Object Design 213
15 UML Interaction Diagrams 221
16 UML Class Diagrams 249
17 GRASP: Designing Objects with Responsibilities 271
18 Object Design Examples with GRASP 321
19 Designing for Visibility 363
20 Mapping Designs to Code 369
21 Test-Driven Development and Refactoring 385
22 UML Tools and UML as Blueprint 395
PART Ⅳ ELABORATION ITERATION 2 — MORE PATTERNS 401
23 Iteration 2—More Patterns 401
24 Quick Analysis Update 407
25 GRASP: More Objects with Responsibilities 413
26 Applying GoF Design Patterns 435
PART Ⅴ ELABORATION ITERATION 3 — INTERMEDIATE TOPICS 475
27 Iteration 3—Intermediate Topics 475
28 UML Activity Diagrams and Modeling 477
29 UML State Machine Diagrams and Modeling 485
30 Relating Use Cases 493
31 Domain Model Refinement 501
32 More SSDs and Contracts 535
33 Architectural Analysis 541
34 Logical Architecture Refinement 559
35 Package Design 579
36 More Object Design with GoF Patterns 587
37 Designing a Persistence Framework with Patterns 621
38 UML Deployment and Component Diagrams 651
39 Documenting Architecture: UML & the N+1 View Model 655
PART Ⅵ SPECIAL TOPICS 673
40 More on Iterative Development and Agile Project Management 673