ACKNOWLEDGMENTS Xl PREFACE: STRATEGIES, PATTERNS, AND APPLICATIONS APPLICATIONS xiii STRATEGIES AND PATI'ERNS xiv WHY READ THIS BOOK? xv AUTOMATED TOOL, INCLUDED ON DISKETYE xvi ADDITIONAL STRATEGIES AND PATTERNS xvii CREATIVITY AND INNOVATION xviii CONNIE'S CONVENIENCE STORE (A POINT-OF-SALE APPLICATION) 1 GETFING STARTED 1 IN THIS CHAFFER 1 IDENTIFYING SYSTEM PURPOSE AND FEATURES 2 SELECTING OBJECTS 5 SELECTING PROBLEM-DOMAIN OBJECTS 7 APPLYING PATTERNS: SELECT AND ORGANI7,F. PROBLEM-DOMAIN OBJECTS 18 ESTABLISHING RESPONSIBILITIES FOR PROBLEM-DOMAIN OBJECTS 29 APPLYING PATTERNS: ESTABLISH PROBLEM-DOMAIN RESPONSIBILITIES 55 WORKING OUT PROBLEM-DOMAIN DYNAMICS WITH SCENARIOS 60 SELECTING HUMAN-INTERACTION OBJECTS 66 ESTABLISHING HUMAN-INTERACtION RESPONSIBILITIES 69 WORKING OUT HUMAN-INTERACTION DYNAMICS WITH SCENARIOS 72 SELECTING SYSTEM-INTERACTION OBJECTS 81 ESTABLISHING SYSTEM-INTERACTION RESPONSIBILITIES 83 WORKING OUT SYSTEM-INTERACTION DYNAMICS WITH SCENARIOS 85 SELECTING DATA-MANAGEMENT OBJECTS AND RESPONSIBILITIES 86 WORKING OUT DATA-MANAGEMENT DYNAMICS WITH SCENARIOS 88 PROGRESS AT THIS POINT 90 WRAP-UP 96 WALLY'S WAREHOUSE (A WAREHOUSE APPLICATION) 97 IDENTIFYING SYSTEM PURPOSE AND FEATURES 98 IDENTIFY SYSTEM FEATURES 101 ' SELECTING PROBLEM-DOMAIN OBJECTS 101 APPLYING PATrERNS: SELECT AND ORGANIZE PROBLEM-DOMAIN OBJECTS 105 ESTABLISHING RESPONSIBILITIES FOR THE PROBLEM-DOMAIN OBJECTS 114 WORKING OUT PROBLEM-DOMAIN DYNAMICS WITH SCENARIOS 128 SELECTING HUMAN-INTERACTION OBJECTS AND RESPONSIBILITIES 133 WORKING OUT HUMAN-INTERACTION DYNAMICS WITH SCENARIOS 134 SELECTING DATA-MANAGEMENT OBJECTS AND RESPONSIBILITIES 142 SELECTING SYSTEM-INTERACTION OBJECTS AND RESPONSIBILITIES 143 PROGRESS AT THIS POINT 143 WRAP-UP 149 OLLIE'S ORDER CENTER (AN ORDER-ENTRY APPLICATION) 151 GETTING STARTED 151 IDENTIFYING SYSTEM PURPOSE AND 'FEATURES 152 SELECTING OBJECTS 156 SELECTING PROBLEM-DOMAIN OBJECTS 158 REUSE, REUSE, REUSE 160 ESTABLISHING RESPONSIBILITIES FOR PROBLEM-DOMAIN OBJECTS 165 WORKING OUT PROBLEM-DOMAIN DYNAMICS WITH SCENARIOS 182 SELECTING HUMAN-INTERACTION OBJECTS 183 ESTABLISHING HUMAN-INTERACTION RESPONSIBILITIES 184 WORKING OUT HUMAN-INTERACTION DYNAMICS WITH SCENARIOS 185 SELECTING SYSTEM INTERACTION OBJECTS 187 ESTABLISHING SYSTEM-INTERACTION RESPONSIBILITIES 188 WORKING OUT SYSTEM-INTERACTION DYNAMICS WITH SCENARIOS 189 SELECTING DATA-MANAGEMENT OBJECTS AND RESPONSIBILITIES 189 WORKING OUT DATA-MANAGEMENT DYNAMICS WITH SCENARIOS 190 PROGRESS AT THIS POINT 192 WRAP-UP 196 4 DANI'S DIVERTERS (A SOFT REAL-TIME CONVEYANCE APPLICATION) 197 IDENTIFYING SYSTEM PURPOSE AND FEATURES 197 ACTIVITIES, ACTIVITIES, ACTIVITIES 202 SELECTING PROBLEM-DOMAIN OBJECTS 203 APPLYING PATTERNS: ORGANIZE PROBLEM-DOMAIN OBJECTS 207 WORKING OUT PROBLEM-DOMAIN DYNAMICS WITH SCENARIOS 211 SELECTING HUMAN INTERACTION OBJECTS 222 SELECTING SYSTEM-INTERACTION OBJECTS 223 SELECTING DATA-MANAGEMENT OBJECTS AND RESPONSIBILITIES 224 ESTABLISHING RESPONSIBILITIES 224 REAL-TIME SYSTEM CONSIDERATIONS 230 PROGRESS AT THIS POINT 238 WRAP-UP 241 5 ANDI'$ AUTOPILOT (A HARD REAL-TIME CONTROL APPLICATION) 243 IDENTIFYING SYSTEM PURPOSE AND FEATURES 243 SELECTING OBJECTS 244 SELECTING PROBLEM-DOMAIN OBJECTS 250 WORKING OUT THE MODEL 257 WORKING OUT PROBLEM-DOMAIN DYNAMICS WITH SCENARIOS 266 SELECTING HUMAN-INTERACTION OBJECTS 281 ESTABLISHING HUMAN-INTERACTION RESPONSIBILITIES 28 l WORKING OUT HUMAN-INTERACTION DYNAMICS WITH SCENARIOS 281 SELECTING DATA-MANAGEMENT OBJECTS 282 SELECTING SYSTEM-INTERACTION OBJECTS 282 ESTABLISHING SYSTEM-INTERACTION RESPONSIBILITIES 282 WORKING OUT SYSTEM-INTERACTION DYNAMICS WITH SCENARIOS 283 PROGRESS AT THIS POINT 284 WRAP-UP 288 ALL FIVE APPLICATIONS, AT HIGH SPEED 289 THE POWER OF PATTERNS 289 PATTERNS, SUPPORTED BY STRATEGIES 290 CONNIE'S CONVENIENCE STORE (A POINT-OF-SALE APPLICATION) 291 WALLY'S WAREHOUSE (A WAREHOUSE APPLICATION) 309 OLLIE'S ORDER CENTER (AN ORDER-ENTRY APPLICATION) 335 DANI'S DIVERTERS (A SOFT REAL-TIME APPLICATION) 359 ANDI'S AUTO-PILOT (A HARD REAL-TIME APPLICATION) 368 WRAP-UP 380 CONGRATULATIONS ! 380 STRATEGIES AND PATTERNS HANDBOOK 381 STRATEGIES FOR BUILDING OBJECT MODELS 38 l PATTERNS FOR BUILDING OBJECT MODELS 433 EPILOG 457 NOTATION 461 CRITICAL SUCCESS FACTORS 461 THE ICONS 461 THE CONNECTIONS 463 A BUSINESS EXAMPLE 464 A REAL-TIME EXAMPLE 466 SCENARIO VIEWS 466 OBJECT-MODEL COMPONENTS 469 OTHER NOTATIONS, NOT INCLUDED (AND WHY) 470 WRAP-UP 472 B PATTERNS IN OTHER FIELDS 473 C DATA MANAGEMENT 481 DM OBJECTS: WHAT, WHEN, WHY 481 PD AND DM OBJECTS 482 HI AND PD OBJECTS 482 DETAILS ON DM OBJECTS 482 IMPLEMENTATION NOTES 486 WRAP-UP 489 D THE EXECUTIVE DECISION TO ADOPT OBJECT TECHNOLOGY 491 SIGNIFICANT IMPROVEMENTS WITH OBJECT TECHNOLOGY 491 WHY EXECUTIVES ADOPT OBJECT TECHNOLOGY 494 HOW TO GET STARTED WITH OBJECT TECHNOLOGY 495 E A HISTOGRAM OF INITIAL OBJECT MODELING 499 GLOSSARY 501 BIBLIOGRAPHY 507 SOFTWARE DEVELOPMENT 507 PATTERNS IN OTHER FIELDS 508 OTHER PUBLICATIONS 508 RELATED PUBLICATIONS BY THE AUTHORS 508 INDEX 509