Mastering UML with Rational Rose 2002 : [build well-designed, maintainable object-oriented applications ; fully updated to cover Rose 2002, as well as 2001 and 2001A
معرفی کتاب «Mastering UML with Rational Rose 2002 : [build well-designed, maintainable object-oriented applications ; fully updated to cover Rose 2002, as well as 2001 and 2001A» نوشتهٔ Wendy Boggs, Michael Boggs، منتشرشده توسط نشر Sybex در سال 2002. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.
Mastering UML with Rational Rose 2002 offers expert instruction in both areas you need to master if you want to develop flexible object-oriented applications: the Unified Modeling Language and the latest version of Rational Rose, the world's leading visual modeling tool. But this book goes far beyond modeling. It teaches you to use Rose to turn your UML diagrams into code - automatically - in the language of your choice. And it's newly expanded to provide valuable information on business modeling, web modeling, new Java functionality, and XML DTDs. Coverage includes:\* Understanding UML, with a bonus "Getting Started with UML" appendix\* Finding your way around Rational Rose\* Creating UML diagrams of all kinds\* Creating a detailed object model\* Creating a detailed data model\* Modeling your XML DTDs\* Generating code automatically\* Handling language-specific code-generation issues\* Reverse-engineering an existing application\* Using round-trip engineering techniques" Table of Contents 2 Mastering UML with Rational Rose 2002 13 Chapter 1: Introduction to UML 16 Introduction to the Object-Oriented Paradigm 16 Encapsulation 17 Inheritance 18 Polymorphism 20 What Is Visual Modeling? 20 Systems of Graphical Notation 21 Booch Notation 22 Object Management Technology (OMT) 22 Unified Modeling Language (UML) 23 Understanding UML Diagrams 24 Business Use Case Diagrams 25 Use Case Diagrams 26 Activity Diagrams 26 Sequence Diagrams 28 Collaboration Diagrams 29 Class Diagrams 29 Statechart Diagrams 30 Component Diagrams 31 Deployment Diagrams 33 Visual Modeling and the Software Development Process 34 Inception 36 Elaboration 36 Construction 37 Transition 38 Summary 38 Chapter 2: A Tour of Rose 39 What Is Rose? 39 Getting Around in Rose 42 Parts of the Screen 43 Exploring Four Views in a Rose Model 50 Use Case View 50 Logical View 52 Component View 54 Deployment View 55 Working with Rose 57 Creating Models 57 Saving Models 58 Exporting and Importing Models 59 Publishing Models to the Web 60 Working with Controlled Units 62 Using the Model Integrator 64 Working with Notes 65 Working with Packages 66 Adding Files and URLs to Rose Model Elements 68 Adding and Deleting Diagrams 68 Setting Global Options 69 Working with Fonts 70 Working with Colors 70 Summary 71 Chapter 3: Business Modeling 73 Introduction to Business Modeling 73 Why Model the Business? 73 Do I Need to Do Business Modeling? 74 Business Modeling in an Iterative Process 75 Business-Modeling Concepts 78 Business Actors 78 Business Workers 79 Business Use Cases 80 Business Use Case Diagrams 81 Activity Diagrams 82 Business Entities 84 Organization Unit 85 Where Do I Start? 86 Identifying the Business Actors 86 Identifying the Business Workers 87 Identifying the Business Use Cases 88 Showing the Interactions 88 Documenting the Details 89 Creating Business Use Case Diagrams 90 Deleting Business Use Case Diagrams 91 The Use Case Diagram Toolbar 92 Adding Business Use Cases 92 Business Use Case Specifications 93 Assigning a Priority to a Business Use Case 95 Viewing Diagrams for a Business Use Case 95 Viewing Relationships for a Business Use Case 98 Working with Business Actors 99 Adding Business Actors 99 Adding Actor Specifications 100 Assigning an Actor Stereotype 101 Setting Business Actor Multiplicity 101 Viewing Relationships for a Business Actor 102 Working with Relationships 103 Association Relationship 103 Generalization Relationship 104 Working with Organization Units 106 Adding Organization Units 106 Deleting Organization Units 107 Activity Diagrams 107 Adding an Activity Diagram 108 Adding Details to an Activity Diagram 109 Summary 114 Chapter 4: Use Cases and Actors 116 Use Case Modeling Concepts 116 Actors 116 Use Cases 117 Traceability 119 Flow of Events 120 Relationships 126 Use Case Diagrams 130 Activity Diagrams 131 Activity 132 Start and End States 133 Objects and Object Flows 133 Transitions 134 Synchronization 134 Working with Use Cases in Rational Rose 135 The Use Case Diagram Toolbar 135 Creating Use Case Diagrams 136 Deleting Use Case Diagrams 138 Adding Use Cases 139 Deleting Use Cases 141 Use Case Specifications 142 Naming a Use Case 143 Viewing Participants of a Use Case 144 Assigning a Use Case Stereotype 144 Assigning a Priority to a Use Case 145 Creating an Abstract Use Case 145 Viewing Diagrams for a Use Case 146 Viewing Relationships for a Use Case 148 Working with Actors 149 Adding Actors 149 Deleting Actors 151 Actor Specifications 151 Naming Actors 153 Assigning an Actor Stereotype 154 Setting Actor Multiplicity 154 Creating an Abstract Actor 155 Viewing Relationships for an Actor 156 Viewing an Actor's Instances 157 Working with Relationships 157 Association Relationship 157 Includes Relationship 158 Extends Relationship 160 Generalization Relationship 160 Working with Activity Diagrams 161 The Activity Diagram Toolbar 161 Creating Activity Diagrams 162 Deleting Activity Diagrams 166 Exercise 166 Problem Statement 166 Create a Use Case Diagram 166 Summary 169 Chapter 5: Object Interaction 171 Interaction Diagrams 171 What Is an Object? 173 What Is a Class? 173 Where Do I Start? 174 Finding Objects 174 Finding the Actor 175 Using Interaction Diagrams 176 Sequence Diagrams 176 The Sequence Diagram Toolbar 177 Collaboration Diagrams 178 The Collaboration Diagram Toolbar 179 Working with Actors on an Interaction Diagram 179 Working with Objects 180 Adding Objects to an Interaction Diagram 180 Deleting Objects from an Interaction Diagram 181 Setting Object Specifications 181 Naming an Object 182 Mapping an Object to a Class 183 Setting Object Persistence 185 Using Multiple Instances of an Object 186 Working with Messages 187 Adding Messages to an Interaction Diagram 187 Adding Messages to a Sequence Diagram 187 Deleting Messages from a Sequence Diagram 188 Reordering Messages in a Sequence Diagram 188 Message Numbering in a Sequence Diagram 189 Viewing the Focus of Control in a Sequence Diagram 190 Adding Messages to a Collaboration Diagram 191 Deleting Messages from a Collaboration Diagram 192 Message Numbering in a Collaboration Diagram 193 Adding Data Flows to a Collaboration Diagram 193 Setting Message Specifications 194 Naming a Message 194 Mapping a Message to an Operation 195 Setting Message Synchronization Options 197 Setting Message Frequency 200 End of a Lifeline 201 Working with Scripts 201 Switching Between Sequence and Collaboration Diagrams 203 Two-Pass Approach to Interaction Diagrams 204 Exercise 207 Problem Statement 207 Create Interaction Diagrams 207 Summary 212 Chapter 6: Classes and Packages 213 Logical View of a Rose Model 213 Class Diagrams 213 What Is a Class? 214 Finding Classes 215 Creating Class Diagrams 217 Deleting Class Diagrams 219 Organizing Items on a Class Diagram 219 Using the Class Diagram Toolbar 220 Working with Classes 221 Adding Classes 221 Class Stereotypes 224 Analysis Stereotypes 224 Class Types 229 Interfaces 236 Web Modeling Stereotypes 237 Other Language Stereotypes 240 Class Specifications 242 Naming a Class 243 Setting Class Visibility 244 Setting Class Multiplicity 245 Setting Storage Requirements for a Class 246 Setting Class Persistence 246 Setting Class Concurrency 247 Creating an Abstract Class 247 Viewing Class Attributes 248 Viewing Class Operations 248 Viewing Class Relationships 249 Using Nested Classes 249 Viewing the Interaction Diagrams That Contain a Class 250 Setting Java Class Specifications 251 Setting CORBA Class Specifications 253 Working with Packages 254 Adding Packages 254 Deleting Packages 255 Exercise 256 Problem Statement 256 Creating a Class Diagram 256 Summary 262 Chapter 7: Attributes and Operations 263 Working with Attributes 263 Finding Attributes 263 Adding Attributes 264 Deleting Attributes 267 Setting Attribute Specifications 268 Setting the Attribute Containment 276 Making an Attribute Static 277 Specifying a Derived Attribute 277 Working with Operations 278 Finding Operations 279 Adding Operations 280 Deleting Operations 283 Setting Operation Specifications 284 Adding Arguments to an Operation 290 Specifying the Operation Protocol 291 Specifying the Operation Qualifications 292 Specifying the Operation Exceptions 293 Specifying the Operation Size 293 Specifying the Operation Time 293 Specifying the Operation Concurrency 294 Specifying the Operation Preconditions 294 Specifying the Operation Postconditions 295 Specifying the Operation Semantics 296 Displaying Attributes and Operations on Class Diagrams 297 Showing Attributes 298 Showing Operations 300 Showing Visibility 302 Showing Stereotypes 303 Mapping Operations to Messages 304 Mapping an Operation to a Message on an Interaction Diagram 306 Exercise 307 Problem Statement 307 Add Attributes and Operations 308 Summary 312 Chapter 8: Relationships 313 Relationships 313 Types of Relationships 313 Finding Relationships 315 Associations 316 Using Web Association Stereotypes 318 Creating Associations 319 Deleting Associations 322 Dependencies 323 Creating Dependencies 325 Deleting Dependencies 326 Package Dependencies 327 Creating Package Dependencies 328 Deleting Package Dependencies 329 Aggregations 329 Creating Aggregations 330 Deleting Aggregations 332 Generalizations 333 Creating Generalizations 334 Deleting Generalizations 335 Working with Relationships 336 Setting Multiplicity 336 Using Relationship Names 338 Using Stereotypes 339 Using Roles 340 Setting Export Control 342 Using Static Relationships 343 Using Friend Relationships 344 Setting Containment 345 Using Qualifiers 346 Using Link Elements 347 Using Constraints 348 Exercise 350 Problem Statement 350 Adding Relationships 350 Summary 352 Chapter 9: Object Behavior 353 Statechart Diagrams 353 Creating a Statechart Diagram 354 Adding States 355 Adding State Details 356 Adding Transitions 361 Adding Transition Details 362 Adding Special States 364 Using Nested States and State History 365 Exercise 367 Problem Statement 367 Create a Statechart Diagram 368 Summary 371 Chapter 10: Component View 372 What Is a Component? 372 Types of Components 372 Component Diagrams 374 Creating Component Diagrams 375 Adding Components 376 Adding Component Details 379 Adding Component Dependencies 384 Exercise 385 Problem Statement 385 Summary 392 Chapter 11: Deployment View 393 Deployment Diagrams 393 Opening the Deployment Diagram 393 Adding Processors 394 Adding Processor Details 396 Adding Devices 399 Adding Device Details 401 Adding Connections 403 Adding Connection Details 404 Adding Processes 406 Exercise 409 Problem Statement 409 Create Deployment Diagram 409 Summary 412 Chapter 12: Introduction to Code Generation and Reverse Engineering Using Rational Rose 413 Preparing for Code Generation 413 Step One: Check the Model 414 Step Two: Create Components 416 Step Three: Map Classes to Components 417 Step Four: Set the Code-Generation Properties 418 Step Five: Select a Class, Component, or Package 421 Step Six: Generate Code 421 What Gets Generated? 422 Introduction to Reverse Engineering Using Rational Rose 423 Model Elements Created During Reverse Engineering 424 Round-Trip Engineering 427 Summary 427 Chapter 13: ANSI C++ and Visual C++ Code Generation and Reverse Engineering 429 Generating Code in ANSI C++ and Visual C++ 429 Converting a C++ Model to an ANSI C++ Model 430 ANSI C++ Code-Generation Properties 431 Class Properties 432 Attribute Properties 433 Operation Properties 434 Package (Class Category) Properties 436 Component (Module Specification) Properties 436 Role Properties 439 Generalization Properties 440 Visual C++ Code-Generation Properties 440 Class Model Assistant 440 Component Properties 443 Project Properties 445 Visual C++ and ATL Objects 446 Generated Code 447 Code Generated for Classes 447 Code Generated for Attributes 451 Code Generated for Operations 453 Visual C++ Code Generation 455 Reverse Engineering ANSI C++ 455 Reverse Engineering Visual C++ 457 Summary 457 Chapter 14: Java Code Generation and Reverse Engineering 459 Overview 459 Introduction to Rose J 460 Beginning a Java Project 461 Selecting a Java Framework 461 Linking to IBM VisualAge for Java 462 Linking to Microsoft Visual J++ 463 Java Code-Generation Properties 463 Project Properties 464 Class Properties 468 Attribute Properties 470 Operation Properties 471 Module Properties 472 Role Properties 473 Generating Code 474 Generated Code 474 Classes 475 Attributes 477 Operations 478 Bidirectional Associations 480 Unidirectional Associations 483 Associations with a Multiplicity of One to Many 484 Associations with a Multiplicity of Many to Many 486 Reflexive Associations 488 Aggregations 488 Dependency Relationships 490 Generalization Relationships 491 Interfaces 492 Java Beans 493 Support for J2EE 496 EJBs 496 Servlets 499 JAR and WAR Files 500 Automated J2EE Deployment 501 Reverse Engineering 502 Summary 503 Chapter 15: Visual Basic Code Generation and Reverse Engineering 505 Starting a Visual Basic Project 506 Visual Basic Code-Generation Properties 506 Class Properties 507 Attribute Properties 510 Operation Properties 511 Module Specification Properties 514 Role Properties 515 Generalization Properties 516 Using the Code-Generation Wizard 517 Generated Code 521 Classes 521 Attributes 542 Operations 543 Bidirectional Associations 543 Unidirectional Associations 545 Associations with a Multiplicity of One to Many 546 Associations with a Multiplicity of Many to Many 546 Reflexive Associations 547 Aggregations 547 Dependency Relationships 548 Generalization Relationships 548 Reverse Engineering 549 Summary 551 Chapter 16: XML DTD Code Generation and Reverse Engineering 553 Overview 553 Introduction to XML DTD 554 Elements 554 Attributes 555 Entities and Notations 555 DTD-to-UML Mapping 557 DTD Code-Generation Properties 558 Project Properties 558 Class Properties 559 Attribute Properties 563 Role Properties 564 Component Properties 565 Generating Code 566 Generated Code 566 Classes 567 Attributes 574 Reverse Engineering DTD 576 Summary 577 Chapter 17: CORBA/IDL Code Generation and Reverse Engineering 579 CORBA/IDL Code-Generation Properties 579 Project Properties 580 Class Properties 582 Attribute Properties 587 Operation Properties 588 Module Properties 590 Association (Role) Properties 591 Dependency Properties 592 Generated Code 593 Classes 593 Attributes 600 Operations 603 Bidirectional Associations 603 Unidirectional Associations 607 Associations with a Multiplicity of One to Many 607 Associations with a Multiplicity of Many to Many 611 Associations with Bounded Multiplicity 612 Reflexive Associations 614 Aggregations 616 Dependency Relationships 616 Generalization Relationships 617 Reverse Engineering CORBA Source Code 620 Summary 621 Chapter 18: Rose Data Modeler 622 Object Models and Data Models 622 Creating a Data Model 624 Logic in a Data Model 625 Adding a Database 626 Adding Tablespaces 627 Adding a Schema 633 Creating a Data Model Diagram 634 Creating Domain Packages and Domains 635 Adding Tables 638 Adding Columns 640 Setting a Primary Key 643 Adding Constraints 643 Adding Triggers 645 Adding Indexes 647 Adding Stored Procedures 648 Adding Relationships 651 Adding Referential Integrity Rules 654 Working with Views 656 Generating an Object Model from a Data Model 660 Generating a Data Model from an Object Model 661 Generating a Database from a Data Model 663 Updating an Existing Database 665 Reverse Engineering a Database 667 Summary 668 Chapter 19: Web Modeling 669 Modeling a Web Application 669 Web Class Stereotypes 671 Relationships 678 Reverse Engineering a Web Application 680 Generating Code for a Web Application 682 Summary 683 Appendix: Getting Started with UML 684 Building a Business Use Case Diagram 684 Building a Workflow (Activity) Diagram 687 Building a Use Case Diagram 691 Building an Interaction Diagram 696 Building a Class Diagram 700 Web Modeling 703 Adding Class Relationships 706 Building a Statechart Diagram 708 Building a Component Diagram 711 Building a Deployment Diagram 713 Design More Efficient Applications with the Leading Visual Modeler Mastering UML with Rational Rose 2002 offers expert instruction in both areas you need to master if you want to develop flexible object-oriented applications: the Unified Modeling Language and the latest version of Rational Rose, the world's leading visual modeling tool. But this book goes far beyond modeling. It teaches you to use Rose to turn your UML diagrams into code--automatically--in the language of your choice. And it's newly expanded to provide valuable information on business modeling, web modeling, new Java functionality, and XML DTDs. Coverage includes: • Understanding UML, with a bonus'Getting Started with UML'appendix • Finding your way around Rational Rose • Creating UML diagrams of all kinds • Creating a detailed object model • Creating a detailed data model • Modeling your XML DTDs • Generating code automatically • Handling language-specific code-generation issues • Reverse-engineering an existing application • Using round-trip engineering techniques Annotation Design More Efficient Applications with the Leading Visual ModelerMastering UML with Rational Rose 2002 offers expert instruction in both areas you need to master if you want to develop flexible objectoriented applications: the Unified Modeling Language and the latest version of Rational Rose, the worlds leading visual modeling tool. But this book goes far beyond modeling. It teaches you to use Rose to turn your UML diagrams into codeautomaticallyin the language of your choice. And its newly expanded to provide valuable information on business modeling, web modeling, new Java functionality, and XML DTDs. Coverage includes: Understanding UML, with a bonus "Getting Started with UML" appendix Finding your way around Rational Rose Creating UML diagrams of all kinds Creating a detailed object model Creating a detailed data model Modeling your XML DTDs Generating code automatically Handling languagespecific codegeneration issues Reverseengineering an existing application Using roundtrip engineering techniques Design More Efficient Applications with the Leading Visual Modeler Mastering UML with Rational Rose 2002 offers expert instruction in both areas you need to master if you want to develop flexible object-oriented the Unified Modeling Language and the latest version of Rational Rose, the world's leading visual modeling tool. But this book goes far beyond modeling. It teaches you to use Rose to turn your UML diagrams into code--automatically--in the language of your choice. And it's newly expanded to provide valuable information on business modeling, web modeling, new Java functionality, and XML DTDs. Coverage * Understanding UML, with a bonus "Getting Started with UML" appendix * Finding your way around Rational Rose * Creating UML diagrams of all kinds * Creating a detailed object model * Creating a detailed data model * Modeling your XML DTDs * Generating code automatically * Handling language-specific code-generation issues * Reverse-engineering an existing application * Using round-trip engineering techniques
دانلود کتاب Mastering UML with Rational Rose 2002 : [build well-designed, maintainable object-oriented applications ; fully updated to cover Rose 2002, as well as 2001 and 2001A