Skip to main content

UML in Practice: The Art of Modeling Software Systems Demonstrated through Worked Examples and Solutions

UML in Practice: The Art of Modeling Software Systems Demonstrated through Worked Examples and Solutions

Pascal Roques

ISBN: 978-0-470-09279-8

Feb 2006

312 pages

$35.99

Description

  • Offers comprehensive coverage of all major modeling viewpoints
  • Provides details of collaboration and class diagrams for filling in the design-level models

Related Resources

Instructor

Contact your Rep for all inquiries

Foreword ix

Introduction xi

Acknowledgements xv

PART 1 FUNCTIONAL VIEW 1

1 Case study: automatic teller machine 3

1.1 Step 1 – Identifying the actors of the ATM 5

1.2 Step 2 – Identifying use cases 8

1.3 Step 3 – Creating use case diagrams 10

1.4 Step 4 – Textual description of use cases 14

1.5 Step 5 – Graphical description of use cases 20

1.6 Step 6 – Organising the use cases 26

2 Complementary exercises 37

2.1 Step 1 – Business modelling 53

2.2 Step 2 – Defining system requirements 57

Appendix A: Glossary & tips 65

PART 2 STATIC VIEW 71

3 Case study: flight booking system 73

3.1 75

3.2 Step 2 – Modelling sentences 6, 7 and 10 77

3.3 Step 3 – Modelling sentences 8 and 9 82

3.4 Step 4 – Modelling sentences 3, 4 and 5 86

3.5 Step 5 – Adding attributes, constraints and qualifiers 89

3.6 Step 6 – Using analysis patterns 94

3.7 Step 7 – Structuring into packages 98

3.8 Step 8 – Generalisation and re-use 105

4 Complementary exercises 113

Appendix B: Glossary & tips 149

Step 1– Modelling sentences 1 and 2

PART 3 DYNAMIC VIEW 157

5 Case study: coin-operated pay phone 159

5.1 Step 1 – Identifying the actors and use cases 161

5.2 Step 2 – Realising the system sequence diagram 164

5.3 Step 3 – Representing the dynamic context 166

5.4 Step 4 – In-depth description using a state diagram 168

6 Complementary exercises 185

Apendix C: Glossary & tips 207

PART 4 DESIGN 213

7 Case study: training request 215

7.1 Step 1 – Defining iterations 217

7.2 Step 2 – Defining the system architecture 219

7.3 Step 3 – Defining system operations (iteration 1) 224

7.4 Step 4 – Operation contracts (iteration 1) 225

7.5 Step 5 – Interaction diagrams (iteration 1) 228

7.6 Step 6 – Design class diagrams (iteration 1) 237

7.7 Step 7 – Defining the system operations (iteration 2) 245

7.8 Step 8 – Operation contracts (iteration 2) 247

7.9 Step 9 – Interaction diagrams (iteration 2) 250

7.10 Step 10 – Design class diagrams (iteration 2) 252

7.11 Step 11 – Back to architecture 253

7.12 Step 12 – Transition to Java code 254

7.13 Step 13 – Putting the application into action 262

8 Complementary exercises 267

Appendix D: Glossary & tips 283

Index 293

  • Comprehensive coverage of all major modeling viewpoints
  • Grounded in concrete problem examples and their detailed solutions
  • Unique in the UML literature in showing how a modeling expert thinks and assesses possible alternative solutions