TY - BOOK AU - Starr,Leon TI - How to build Shlaer-Mellor object models / T2 - Yourdon Press Computing Series SN - 0132076632 PY - 1996/// CY - Upper Saddle River, New Jersey PB - Prentice Hall KW - OBJECT-ORIENTED PROGRAMMING KW - SYSTEM ANALYSIS KW - PROGRAMACION ORIENTADA A OBJETOS N1 - CONTENIDO BASIC MODEL STRUCTURES 1. Objects 3 Object table rules 5 Object categories 8 Frequently asked questions about objects 19 2. Attributes 23 Purpose 24 Identification role 25 Dependence on other attributes 29 Value assignment 33 Universal meaning 35 Origin 42 Summary of Attribute Properties 43 Frequently asked questions about attributes 44 3. Relationships 47 Relationships define application policies 50 Relationship types 54 Type 1: Binary Relationships 56 Type 2: Associative Relationships 58 Type 3: Supertype Relationships 59 And now for some examples 60 4. Binary relationships 61 Non-reflexive binary relationships 63 Multiplicity 64 One to one 64 One to many 66 Many to many 68 Conditional relationships 69 Reflexive relationships 72 5. Associative relationships 77 Multiplicity on associative relationships 81 Conditionality on associative relationships 85 Frequently asked questions about associative relationships 90 6. Basic supertype relationships 93 What is a supertype relationship? 93 When to use supertype relationships 97 Generalization and specialization 97 Mutual exclusion 102 How supertypes are formalized 106 Which policy should you use? 111 Frequently asked questions about supertype relationships 113 7. Advanced supertype relationships 115 Multi-directional supertyping 115 Multi-level supertyping 125 Overlapping supertypes (selective generalization) 127 The danger of supertype hacking 132 How to organize subtype levels 133 Subtype migration 133 When to subtype an object according to its states 136 Don't overdo the hierarchical thing 137 Sometimes the wrong thing is subtyped 138 Summary 140 How to build useful models 8. How to avoid model hacking 143 9. Why write model descriptions? 153 Five reasons to write model descriptions 154 Summary 163 10. How to write object descriptions 165 Describe meaning-not syntax 165 Use both drawings and text 170 Use terminology appropriate to the problem domain 174 Refer to other model elements in the same problem domain 175 Describe behavior 176 Don't be wishy-washy 178 How long should an object description be? 179 How much explanation is necessary? 179 Summary 180 11. How to write attribute descriptions 181 Descriptive attribute descriptions 182 Descriptive numeric domains 183 Descriptive set attributes 187 Descriptive name attributes 192 Invented identifiers 192 Found identifiers 194 Referential attribute descriptions 195 12. How to write relationship descriptions 199 What can you say about relationships? 199 Don't write the relationship descriptions last! 204 Summary 205 Model patterns 13. Is zero-one-many specific enough? 209 Conclusions 213 14. Reflexive patterns 215 Reflexive relationships and graphs 215 Self-referencing in analysis and programming 218 Implementation mechanisms disguised as application policy 220 Simple and complex graphs 222 15. Network patterns 223 Adjacent territorios 223 Summary-really important staff 236 16. Linear patterns 237 Example 1: Mission editor in a flight Simulator 238 Example 2: Polyline draw tool in an illustration program 254 Summary 260 17. Tree patterns 261 A simple tree 263 A tree with a root 264 A tree with leaves 266 How much modeling is too much? 278 Summary 279 ER -