Skip to main content

Verification and Validation for Quality of UML 2.0 Models



Verification and Validation for Quality of UML 2.0 Models

Bhuvan Unhelkar

ISBN: 978-0-471-72783-5 July 2005 312 Pages


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.

Figures xix

Foreword xxiii

Preface xxv

Acknowledgments xxxi

Glossary of Acronyms and Terms xxxiii

Author Profile xxxv

1 The Quality Strategy for UML 1

Chapter Summary 1

1.1 Modeling and Quality 2

1.2 Positioning UML for Modeling 4

1.3 Quality Aspects of UML 5

1.4 Understanding Modeling Spaces in Software 7

1.5 Modeling Spaces and UML 7

1.6 Verification and Validation 14

1.7 Quality Checks and Skills Levels 19

1.8 Levels of Quality Checks to UML Diagrams 20

1.9 Model-Driven Architecture (MDA) and Quality 23

1.10 Prototyping and Modeling Spaces 23

Discussion Topics 24

References 25

2 Nature and Basics of UML Diagrams 27

Chapter Summary 27

2.1 The Nature of UML Diagrams 27

2.2 Use Case Diagrams 30

2.3 Activity Diagrams 33

2.4 Class Diagrams 35

2.5 Sequence Diagrams 37

2.6 Communication Diagrams 39

2.7 Interaction Overview Diagrams 41

2.8 Object Diagrams 41

2.9 State Machine Diagrams 43

2.10 Composite Structure Diagrams 44

2.11 Component Diagrams 45

2.12 Deployment Diagrams 46

2.13 Package Diagrams 47

2.14 Timing Diagrams 49

2.15 UML’s Extensibility Mechanisms 50

2.16 UML Meta-Models and Quality 53

Discussion Topics 55

References 56

3 Strengths, Weaknesses, Objectives and Traps (SWOT) of UML Diagrams 57

Chapter Summary 57

3.1 SWOT Analysis of the UML Diagrams 58

3.2 SWOT of Use Case Diagrams 59

3.3 SWOT of Activity Diagrams 65

3.4 SWOT of Classes and Class Diagrams 67

3.5 SWOT of Sequence Diagrams 70

3.6 SWOT of Communication Diagrams 73

3.7 SWOT of Interaction Overview Diagrams 74

3.8 SWOT of Object Diagrams 75

3.9 SWOT of State Machine Diagrams 76

3.10 SWOT of Composite Structure Diagrams 77

3.11 SWOT of Component Diagrams 78

3.12 SWOT of Deployment Diagrams 79

3.13 SWOT of Package Diagrams 80

3.14 SWOT of Timing Diagrams 82

Discussion Topics 82

Note 83

References 84

4 V&V of the Quality of MOPS 85

Chapter Summary 85

4.1 UML Diagrams in MOPS 86

4.2 V&V of Use Cases and Use Case Diagrams in MOPS 88

4.3 Quality of Activity Diagrams in MOPS 122

4.4 Quality of Package Diagrams in MOPS 129

4.5 Quality of Classes and Class Diagrams in MOPS 132

4.6 Quality of Sequence Diagrams in MOPS 145

4.7 Quality of State Machine Diagrams in MOPS 150

4.8 Quality of Interaction Overview Diagrams in MOPS 154

4.9 Validating the Entire MOPS 156

4.10 Summary of Quality Checks for MOPS 158

Discussion Topics 158

References 160

5 V&V of the Quality of MOSS 161

Chapter Summary 161

5.1 UML Diagrams in the Solution Space (MOSS) 161

5.2 Analyzing MOPS for MOSS for a Solution 163

5.3 Quality of Classes and Class Diagrams in MOSS 166

5.4 Quality of Sequence Diagrams in MOSS 178

5.5 Quality of Communication Diagrams in MOSS 182

5.6 Quality of Object Diagrams in MOSS 184

5.7 Quality of State Machine Diagrams in MOSS 186

5.8 Quality of Timing Diagrams in MOSS 188

5.9 Converting Models into Systems 189

5.10 Cross-Diagram Dependencies 189

Discussion Topics 190

References 192

6 V&V of the Quality of MOBS 193

Chapter Summary 193

6.1 Working in the Background Space 194

6.2 UML Diagrams in the Background Space (MOBS) 194

6.3 V&V of Package Diagrams in MOBS 199

6.4 Classes and Class Diagrams in the Background Space 204

6.5 V&V of Class Diagrams in the Background Space 208

6.6 V&V of Robustness through Class Diagrams in MOBS 210

6.7 V&V of Component Diagrams in MOBS 213

6.8 V&V of Composite Structure Diagrams in MOBS 218

6.9 V&V of Deployment Diagrams in MOBS 219

6.10 Cross-diagram dependencies in MOBS 222

Discussion Topics 223

References 224

7 Managing the V&V Process 225

Chapter Summary 225

7.1 Processes and UML 225

7.2 Understanding the Process and Process Components 226

7.3 Iterations and Increments in a Process 228

Discussion Topics 230

Note 230

References 230

Appendix A LUCKY Insurance Case Study 231

Appendix B UML CASE Tools 237

Appendix C Summary of Checks for V&V of the Quality of MOPS 241

Appendix D Summary of Checks for V&V of the Quality of MOSS 251

Appendix E Summary of Checks for V&V of the Quality of MOBS 257

Appendix F Templates for Actors, Use Cases and Classes in MOPS 263

Index 267

" just the book to help one use the UML effectively...I highly recommend this book." (Software Quality Professional, December 2006)

"I recommend this book to all those…using UML in small or medium-sized projects…it will serve as a useful guide for their next UML modeling task." (Computing, November 3, 2005)