UML Weekend Crash Course⢠- To Parent Directory
UML Weekend Crash Course⢠- To Parent Directory UML Weekend Crash Course⢠- To Parent Directory
SESSION 30 UML Modeling Tools Session Checklist ✔ Explaining the purpose and function of modeling tools ✔ Explaining evaluation criteria for modeling tools ✔ Evaluating UML modeling tools You have undoubtedly found that working with the UML diagrams by hand can be timeconsuming and difficult. The problem increases in complexity when you attempt to maintain the integration between the models. You are not alone. Many people in the industry have come to appreciate the value of the modeling tools but have been hindered by the sheer magnitude of the task. Explaining the Purpose and Function of Modeling Tools This is where modeling tools come in. The idea behind these modeling tools is simply that you should be able to use the power of the computer to draw the diagrams, store the information about the diagrams, and use the computer to run the cross checks, maintain the integrity, keep track of versions, and ultimately generate the code. Unfortunately, the early attempts at these tools did not go well. The developers tried to anticipate how you should write your code. In trying to account for every possibility, they delivered tools that generated bloated, unreadable code. The result was that no one trusted the code or the tools. The good news for modeling tools came in the form of object-oriented programming. The elements of the OO diagrams now map so well to elements of OO code that there is little if any difference between the diagrams and the code. So what is a modeling tool Figure 30-1 shows you a screenshot of a typical modeling tool interface. This particular tool is System Architect by Popkin Software, the tool used to generate most of the diagrams in this book.
308 Sunday Afternoon Take a look at the central elements of the tool: Main Menu: At the top of Figure 30-1, you see the typical menu. In a modeling tool, you will also find a menu, often called Tools or something similar, that gives you access to the code generation features, database schema creation, export and import of models, and links to related tools like data modeling tools and Integrated Development Environments (IDEs) or coding environments. Figure 30-1 Modeling tool interface Model Navigation: Each tool typically provides a navigation window. Figure 30-1 shows the navigation window in the left side panel. The upper portion looks a lot like a directory tree. Notice that it uses packages (folder icons) containing diagrams and definition files. The lower half of the left side is a detail window that displays the properties of the currently selected item. Often this is a thumbnail view of a diagram or audit details about a package or other selected item. Canvas: The large white area on the right side of Figure 30-1 is the drawing canvas. This is where you create, view, and maintain all your diagrams. Just above the canvas is a row of buttons, or a toolbar, for each diagram element. This toolbar may also appear to the immediate left of the canvas or float over the canvas depending on the tool. The contents of the toolbar change depending upon which diagram you are drawing. Explaining Evaluation Criteria for Modeling Tools The next big question is, “How do I choose the right tool for my project” As with any decision, you first must decide what your needs are. Modeling tools come in all shapes and
- 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 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 376 and 377: Index 353 namespace, 246 notation,
- Page 378 and 379: Index 355 source code notation, 256
308<br />
Sunday Afternoon<br />
Take a look at the central elements of the tool:<br />
Main Menu: At the top of Figure 30-1, you see the typical menu. In a modeling tool, you<br />
will also find a menu, often called <strong>To</strong>ols or something similar, that gives you access to the<br />
code generation features, database schema creation, export and import of models, and links<br />
to related tools like data modeling tools and Integrated Development Environments (IDEs)<br />
or coding environments.<br />
Figure 30-1 Modeling tool interface<br />
Model Navigation: Each tool typically provides a navigation window. Figure 30-1 shows<br />
the navigation window in the left side panel. The upper portion looks a lot like a directory<br />
tree. Notice that it uses packages (folder icons) containing diagrams and definition files.<br />
The lower half of the left side is a detail window that displays the properties of the<br />
currently selected item. Often this is a thumbnail view of a diagram or audit details about a<br />
package or other selected item.<br />
Canvas: The large white area on the right side of Figure 30-1 is the drawing canvas. This<br />
is where you create, view, and maintain all your diagrams. Just above the canvas is a row of<br />
buttons, or a toolbar, for each diagram element. This toolbar may also appear to the immediate<br />
left of the canvas or float over the canvas depending on the tool. The contents of the<br />
toolbar change depending upon which diagram you are drawing.<br />
Explaining Evaluation Criteria for Modeling <strong>To</strong>ols<br />
The next big question is, “How do I choose the right tool for my project” As with any<br />
decision, you first must decide what your needs are. Modeling tools come in all shapes and