Menu Expand
Using UML

Using UML

Perdita Stevens

(2005)

Additional Information

Book Details

Abstract

One of the first textbooks to be fully up-to-date with the new and expanded UML 2.0 standard, this is an ideal introduction to the Unified Modelling Language for students learning about object and component-based software design and development.

 

The book encourages a pragmatic and open-minded approach to real-life software engineering. It places UML in the context of the software engineering discipline as a whole, providing students with a practical understanding of best practice in software design and development.

 

The authors present a broad view of the subject area, enabling students to see for themselves how different practices may be appropriate for different situations.

 

The book is divided into four parts covering:

  • Part 1 - Introductory Concepts

  • Part 2 - UML, the language

  • Part 3 - Case studies

  • Part 4 - Applying UML in practice

Table of Contents

Section Title Page Action Price
Cover Cover
Using UML 2nd edition iii
Contents vii
Preface xvi
First edition acknowledgments xxi
List of Figures xiii
part I Conceptualbackground 1
Software engineering with components 2
What is a good system? 2
Do we have good systems? 3
What are good systems like? 6
How are good systems built? 13
Object concepts 14
What is an object? 14
How does this relate to the aims of the previous chapter? 20
Inheritance 22
Polymorphism and dynamic binding 24
Introductory case study 27
The problem 27
Scope and iterations 31
Identifying classes 32
Relations between classes 34
The system in action 36
Design by Contract 1 38
Persistence 41
The developmentprocess 44
Defining terms 44
The development process 47
System, design, model, diagram 52
part II The Unified Modeling Language 55
Essentials of classmodels 56
Identifying objects and classes 56
Associations 60
Attributes and operations 63
Generalization 65
Design by Contract 2 – Substitutivity 66
The class model during the development 69
CRC cards 69
More on classmodels 74
More about associations 74
OCL, the Object Constraint Language 82
More about classes 84
Stereotypes 85
Properties and Tagged Values 88
Parameterized classes 89
Dependency 91
Components and packages 91
Visibility, protection 91
Essentials of usecase models 93
Actors in detail 95
Use cases in detail 97
System boundary 98
Using use cases 99
Possible problems with use cases 101
Use Case Driven Development? 102
More on usecase models 104
Relationships between use cases 104
Generalizations 109
Actors and classes 110
Essentialsof interactiondiagrams 112
Collaborations 113
Communication diagrams 114
Sequence diagrams 116
Where Should Messages Go? Law of Demeter 117
More advanced features 119
Interaction diagrams for other purposes 122
More oninteractiondiagrams 124
Beyond simple sequences of messages 124
Concurrency 127
Essentials ofstate and activitydiagrams 132
State diagrams 132
Designing Classes with State Diagrams 139
Activity diagrams 141
More on statediagrams 145
Other kinds of events 145
Other kinds of actions 146
Looking inside states 147
Concurrency within states 149
Architectural andimplementationdiagrams 150
Component structure diagrams 150
Deployment model 152
The Deployment Model in the Project 153
Packagesand models 155
Packages 155
Models 158
part III Case studies 161
CS4administration 162
The case study 162
Discussion 168
Board games 170
Scope and preliminary analysis 171
Interaction 175
Back to the framework 178
States 180
Discrete eventsimulation 182
Requirements 182
Outline class model 184
Use cases 185
Standard mechanism for process-based simulation 188
Associations and navigability 189
Classes in detail 192
Class Report 197
Class Statistic 198
Building a complete simulation model 199
The dining philosophers 199
part IV Towards practice 203
Reuse:components,patterns 204
Practicalities of reuse 204
Design patterns 211
Frameworks 215
Product quality:verification,validation, testing 217
Quality review 217
How can high quality be achieved? 218
Verification 218
Validation 220
Testing 221
Reviews and inspections 226
Process quality:management,teams, QA 229
Management 229
Teams 233
Leadership 234
Quality assurance 236
Quality Assurance: The Case Against 238
Further reading 239
Bibliography 241
Index 245