Index 353 namespace, 246 notation, 247–249 visibility, 96, 99 parameter, 98 path. See also scenario incomplete, revealing, 83 merge point, 153 pattern, 133–137, 322 people. See user performance customer, triggering events, 208 inventory control system case study requirements, 39, 41 system requirements, 289 period (.), 108 phases, project lifecycle, 14–15 physical implementation, 260–261 platform support, modeling tools, 309 plus sign (+), 96 post-condition Activity diagram, 160 Use Case narrative, 72–73, 77–78 pre-condition, 70–71, 75 primitive data type, 95 printing, 309 private, 96, 99 problem domain, 38 problem statement Class Diagram, 129–130 inventory control system case study, 35–36 Statechart diagram, 206, 221 procedure call, 190, 324 process, 6, 9 processors, identifying. See Deployment diagram product object, constructing, 221–224 profile, 9, 328 programmers assumptions, making, 43 cooperation, XP (extreme programming), 19–21 MVC (Model View Controller) method, advantages, 292 object-oriented methods, teaching, 18–19 portraying code to other, 137 roadmap, creating, 300 Web development, 283–284 “programming by contract”, 70 properties, shared. See superclass property, 94, 101 protected, 96, 99, 122 prototypes, 82–83 public, 96, 99 purchase order initial entry, 221–222 tracking, 222–223 purpose object encapsulation, 32 Sequence diagram, 168 qualified associations, 111–112 qualifier, 56, 321 quality-assurance, 82 query, database code, writing, 281–282, 292 interface, 294 Use Case diagram, 289–290 Web application design, 300–301 range, indicating, 108 Rational Software, 305 realization, 257 real-time systems, 16–17 receiving Deployment diagram, 267 objects, 200 package diagram, 250–251 requirements, analyzing, 36 reflexive association, 111 relational database accessing, 256, 268–269 integrating, 311–312 Java Web development, 293, 297 object, 310 relationships aggregation and composition, 120–121 association notation, 56 conditionally delegating to another Use Case ( dependency notation), 57–58 defined, 55–56 delegating to another Use Case ( dependency notation), 56–57 generalization, 58 objects in same class (reflexive association), 111 purpose, displaying, 321 stereotype notation, 56 Use Case diagram, 55–58 relationships, software modules aggregation, 117–121 associations, 105–112 attributes, modeling, 95–98 building, 130–133 compartments, modeling, 100–102 described, 25–26, 93–95, 255–256, 318 Continued
354 Index relationships, software modules (continued) elements, 95 generalization, 121–126 for inventory control system case study, 129–137, 258–260 logical design, mapping to physical implementation, 260–261 Model 2 Architecture, 298, 328 notation, 256–258 operation, modeling, 98–100 patterns, 133–137 problem statement, 129–130 round-trip engineering, 311–312 Sequence and Collaboration diagram elements, mapping, 200–201 views, creating different, 102 Web development, 290–291, 302 XML (eXtensible Markup Language) modeling, 303 reliability, 288 repository, modeling tools, 310 requirements categories, 318 features, defining (Use Cases), 54–55 inventory control system case study, gathering, 36–39, 40–42 link, showing, 189 misunderstandings, avoiding, 82 preferences, confusing, 43, 318 Web development, gathering, 288–291 resources. See also Class diagram inventory control system case study requirements, 41–42 referenced by executable during runtime, 256 Use Case model, 50, 51–52 response Object diagram, modeling, 187, 190 synchronous, 197 time, modeling over, 170, 172 returns, 223, 242, 323 reverse engineering, 311–312, 328 review process, speeding, 137 role associations (Class Diagram), 109 behavior, defining, 322 names, when to use, 321 Use Case system, 54 rule. See also aggregation; composition attributes, 97 constraint, 9, 320 defined, 317 inventory control system case study requirements, 38–39, 41 Rumbaugh, James, 6, 317 RUP (Rational Unified Process), 14–16, 318 saving orders, 78 scalability, 289 scenario defined, 81, 320 execution, CRC, 18–19 Sequence diagram, building, 179–185, 326 XP (extreme programming), 20–21 screen flow, displaying, 73 security checking, Fill Order case study, 75 requirements, 289 self-assessment test, back-of-the-book CD-ROM, 331 self-reference, 190, 201, 324 send event defining (Statechart), 219–220 transition events (Statechart), 231 Sequence diagram appointments, querying, 301 basic notation, defining, 169–171 Collaboration diagram versus, 188–189, 327 described, 27, 325 extended notation, defining, 171–173 HTTP (HyperText Transfer Protocol), 280 interactions, mapping to objects, 168–169 inventory control system case study, applying, 179–185 Model 2 Architecture, 298 purpose, 168, 324 Statechart, deriving, 237–243 server. See Deployment diagram shareware programs, 331 shipping inventory control system case study, 36, 242 pack for event, 223 package diagram, 250, 253 Shlaer-Mellor Method, 16–17, 318 signal, 170 signature, 98, 102, 323 slash (/), 96 software components, mapping to architecture (Deployment diagram), 266 design patterns, 133–137 litigation of misunderstood requirements, 82 trial, 331 software modules for inventory control system case study, 258–260 logical design, mapping to physical implementation, 260–261 Model 2 Architecture, 298, 328 modeling, described, 255–256, 318 notation, 256–258
- Page 1 and 2:
UML WEEKEND CRASH COURSE THOMAS A.
- Page 4 and 5:
UML Weekend Crash Course Thomas A.
- Page 6 and 7:
About the Author Tom Pender is the
- Page 8:
With thanks to Lynne Angeloro for h
- Page 11 and 12:
x Preface To get the most out of th
- Page 13 and 14:
xii Preface Features First, as you
- Page 15 and 16:
Part VI—Sunday Afternoon ........
- Page 17 and 18:
xvi Contents Encapsulation ........
- Page 19 and 20:
xviii Contents Modeling the Class C
- Page 21 and 22:
xx Contents Session 22-Modeling the
- Page 24:
UML Weekend Crash Course
- Page 27 and 28:
PART I Friday Evening Session 1 Wha
- Page 29 and 30:
6 Friday Evening The UML is a stand
- Page 31 and 32:
8 Friday Evening will find three pa
- Page 33 and 34:
10 Friday Evening The Continuing Re
- Page 36 and 37:
SESSION 2 UML and Development Metho
- Page 38 and 39:
Session 2—UML and Development Met
- Page 40 and 41:
Session 2—UML and Development Met
- Page 42 and 43:
Session 2—UML and Development Met
- Page 44 and 45:
Session 2—UML and Development Met
- Page 46 and 47:
SESSION 3 How to Approach the UML S
- Page 48 and 49:
Session 3—How to Approach the UML
- Page 50 and 51:
Session 3—How to Approach the UML
- Page 52 and 53:
Session 3—How to Approach the UML
- Page 54 and 55:
Session 3—How to Approach the UML
- Page 56:
Session 3—How to Approach the UML
- Page 59 and 60:
36 Friday Evening Remember to pay c
- Page 61 and 62:
38 Friday Evening Constraints The s
- Page 63 and 64:
40 Friday Evening An Inventory Cont
- Page 65 and 66:
42 Friday Evening Performance How
- Page 67 and 68:
44 Friday Evening In the effort to
- Page 70 and 71:
Part II — Saturday Morning Sessio
- Page 72 and 73:
SESSION 5 Understanding the Use Cas
- Page 74 and 75:
Session 5—Understanding the Use C
- Page 76 and 77:
Session 5—Understanding the Use C
- Page 78 and 79:
Session 5—Understanding the Use C
- Page 80 and 81:
Session 5—Understanding the Use C
- Page 82:
Session 5—Understanding the Use C
- Page 85 and 86:
62 Saturday Morning Order Fulfillme
- Page 87 and 88:
64 Saturday Morning What does the
- Page 89 and 90:
66 Saturday Morning For example, th
- Page 91 and 92:
68 Saturday Morning REVIEW The goal
- Page 93 and 94:
70 Saturday Morning Much of this la
- Page 95 and 96:
72 Saturday Morning You reply that
- Page 97 and 98:
74 Saturday Morning Writing a Use C
- Page 99 and 100:
76 Saturday Morning Use Case dialog
- Page 101 and 102:
78 Saturday Morning Table 7-7 The F
- Page 104 and 105:
SESSION 8 Identifying the Use Case
- Page 106 and 107:
Session 8—Identifying the Use Cas
- Page 108 and 109:
Session 8—Identifying the Use Cas
- Page 110 and 111:
Session 8—Identifying the Use Cas
- Page 112 and 113:
Session 8—Identifying the Use Cas
- Page 114:
Session 8—Identifying the Use Cas
- Page 117 and 118:
94 Saturday Morning The Class diagr
- Page 119 and 120:
96 Saturday Morning Attribute visib
- Page 121 and 122:
98 Saturday Morning In a modeling t
- Page 123 and 124:
100 Saturday Morning Table 9-2 Cont
- Page 125 and 126:
102 Saturday Morning Operation comp
- Page 128 and 129:
SESSION 10 The Class Diagram: Assoc
- Page 130 and 131:
Session 10—The Class Diagram: Ass
- Page 132 and 133:
Session 10—The Class Diagram: Ass
- Page 134 and 135:
Session 10—The Class Diagram: Ass
- Page 136 and 137:
Session 10—The Class Diagram: Ass
- Page 138 and 139:
Part II — Saturday Morning Part R
- Page 140 and 141:
SESSION 11 The Class Diagram: Aggre
- Page 142 and 143:
Session 11—The Class Diagram: Agg
- Page 144 and 145:
Session 11—The Class Diagram: Agg
- Page 146 and 147:
Session 11—The Class Diagram: Agg
- Page 148 and 149:
Session 11—The Class Diagram: Agg
- Page 150:
Session 11—The Class Diagram: Agg
- Page 153 and 154:
130 Saturday Afternoon or not. Each
- Page 155 and 156:
132 Saturday Afternoon 5. “Any it
- Page 157 and 158:
134 Saturday Afternoon designed to
- Page 159 and 160:
136 Saturday Afternoon Table 12-3 T
- Page 161 and 162:
138 Saturday Afternoon REVIEW The C
- Page 163 and 164:
140 Saturday Afternoon Introducing
- Page 165 and 166:
142 Saturday Afternoon Table 13-1 C
- Page 167 and 168:
144 Saturday Afternoon 28: VendorPr
- Page 169 and 170:
146 Saturday Afternoon 0..* VendorP
- Page 172 and 173:
SESSION 14 Modeling the Functional
- Page 174 and 175:
Session 14—Modeling the Functiona
- Page 176 and 177:
Session 14—Modeling the Functiona
- Page 178:
Session 14—Modeling the Functiona
- Page 181 and 182:
158 Saturday Afternoon Table 15-1 T
- Page 183 and 184:
160 Saturday Afternoon Figure 15-1
- Page 185 and 186:
162 Saturday Afternoon More product
- Page 187 and 188:
164 Saturday Afternoon start (merge
- Page 190 and 191:
SESSION 16 Modeling the Dynamic Vie
- Page 192 and 193:
Session 16—Modeling the Dynamic V
- Page 194 and 195:
Session 16—Modeling the Dynamic V
- Page 196 and 197:
Session 16—Modeling the Dynamic V
- Page 199 and 200:
PART III # Saturday Afternoon Part
- Page 201 and 202:
PART IV Saturday Evening Session 17
- Page 203 and 204:
180 Saturday Evening Scenario 1 Get
- Page 205 and 206:
182 Saturday Evening The next step
- Page 207 and 208:
184 Saturday Evening For Scenario 2
- Page 209 and 210:
186 Saturday Evening For subsequent
- Page 211 and 212:
188 Saturday Evening 6:addProduct(c
- Page 213 and 214:
190 Saturday Evening 7:addProduct(c
- Page 215 and 216:
192 Saturday Evening REVIEW The Col
- Page 217 and 218:
194 Saturday Evening Scenario 1 Get
- Page 219 and 220:
196 Saturday Evening pointing towar
- Page 221 and 222:
198 Saturday Evening :OrderFullfill
- Page 223 and 224:
200 Saturday Evening Scenario 5, in
- Page 226 and 227:
SESSION 20 Modeling the Dynamic Vie
- Page 228 and 229:
Session 20—Modeling the Dynamic V
- Page 230 and 231:
Session 20—Modeling the Dynamic V
- Page 232 and 233:
Session 20—Modeling the Dynamic V
- Page 234:
Session 20—Modeling the Dynamic V
- Page 238 and 239:
Part V — Sunday Morning Session 2
- Page 240 and 241:
SESSION 21 Applying the Basic State
- Page 242 and 243:
Session 21—Applying the Basic Sta
- Page 244 and 245:
Session 21—Applying the Basic Sta
- Page 246 and 247:
Session 21—Applying the Basic Sta
- Page 248:
Session 21—Applying the Basic Sta
- Page 251 and 252:
228 Sunday Morning receivePmt(amt)[
- Page 253 and 254:
230 Sunday Morning Figure 22-4 repr
- Page 255 and 256:
232 Sunday Morning A substate is a
- Page 257 and 258:
234 Sunday Morning Monitor when tem
- Page 260 and 261:
SESSION 23 Applying the Extended St
- Page 262 and 263:
Session 23—Applying the Extended
- Page 264 and 265:
Session 23—Applying the Extended
- Page 266 and 267:
Session 23—Applying the Extended
- Page 268 and 269:
SESSION 24 Modeling the Development
- Page 270 and 271:
Session 24—Modeling the Developme
- Page 272 and 273:
Session 24—Modeling the Developme
- Page 274 and 275:
Session 24—Modeling the Developme
- Page 276 and 277:
Session 24—Modeling the Developme
- Page 278 and 279:
SESSION 25 Modeling the Static View
- Page 280 and 281:
Session 25—Modeling the Static Vi
- Page 282 and 283:
Session 25—Modeling the Static Vi
- Page 284 and 285:
Session 25—Modeling the Static Vi
- Page 286 and 287:
SESSION 26 Modeling the Static View
- Page 288 and 289:
Session 26—Modeling the Static Vi
- Page 290 and 291:
Session 26—Modeling the Static Vi
- Page 292 and 293:
Session 26—Modeling the Static Vi
- Page 294 and 295:
Session 26—Modeling the Static Vi
- Page 296 and 297:
PART # V Sunday Morning Part Review
- Page 299 and 300:
PART VI Sunday Afternoon Session 27
- Page 301 and 302:
278 Sunday Afternoon design, and mo
- Page 303 and 304:
280 Sunday Afternoon :User :Web Br
- Page 305 and 306:
282 Sunday Afternoon studied Java p
- Page 307 and 308:
284 Sunday Afternoon and time. A JS
- Page 310 and 311:
SESSION 28 Analysis and Architectur
- Page 312 and 313:
Session 28—Analysis and Architect
- Page 314 and 315:
Session 28—Analysis and Architect
- Page 316 and 317:
Session 28—Analysis and Architect
- Page 318 and 319:
Session 28—Analysis and Architect
- Page 320 and 321:
SESSION 29 Design of a Web Applicat
- Page 322 and 323:
Session 29—Design of a Web Applic
- Page 324 and 325:
Session 29—Design of a Web Applic
- Page 326 and 327: Session 29—Design of a Web Applic
- Page 328 and 329: Session 29—Design of a Web Applic
- Page 330 and 331: SESSION 30 UML Modeling Tools Sessi
- Page 332 and 333: Session 30—UML Modeling Tools 309
- Page 334 and 335: Session 30—UML Modeling Tools 311
- Page 336 and 337: Session 30—UML Modeling Tools 313
- Page 338 and 339: PART VI # Sunday Afternoon Part Rev
- Page 340 and 341: APPENDIX A Answers to Part Reviews
- Page 342 and 343: Answers to Part Reviews 319 20. I a
- Page 344 and 345: Answers to Part Reviews 321 26. It
- Page 346 and 347: Answers to Part Reviews 323 22. Dra
- Page 348 and 349: Answers to Part Reviews 325 Sunday
- Page 350 and 351: Answers to Part Reviews 327 It maps
- Page 352 and 353: APPENDIX B What’s on the CD-ROM T
- Page 354 and 355: What’s on the CD-ROM 331 Trial So
- Page 356 and 357: Glossary abstract class A class th
- Page 358 and 359: Glossary 335 automatic transition A
- Page 360 and 361: Glossary 337 decomposition Separati
- Page 362 and 363: Glossary 339 link A relationship b
- Page 364 and 365: Glossary 341 overloading Used to de
- Page 366 and 367: Glossary 343 specialization The ide
- Page 368 and 369: Index Symbols and Numerics * (aster
- Page 370 and 371: Index 347 code diagrams, updating,
- Page 372 and 373: Index 349 encapsulation association
- Page 374 and 375: Index 351 languages, programming d
- Page 378 and 379: Index 355 source code notation, 256
- Page 380 and 381: Index 357 resources, 50, 51-52 Use
- Page 382 and 383: Wiley Publishing, Inc. End-User Lic