did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780471727835

Verification and Validation for Quality of UML 2.0 Models

by
  • ISBN13:

    9780471727835

  • ISBN10:

    0471727830

  • Edition: 1st
  • Format: Hardcover
  • Copyright: 2005-07-20
  • Publisher: Wiley-Interscience
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $153.54 Save up to $0.77
  • Buy New
    $152.77
    Add to Cart Free Shipping Icon Free Shipping

    PRINT ON DEMAND: 2-4 WEEKS. THIS ITEM CANNOT BE CANCELLED OR RETURNED.

Supplemental Materials

What is included with this book?

Summary

A practical approach to enhancing quality in software models using UML Version 2.0 "Despite its increasing usage, many companies are not taking the best advantage of UML and, occasionally, individuals have experienced frustration in applying its standards. Perhaps this is because they have not yet read this book!" -From the Foreword by Prof. Brian Henderson-Sellers This book presents a practical checklist approach to enhancing the quality of software models created with the Unified Modeling Language (UML) Version 2.0. The foundation for quality is set by the discussion on the nature and creation of UML models. This is followed by a demonstration of how to apply verification and validation checks to these models with three foci: syntactical correctness, semantic meaningfulness, and aesthetic symmetry. The quality work is carried out within three distinct yet related modeling spaces: * Model of problem space (MOPS) * Model of solution space (MOSS) * Model of background space (MOBS) Readers can then choose a specific quality approach according to their roles in their projects. Verification and validation checks are also organized according to these three modeling spaces, making it easier for the reader to focus on the appropriate diagrams and quality checks corresponding to their modeling space. In addition, a major element of this publication is the Strengths, Weaknesses, Objectives, and Traps (SWOT) analysis. This analysis is performed on each UML diagram, enabling readers to fully comprehend these diagrams, their advantages and limitations, and the way in which they can be used in practical projects for modeling. A consistent case study of the Lucky Insurance System is provided throughout the chapters to illustrate the creation of good quality UML diagrams, followed by application of quality checks to them. With its emphasis on quality in UML-based projects, this book is an essential resource for all quality professionals, including quality analysts, process consultants, quality managers, test designers, and testers.

Author Biography

BHUVAN UNHELKAR, PhD, is founding Principal of MethodScience and a highly acclaimed trainer and presenter in the field of software engineering. Author of seven books, Dr. Unhelkar is also a professor at the School of Computing and Information Technology, University of Western Sydney.

Table of Contents

Figures xix
Foreword xxiii
Preface xxv
Acknowledgments xxxi
Glossary of Acronyms and Terms xxxiii
Author Profile xxxv
1 The Quality Strategy for UML 1(26)
Chapter Summary
1(1)
1.1 Modeling and Quality
2(2)
1.1.1 The Modeling Advantage
2(1)
1.1.2 Modeling Caveats
2(1)
1.1.3 Context of Model Quality
3(1)
1.1.4 Model Quality
4(1)
1.2 Positioning UML for Modeling
4(1)
1.3 Quality Aspects of UML
5(2)
1.4 Understanding Modeling Spaces in Software
7(1)
1.5 Modeling Spaces and UML
7(7)
1.5.1 Importance of UML Diagrams to Respective Models
8(1)
1.5.2 List of UML Diagrams
8(1)
1.5.3 UML Diagrams and Modeling Spaces
9(1)
1.5.4 Model of Problem Space (MOPS)
10(1)
1.5.5 Model of Solution Space (MOSS)
11(1)
1.5.6 Model of Background Space (MOBS)
12(2)
1.6 Verification and Validation
14(5)
1.6.1 Quality Models-Syntax
15(2)
1.6.2 Quality Models-Semantics
17(1)
1.6.3 Quality Models-Aesthetics
18(1)
1.6.4 Quality Techniques and V&V Checks
18(1)
1.7 Quality Checks and Skills Levels
19(1)
1.8 Levels of Quality Checks to UML Diagrams
20(3)
1.8.1 Syntax Checks and UML Elements (Focus on Correctness)
21(1)
1.8.2 Semantic Checks and UML Diagrams (Focus on Completeness and Consistency)
22(1)
1.8.3 Aesthetic Checks and UML Models (Focus on Symmetry and Consistency)
22(1)
1.9 Model-Driven Architecture (MDA) and Quality
23(1)
1.10 Prototyping and Modeling Spaces
23(1)
Discussion Topics
24(1)
References
25(2)
2 Nature and Basics of UML Diagrams 27(30)
Chapter Summary
27(1)
2.1 The Nature of UML Diagrams
27(3)
2.1.1 Elasticity of UML
28(1)
2.1.2 Structural versus Behavioral Nature of UML Diagrams
28(1)
2.1.3 Static versus Dynamic Nature of UML Diagrams
29(1)
2.2 Use Case Diagrams
30(3)
2.2.1 Nature of Use Case Diagrams
30(1)
2.2.2 Putting Together a Use Case Diagram
31(2)
2.3 Activity Diagrams
33(2)
2.3.1 Nature of Activity Diagrams
33(1)
2.3.2 Putting Together an Activity Diagram
33(1)
2.3.3 Specifications in an Activity Diagram
34(1)
2.4 Class Diagrams
35(2)
2.4.1 Nature of Class Diagrams
35(1)
2.4.2 Putting Together a Class Diagram
36(1)
2.4.3 Specification of a Class
36(1)
2.5 Sequence Diagrams
37(2)
2.5.1 Nature of Sequence Diagrams
37(1)
2.5.2 Putting Together a Sequence Diagram
38(1)
2.5.3 Specifications of a Sequence Diagram
39(1)
2.6 Communication Diagrams
39(2)
2.6.1 Nature of Communication Diagrams
39(1)
2.6.2 Putting Together a Communication Diagram
40(1)
2.7 Interaction Overview Diagrams
41(1)
2.7.1 Nature of Interaction Overview Diagrams
41(1)
2.7.2 Putting Together an Interaction Overview Diagram
41(1)
2.8 Object Diagrams
41(2)
2.8.1 Nature of Object Diagrams
41(1)
2.8.2 Putting Together an Object Diagram
42(1)
2.9 State Machine Diagrams
43(1)
2.9.1 Nature of State Machine Diagrams
43(1)
2.9.2 Putting Together a State Machine Diagram
44(1)
2.10 Composite Structure Diagrams
44(1)
2.10.1 Nature of Composite Structure Diagrams
44(1)
2.10.2 Putting Together a Composite Structure Diagram
45(1)
2.11 Component Diagrams
45(1)
2.11.1 Nature of Component Diagrams
45(1)
2.11.2 Putting Together a Component Diagram
46(1)
2.11.3 Specifications of a Component Diagram
46(1)
2.12 Deployment Diagrams
46(1)
2.12.1 Nature of Deployment Diagrams
46(1)
2.12.2 Putting Together a Deployment Diagram
47(1)
2.13 Package Diagrams
47(2)
2.13.1 Nature of Package Diagrams
47(1)
2.13.2 Putting Together a Package Diagram
48(1)
2.13.3 Specifications of a Package Diagram
48(1)
2.14 Timing Diagrams
49(1)
2.14.1 Nature of Timing Diagrams
49(1)
2.14.2 Putting Together a Timing Diagram
49(1)
2.15 UML's Extensibility Mechanisms
50(3)
2.15.1 Stereotypes
50(1)
2.15.2 Notes
51(1)
2.15.3 Constraints
52(1)
2.15.4 Tagged Values
53(1)
2.16 UML Meta-Models and Quality
53(2)
Discussion Topics
55(1)
References
56(1)
3 Strengths, Weaknesses, Objectives and Traps (SWOT) of UML Diagrams 57(28)
Chapter Summary
57(1)
3.1 SWOT Analysis of the UML Diagrams
58(1)
3.2 SWOT of Use Case Diagrams
59(6)
3.2.1 Strengths of Use Cases and Use Case Diagrams
59(1)
3.2.2 Weaknesses of Use Cases and Use Case Diagrams
60(1)
3.2.3 Objectives of Use Cases and Use Case Diagrams
61(2)
3.2.4 Traps of Use Cases and Use Case Diagrams
63(2)
3.3 SWOT of Activity Diagrams
65(2)
3.3.1 Strengths of Activity Diagrams
65(1)
3.3.2 Weaknesses of Activity Diagrams
66(1)
3.3.3 Objectives of Activity Diagrams
66(1)
3.3.4 Traps of Activity Diagrams
67(1)
3.4 SWOT of Classes and Class Diagrams
67(3)
3.4.1 Strengths of Classes and Class Diagrams
67(1)
3.4.2 Weaknesses of Classes and Class Diagrams
68(1)
3.4.3 Objectives of Classes and Class Diagrams
69(1)
3.4.4 Traps of Classes and Class Diagrams
69(1)
3.5 SWOT of Sequence Diagrams
70(3)
3.5.1 Strengths of Sequence Diagrams
70(1)
3.5.2 Weaknesses of Sequence Diagrams
71(1)
3.4.3 Objectives of Sequence Diagrams
71(1)
3.5.4 Traps of Sequence Diagrams
72(1)
3.6 SWOT of Communication Diagrams
73(1)
3.6.1 Strengths of Communication Diagrams
73(1)
3.6.2 Weaknesses of Communication Diagrams
73(1)
3.6.3 Objectives of Communication Diagrams
73(1)
3.6.4 Traps of Communication Diagrams
74(1)
3.7 SWOT of Interaction Overview Diagrams
74(1)
3.7.1 Strengths of Interaction Overview Diagrams
74(1)
3.7.2 Weaknesses of Interaction Overview Diagrams
74(1)
3.7.3 Objectives of Interaction Overview Diagrams
74(1)
3.7.4 Traps of Interaction Overview Diagrams
75(1)
3.8 SWOT of Object Diagrams
75(1)
3.8.1 Strengths of Object Diagrams
75(1)
3.8.2 Weaknesses of Object Diagrams
75(1)
3.8.3 Objectives of Object Diagrams
75(1)
3.8.4 Traps of Object Diagrams
76(1)
3.9 SWOT of State Machine Diagrams
76(1)
3.9.1 Strengths of State Machine Diagrams
76(1)
3.9.2 Weaknesses of State Machine Diagrams
76(1)
3.9.3 Objectives of State Machine Diagrams
76(1)
3.9.4 Traps of State Machine Diagrams
77(1)
3.10 SWOT of Composite Structure Diagrams
77(1)
3.10.1 Strengths of Composite Structure Diagrams
77(1)
3.10.2 Weaknesses of Composite Structure Diagrams
77(1)
3.10.3 Objectives of Composite Structure Diagrams
77(1)
3.10.4 Traps of Composite Structure Diagrams
78(1)
3.11 SWOT of Component Diagrams
78(1)
3.11.1 Strengths of Component Diagrams
78(1)
3.11.2 Weaknesses of Component Diagrams
78(1)
3.11.3 Objectives of Component Diagrams
78(1)
3.11.4 Traps of Component Diagrams
79(1)
3.12 SWOT of Deployment Diagrams
79(1)
3.12.1 Strengths of Deployment Diagrams
79(1)
3.12.2 Weaknesses of Deployment Diagrams
79(1)
3.12.3 Objectives of Deployment Diagrams
80(1)
3.12.4 Traps of Deployment Diagrams
80(1)
3.13 SWOT of Package Diagrams
80(2)
3.13.1 Strengths of Package Diagrams
80(1)
3.13.2 Weaknesses of Package Diagrams
81(1)
3.13.3 Objectives of Package Diagrams
81(1)
3.13.4 Traps of Package Diagrams
81(1)
3.14 SWOT of Timing Diagrams
82(1)
3.14.1 Strengths of Timing Diagrams
82(1)
3.14.2 Weaknesses of Timing Diagrams
82(1)
3.14.3 Objectives of Timing Diagrams
82(1)
3.14.4 Traps of Timing Diagrams
82(1)
Discussion Topics
82(1)
Note
83(1)
References
84(1)
4 V&V of the Quality of MOPS 85(76)
Chapter Summary
85(1)
4.1 UML Diagrams in MOPS
86(2)
4.2 V&V of Use Cases and Use Case Diagrams in MOPS
88(34)
4.2.1 Actors and Use Cases-Initial List
88(2)
4.2.2 List of Use Case Diagrams
90(1)
4.2.3 Describing Client Maintenance Use Case Diagrams
91(4)
4.2.4 Actor-Class Confusion
95(1)
4.2.5 Actor Documentation and Quality Checks
96(4)
4.2.6 Describing Policy Creation and Policy Maintenance Use Case Diagrams
100(3)
4.2.7 Use Case Documentation and Quality Checks
103(10)
4.2.8 Describing the Claims Processing Use Case Diagram
113(1)
4.2.9 Describing the Sales Campaigning Use Case Diagram
114(1)
4.2.10 Syntax Checks for Use Case Diagrams
115(3)
4.2.11 Semantic Checks for Use Case Diagrams
118(2)
4.2.12 Aesthetic Checks for Use Case Diagrams
120(1)
4.2.13 Acceptance Testing and Use Case Documentation
121(1)
4.3 Quality of Activity Diagrams in MOPS
122(7)
4.3.1 Describing the AddsClientDetails Activity Diagram
122(2)
4.3.2 Describing the CreatesHomelnsurancePolicy Activity Diagram
124(2)
4.3.3 Syntax Checks for Activity Diagrams
126(1)
4.3.4 Semantic Checks for Activity Diagrams
127(1)
4.3.5 Aesthetic Checks for Activity Diagrams
128(1)
4.4 Quality of Package Diagrams in MOPS
129(3)
4.4.1 Describing the LUCKY Package Diagram
129(1)
4.4.2 Syntax Checks for the LUCKY Package Diagram
130(1)
4.4.3 Semantic Checks for the LUCKY Package Diagram
131(1)
4.4.4 Aesthetic Checks for the LUCKY Package Diagram
132(1)
4.5 Quality of Classes and Class Diagrams in MOPS
132(13)
4.5.1 Documenting a Class
133(4)
4.5.2 Syntax Checks for Classes
137(1)
4.5.3 Semantic Checks for Classes
138(1)
4.5.4 Aesthetic Checks for the Client Class
138(1)
4.5.5 Describing the ClientDetails Class Diagram
139(3)
4.5.6 Describing the PolicyDetails Class Diagram
142(1)
4.5.7 Syntax Checks for Class Diagrams
142(2)
4.5.8 Semantic Checks for Class Diagrams
144(1)
4.5.9 Aesthetic Checks for Class Diagrams
144(1)
4.6 Quality of Sequence Diagrams in MOPS
145(5)
4.6.1 Describing the CreateClient Sequence Diagram
145(1)
4.6.2 Describing the CreateClientOnInternet Sequence Diagram
146(1)
4.6.3 Describing the ApprovePolicy Sequence Diagram
147(1)
4.6.4 Syntax Checks for Sequence Diagrams
148(1)
4.6.5 Semantic Checks for Sequence Diagrams
148(2)
4.6.6 Aesthetic Checks for Sequence Diagrams
150(1)
4.7 Quality of State Machine Diagrams in MOPS
150(4)
4.7.1 Describing the Client State Machine Diagram
150(1)
4.7.2 Describing the Policy State Machine Diagram
151(1)
4.7.3 Syntax Checks for the ClientStates State Machine Diagram
152(1)
4.7.4 Semantic Checks for the ClientStates State Machine Diagram
153(1)
4.7.5 Aesthetic Checks for the ClientStates State Machine Diagram
153(1)
4.8 Quality of Interaction Overview Diagrams in MOPS
154(2)
4.8.1 Describing the CreateClient Interaction Overview Diagram
154(1)
4.8.2 Syntax Checks for Interaction Overview Diagrams
155(1)
4.8.3 Semantic Check for Interaction Overview Diagrams
155(1)
4.8.4 Aesthetic Check for Interaction Overview Diagrams
155(1)
4.9 Validating the Entire MOPS
156(2)
4.9.1 Use Case to Activity Diagram Dependency and Quality
156(1)
4.9.2 Use Case to Class Diagram Dependency and Quality
157(1)
4.9.3 Class to Sequence Diagram Dependency and Quality
157(1)
4.9.4 Interaction Overview Diagram to Sequence Diagram and Use Case Dependencies
157(1)
4.9.5 Quality of Documentation Associated with MOPS
158(1)
4.9.6 Aesthetics of MOPS
158(1)
4.10 Summary of Quality Checks for MOPS
158(1)
Discussion Topics
158(2)
References
160(1)
5 V&V of the Quality of MOSS 161(32)
Chapter Summary
161(1)
5.1 UML Diagrams in the Solution Space (MOSS)
161(2)
5.2 Analyzing MOPS for MOSS for a Solution
163(3)
5.2.1 Analysis of Use Cases in the Solution Space
163(2)
5.2.2 Analysis of Business Class Diagrams in the Solution Space
165(1)
5.2.3 Analyzing Activity Diagrams in the Solution Space
165(1)
5.3 Quality of Classes and Class Diagrams in MOSS
166(12)
5.3.1 Syntax Checks for Classes in the Solution Space
166(4)
5.3.2 Semantic Checks for Classes in the Solution Space
170(3)
5.3.3 Aesthetic Checks for Classes at the Design Level
173(1)
5.3.4 Describing Class Diagrams in MOSS
173(2)
5.3.5 Syntax Checks of Class Diagrams in MOSS
175(1)
5.3.6 Semantic Checks of Class Diagrams in MOSS
176(1)
5.3.7 Aesthetic Checks of Class Diagrams in MOSS
177(1)
5.4 Quality of Sequence Diagrams in MOSS
178(4)
5.4.1 Describing the Sequence of Submission of a Claim
178(2)
5.4.2 Syntax Checks for Sequence Diagrams
180(1)
5.4.3 Semantic Checks for Sequence Diagrams
181(1)
5.4.4 Aesthetic Checks for Sequence Diagrams
182(1)
5.5 Quality of Communication Diagrams in MOSS
182(2)
5.5.1 Describing the SubmitsClaim Communication Diagram
182(1)
5.5.2 Syntax Checks for Communication Diagrams
183(1)
5.5.3 Semantic Checks for Communication Diagrams
183(1)
5.5.4 Aesthetic Checks for Communication Diagrams
184(1)
5.6 Quality of Object Diagrams in MOSS
184(2)
5.6.1 Describing the Object Diagram for Policy and Claim
184(1)
5.6.2 Syntax Checks for Object Diagrams
185(1)
5.6.3 Semantic Checks for Object Diagrams
185(1)
5.6.4 Aesthetic Checks for Object Diagrams
186(1)
5.7 Quality of State Machine Diagrams in MOSS
186(2)
5.7.1 Describing an Advanced State Machine Diagram for Claim
186(1)
5.7.2 Syntax Checks for State Machine Diagrams in MOSS
186(1)
5.7.3 Semantic Checks for State Machine Diagrams in MOSS
187(1)
5.7.4 Aesthetic Checks for State Machine Diagrams in MOSS
188(1)
5.8 Quality of Timing Diagrams in MOSS
188(1)
5.8.1 Describing the Timing Diagram for Policy and Claim in MOSS
188(1)
5.8.2 Syntax Checks for Timing Diagrams in MOSS
188(1)
5.8.3 Semantic Checks for Timing Diagrams in MOSS
188(1)
5.8.4 Aesthetic Checks for Timing Diagrams in MOSS
189(1)
5.9 Converting Models into Systems
189(1)
5.10 Cross-Diagram Dependencies
189(1)
Discussion Topics
190(2)
References
192(1)
6 V&V of the Quality of MOBS 193(32)
Chapter Summary
193(1)
6.1 Working in the Background Space
194(1)
6.2 UML Diagrams in the Background Space (MOBS)
194(5)
6.2.1 Layers in Software Architecture (Functional vs. Infrastructure)
196(2)
6.2.2 Relating the Functional Slices to the Infrastructure
198(1)
6.3 V&V of Package Diagrams in MOBS
199(5)
6.3.1 Syntax Checks for Package Diagrams in MOBS
202(1)
6.3.2 Semantic Checks for Package Diagrams in MOBS
202(1)
6.3.3 Aesthetic Checks for Package Diagrams in MOSS
203(1)
6.4 Classes and Class Diagrams in the Background Space
204(4)
6.4.1 Relational Table Representation by Classes
204(1)
6.4.2 Mapping ClientDetails to Relational Tables
205(1)
6.4.3 Describing Active Classes in MOBS
205(2)
6.4.4 Class and Granularity of Design in the Background Space
207(1)
6.4.5 Assigning Classes to Components
208(1)
6.5 V&V of Class Diagrams in the Background Space
208(2)
6.5.1 Syntax Checks for Class Diagrams in MOBS
209(1)
6.5.2 Semantic Checks for Class Diagrams in MOBS
209(1)
6.5.3 Aesthetic Checks for Class Diagrams in MOBS
210(1)
6.6 V&V of Robustness through Class Diagrams in MOBS
210(3)
6.6.1 Extending Class Diagrams to Robustness Diagrams
210(1)
6.6.2 Robustness through Alternative Sequence Diagrams
211(1)
6.6.3 Syntax Checks for Robustness Diagrams in MOBS
211(1)
6.6.4 Semantic Checks for Robustness Diagrams in MOBS
212(1)
6.6.5 Aesthetic Checks for Robustness Diagrams in MOBS
213(1)
6.7 V&V of Component Diagrams in MOBS
213(5)
6.7.1 Syntax Checks for Component Diagrams in MOBS
213(2)
6.7.2 Semantic Checks for Component Diagrams in MOBS
215(2)
6.7.3 Aesthetic Checks for Component Diagrams in MOBS
217(1)
6.8 V&V of Composite Structure Diagrams in MOBS
218(1)
6.8.1 Syntax Checks for Composite Structure Diagrams
218(1)
6.8.2 Semantic Checks for Composite Structure Diagrams
219(1)
6.8.3 Aesthetic Checks for Composite Structure Diagrams
219(1)
6.9 V&V of Deployment Diagrams in MOBS
219(3)
6.9.1 Factors Influencing Deployment of Systems
219(2)
6.9.2 Syntax Checks for Deployment Diagrams in MOBS
221(1)
6.9.3 Semantic Checks for Deployment Diagrams in MOBS
221(1)
6.9.4 Aesthetic Checks for Deployment Diagrams in MOBS
221(1)
6.10 Cross-diagram dependencies in MOBS
222(1)
Discussion Topics
223(1)
References
224(1)
7 Managing the V&V Process 225(6)
Chapter Summary
225(1)
7.1 Processes and UML
225(1)
7.2 Understanding the Process and Process Components
226(2)
7.2.1 A Simple Process Architecture
226(1)
7.2.2 A Process Component for V&V of Class Diagrams
227(1)
7.3 Iterations and Increments in a Process
228(2)
7.3.1 Iterations and Increments
228(1)
7.3.2 Project-Level Iterations
229(1)
Discussion Topics
230(1)
Note
230(1)
References
230(1)
Appendix A LUCKY Insurance Case Study 231(6)
Appendix B UML CASE Tools 237(4)
Appendix C Summary of Checks for V&V of the Quality of MOPS 241(10)
Appendix D Summary of Checks for V&V of the Quality of MOSS 251(6)
Appendix E Summary of Checks for V&V of the Quality of MOBS 257(6)
Appendix F Templates for Actors, Use Cases and Classes in MOPS 263(4)
Index 267

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program