List of Figures


Chapter 1 Introduction

1.1 Concepts in an Executable UML Model

Chapter 2 Using Executable UML

2.1 Domain Chart

2.2 Class Diagram

2.3 One State Machine for Each Class

2.4 Statechart Diagram for Shipment Class Showing Executable Actions

2.5 Collaboration Diagram

2.6 Procedure for State Creating Shipment Consisting of a Series of Actions

Chapter 3 Domains and Bridges

3.1 Sample Mission Statements

3.2 Domain Chart

3.3 Domain Mission Statement, Including Bridge Descriptions

Chapter 4 Use Cases

4.1 Use Case Diagram for the Online Bookstore

4.2 Different Use Cases for Different Actors

4.3 Use Cases Listed as a Table

4.4 External Signals with Their Parameters

4.5 Typical Flow Description for an Order Books Use Case

4.6 Revised Flow Description for an Order Books Use Case

4.7 Order Books Identified as Single-Interaction Use Cases

4.8 Activity Diagram for the Use Case Order Books

4.9 Preconditions and Postconditions for Add Item to Order

4.10 Connecting Preconditions and Postconditions

Chapter 5 Classes and Attributes

5.1 Instances and Classes

5.2 Specification Classes and Actual Classes

5.3 Core Data Types

5.4 Class Box with All Components

5.5 Class Box with Types and Tags Suppressed

5.6 Accumulating Attributes

5.7 Never-Meaningful Attributes

Chapter 6 Relationships and Associations

6.1 Class Diagram with Association Names and Roles

6.2 Associations Using Verb Phrases

6.3 Associations with Multiplicities

6.4 Separate Classes for Book Product and Order

6.5 Conditional Associations between Customer and Book Purchase

6.6 Multiple Associations between Classes

6.7 History Pattern

6.8 The Association Class ProductSelection

6.9 Association Class Attributes

6.10 Associations to an Association Class

6.11 Separate Product Classes

6.12 Partitioning of Products into Subsets

6.13 Product Generalization and Specialization

6.14 Repeated Specialization

6.15 Multiple Generalization

6.16 Illustration of Multiple Generalization

6.17 Improper Multiple Generalization

6.18 Compound Generalization

6.19 Reflexive Association Modeling Sequence

6.20 Closed Loop Reflexive Association

6.21 A Category Hierarchy

6.22 Reflexive Association Modeling the Category Hierarchy

6.23 Subtyping ProductCategory

Chapter 7 Class Actions

7.1 Syntax for Several Object and Attribute Actions

7.2 Examples of Object and Attribute Actions

7.3 Selection Expressions

7.4 Examples of Selection Expressions and Adjuncts

7.5 Example of Iteration

7.6 Examples of Selection Expressions and Adjuncts

7.7 Syntax for Link Actions

7.8 Link Action Examples

7.9 Link Object Action Syntax

7.10 Examples of Link Object Actions

7.11 Creation, Deletion, and Reclassification in Hierarchies

7.12 Examples of Object Creation in Multiple Hierarchies

7.13 Actions in the Shipment State Machine

7.14 Actions in Small

7.15 Iteration over a Collection in Small

7.16 Actions in the Shipment State Machine

7.17 Iteration over a Collection in Tall

7.18 Actions in Tall

Chapter 8 Constraints

8.1 Unique Instance Constraint in OCL

8.2 Unique Instance Constraint Idiom

8.3 Unique Instance Constraint in Action Language

8.4 Identifiers on the Class Diagram

8.5 Multiple-Attribute Identifier Constraint in OCL

8.6 Multiple-Attribute Identifier Constraint in Action Language

8.7 Multiple-Attribute Identifier on Class Diagram

8.8 Multiple Identifiers on Class Diagram

8.9 Derived Attributes

8.10 Referential Attributes

8.11 Components of an International Standard Book Number (ISBN)

8.12 Derived Identifier

8.13 Action Language Definition of Derived Attribute bookISBN

8.14 Compound Identifier Using Referential Attributes

8.15 Loop of Unconstrained Associations

8.16 Redundant Association in a Loop

8.17 Loop of Constrained Associations

8.18 Description of a Constrained Association

8.19 OCL for the Equal Set Constraint

8.20 Action Language for the Equal Set Constraint

8.21 Graphical Representation of an Equal Set Constraint

8.22 Subset Constrained Associations

8.23 Description of a Subset Constrained Association

8.24 Graphical Representation of a Subset Constraint

Chapter 9 Lifecycles

9.1 Lifecycle of Light Bulb

9.2 Statechart for the One-Minute Microwave Oven

9.3 State Box Containing State Number, Name, and Procedure

9.4 State Transition Table Based on Microwave Oven Statechart Diagram

9.5 Statechart Diagram and STT with Additional Transition

9.6 Wrong Transition Added to Extend the Cooking Period

9.7 Statechart Diagram and STT with New Cooking Extended State

9.8 State Transition Table with "Event Ignored" Entries

9.9 State Transition Table with "Can't Happen" Entries

9.10 Statechart Diagram for the Order

9.11 External View of the Microwave Oven

9.12 Correspondence between Abstraction as a Class and as a State Machine

Chapter 10 Communicating Objects

10.1 Shipment State Procedure Sends orderDelivered signal to Order

10.2 Event Parameters Provided to a Procedure in the Order State Machine

10.3 Signal to self

10.4 Order Creates and Deletes Instances of Selection

10.5 Order State Procedure Signals to Create Shipment

10.6 New Shipment is Created, Enters its Initial State, and Executes its Procedure

10.7 Collaboration Diagram Showing Order, Charge, and Shipment

10.8 Sequenced Collaboration Diagram

10.9 Sequence Diagram for Single-Item Ordering Scenario

10.10 Sequence Diagram Showing Object Creation and Deletion

Chapter 11 Synchronizing Objects

11.1 Concurrent Signals

Chapter 12 Using Lifecycles

12.1 Shipment Lifecycle

12.2 Spider Lifecycle of Shipment

12.3 Accumulating Attributes

12.4 Shipment and Clerk Association

12.5 Establishing the Association between Shipment and Shipping Clerk

12.6 Concurrent Signals

12.7 Resubmitting a Charge Using CheckOut

12.8 Resubmitting a Charge Using a Separate submitCharge signal

12.9 Shopping Cart Class and Related Associations

12.10 Shopping Cart Statechart Diagram

12.11 Simpler Order Statechart Diagram

12.12 Statechart Diagram and State Transition Table for Shipping Clerk

Chapter 13 Relationship Dynamics

13.1 Class Diagram for Publisher and Product

13.2 Class Diagram for Product Selection

13.3 Statechart Diagram for Product Selection

13.4 Collaboration between Product Selection and Order

13.5 Sequence Diagram Illustrating Contention for the Same Order

13.6 Shipping Clerk Assigner

13.7 Sequence Diagram Showing an Assigner Managing Competition

13.8 Class Diagram Including Warehouse Associations

13.9 Statechart Diagram for Warehouse Managing Contention

13.10 Product Superclass Lifecycle

13.11 Warehouse Clerk Subclasses

13.12 Polymorphic Events in a Generalization Hierarchy

13.13 Warehouse Clerk Subclasses, Including OffDutyClerk

13.14 Shipping Clerk (on Duty) Lifecycle

13.15 Warehouse Clerk (Superclass) Statechart Diagram Showing Reclassification

Chapter 14 Domain Dynamics

14.1 Mongo Controller Object (Bad Design No Control Partitioning)

14.2 Messy Shopping Cart

14.3 Cleaned-Up Cart

14.4 Push Control

14.5 Pure Pull Approach

14.6 Two Concurrent Cycles with a Pivot Point

14.7 Class with the Most Instances is a Candidate Pivot Point

14.8 Bookstore Collaboration

14.9 Activities and Signals

14.10 Activity Diagram Showing Input Sequencing

Chapter 15 Domain Verification

15.1 Use Case Add Item to Order

15.2 Order Statechart Diagram

15.3 Product, Order, and Product Selection Classes

15.4 Four Different Test Vectors for a Single Use Case

15.5 Creating Instances of Product

15.6 Establishing the Initial State

15.7 Sequence Diagram for Add Selection Activity (Very Simple!)

15.8 Checking the Results of the Test Case

15.9 Activity Diagram for the Use Case Order Merchandise

15.10 Sequence Diagram for Multiple-Item Ordering Scenario

Chapter 16 Model Management

16.1 Subsystems and Classes

16.2 An Imported Class on a Class Diagram

16.3 A Package Diagram Showing Spanning Relationships Between Subsystems

16.4 Subsystem Prefixes as Naming and Numbering Conventions

16.5 Imported Classes on a Collaboration Diagram

16.6 A Package Diagram Showing Spanning Collaborations Between Subsystems

Chapter 17 Joining Multiple Domains

17.1 Domain Chart for the Online Bookstore

17.2 Example of a Web GUI Domain

17.3 Class Diagram for the Inventory Domain

17.4 Bookstore Collaboration

17.5 Credit Card Charge Showing Explicit Bridges

17.6 Generating a Signal to External Entity CreditCardCompany

17.7 A Bridge Operation Calling an External Package

17.8 Correspondences between Bookstore and Inventory

17.9 Correspondences between Attributes

17.10 Correspondences between Behaviors

17.11 Example UI Screen and Corresponding Bookstore Attributes

Chapter 18 Model Compilers

18.1 Highlights of an Archetype that Creates a Java Class

18.2 Java Class Created by Applying Figure Archetype to the Bookstore Models

Appendix A Glossary

Appendix B Case Study

B.1 ProductSpecification Subsystem Class Diagram

B.2 Ordering Subsystem Class Diagram

B.3 Order Statechart

B.4 ProductSelection Statechart

B.5 ShoppingCart Statechart

B.6 CreditCardCharge Statechart

B.7 Shipping Subsystem Class Diagram

B.8 Shipment Statechart

B.9 Warehouse Statechart (Serving as a Shipping Clerk Assigner)

B.10 ShippingClerk Statechart

B.11 Collaboration Diagram



Executable UML. A Foundation for Model-Driven Architecture
Executable UML: A Foundation for Model-Driven Architecture
ISBN: 0201748045
EAN: 2147483647
Year: 2001
Pages: 161

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net