This book provides a hands-on introduction to model-based requirements engineering and management by describing a set of views that form the basis for the approach. These views take into account each individual requirement in terms of its description, but then also provide each requirement with meaning by putting it into the correct context. Model-based systems engineering is concerned with applying a structured approach to realising successful systems, where models provide the main basis for all project and system outputs. Key to any successful systems engineering initiative is having a well-defined, rigorous and scalable process for model-based requirements engineering and management. Such an approach should also be tool-independent and allow itself to be realised using any tool or combination of tools, ranging from paper-based to fully integrated tool chain implementations of the process. The book also looks at the crucial question of modelling notations for requirements modelling and includes discussions on the use and application of UML, SysML, text and tabular formats.
Author(s): Jon Holt, Simon Perry, Mike Brownsword
Series: IET Professional Applications of Computing Series 9
Publisher: The Institution of Engineering and Technology
Year: 2011
Language: English
Pages: xvi+340
Model-Based Requirements Engineering......Page 4
Contents......Page 8
Acknowledgement......Page 16
1.1.1 The need for requirements engineering......Page 18
1.2.1.2 INCOSE definition......Page 21
1.2.1.4 Standards definition......Page 22
1.2.2.1 Basic types of requirement......Page 23
1.2.2.3 Functional requirements......Page 24
1.2.2.5 Differentiating between types of requirement......Page 25
1.2.3 Stakeholders......Page 26
1.2.4 Context modelling......Page 28
1.2.4.1 Realising model-based systems engineering......Page 29
1.3 Overview of the book......Page 30
References......Page 31
PART I: Introduction......Page 32
2.2.1 The kennel (doghouse)......Page 34
2.2.2 The house......Page 36
2.2.3 The office block......Page 37
2.2.4 The point......Page 39
2.3.1 Complexity......Page 40
2.3.2 Lack of understanding......Page 42
2.3.3 Communication......Page 43
2.3.4 The vicious triangle......Page 44
2.4.1 Defining modelling......Page 45
2.4.3 The level of abstraction......Page 46
2.4.5 Independent views of the same system......Page 47
2.5.1 The two aspects of a SysML model......Page 48
References......Page 49
3.1 Introduction......Page 50
3.1.1 Structural modelling......Page 53
3.1.1.1 Adding more detail to relationships......Page 57
3.1.2 Behavioural modelling......Page 60
3.1.3 Stereotypes......Page 67
3.2 Block definition diagrams......Page 68
3.2.2 Notation......Page 69
3.2.3 Usage......Page 73
3.2.4 Summary......Page 77
3.3.2 Notation......Page 78
3.3.3 Usage......Page 81
3.4.2 Notation......Page 85
3.4.3 Usage......Page 87
3.5.1 Overview......Page 91
3.5.2 Notation......Page 93
3.5.3 Usage......Page 95
3.5.3.1 Use case at too high a level......Page 98
3.5.3.2 Actor at too high a level......Page 99
3.5.3.3 Repeated actors......Page 100
3.5.3.4 Something missing – Use cases without actors and actors without use cases......Page 101
3.6.2 Notation......Page 102
3.6.3 Usage......Page 104
3.7 Conclusions......Page 107
References......Page 108
PART II: Concepts......Page 110
4.2 The ontology......Page 112
4.2.1 The ‘Requirement’ concept......Page 113
4.2.1.2 The ‘Functional Requirement’......Page 115
4.2.1.3 The ‘Non-functional Requirement’......Page 116
4.2.2 The ‘Requirement Description’ concept......Page 118
4.2.2.1 Typical properties of a requirement......Page 119
4.2.3 The ‘Source Element’ concept......Page 120
4.2.4 The ‘Rule’ concept......Page 122
4.2.5.1 Stakeholder context......Page 124
4.2.5.2 System contexts......Page 127
4.2.6 The ‘Use Case’ concept......Page 130
4.2.7 The ‘Scenario’ concept......Page 132
4.3 The ontology revisited......Page 133
References......Page 134
5.2 Introducing the framework......Page 136
5.3 Introduction to the framework views......Page 137
5.4.1.1 Rational......Page 139
5.4.1.2 The ontology......Page 140
5.4.1.4 Visualising the view......Page 142
5.4.1.5 Discussion......Page 143
5.4.2.2 The ontology......Page 144
5.4.2.3 Relationships with other views......Page 146
5.4.2.4 Visualising the views......Page 148
5.4.2.5 Discussion......Page 149
5.4.3.2 The ontology......Page 150
5.4.3.3 Relationships with other views......Page 152
5.4.3.4 Visualising the view......Page 153
5.4.3.5 Discussion......Page 154
5.4.4.2 The ontology......Page 156
5.4.4.3 Relationships with other views......Page 157
5.4.4.5 Discussion......Page 159
5.4.5.2 The ontology......Page 161
5.4.5.3 Relationships with other views......Page 162
5.4.5.4 Visualising the view......Page 163
5.4.6.1 Rational......Page 165
5.4.6.2 The ontology......Page 166
5.4.6.4 Visualising the ‘Stakeholder Scenario View’......Page 168
5.4.6.6 Visualising the ‘Constraint Validation View’......Page 169
5.4.6.8 Discussion......Page 171
5.5 The Traceability Views......Page 174
5.5.2 Visualising the view......Page 175
References......Page 176
PART III: Realisation......Page 178
6.1 Introduction......Page 180
6.3 The Source Element View......Page 183
6.4 The Requirement Description View......Page 188
6.4.1 The Traceability View (Requirement Description View to Source Element View)......Page 192
6.5 The definition rule set view (testing the Requirement Descriptions)......Page 194
6.6 The Context Definition View (identification of stakeholder contexts)......Page 200
6.7 The Requirement Context View......Page 203
6.7.1 The Traceability View (Stakeholder Requirement Context View to Requirement Description View)......Page 210
6.8 The Validation View (definition of stakeholder scenarios)......Page 213
6.8.1 The Traceability View (Stakeholder Scenario View to Requirement Context View)......Page 217
6.9 The Context Definition View (identification of system context)......Page 220
6.10 The Requirement Context View (system requirements)......Page 222
6.10.1 The Traceability View (system Requirement Context View to Stakeholder Requirement Context View)......Page 229
6.11 The Validation View (System Scenario View)......Page 232
6.11.1 The Traceability View (System Scenario View validates Requirement Context View)......Page 236
6.12 The Validation View (Constraint Validation View)......Page 238
6.12.1 The Traceability View (System Constraint Validation View to System Requirements Context View)......Page 244
6.13 Conclusions......Page 246
References......Page 248
7.1 Introduction......Page 250
7.2.1 Teaching guide......Page 251
7.2.1.1 Different types of teaching......Page 252
7.2.2.1 Teaching requirements......Page 253
7.2.3.1 Teaching requirements and stakeholders......Page 255
7.2.3.2 A generic course structure......Page 256
7.2.4 Competence......Page 260
7.2.4.1 Generic competencies......Page 261
7.2.4.2 Bespoke competencies......Page 267
7.2.4.3 Generic versus specific competencies......Page 273
7.3.1 Defining the process......Page 274
7.3.1.1 The ACRE process: the Requirement View......Page 275
7.3.1.2 The ACRE process: the Process Structure View......Page 277
7.3.1.3 The ACRE process: the Process Content View......Page 280
7.3.1.4 The ACRE process: the stakeholder view......Page 282
7.3.1.6 The ACRE process: the Process Behaviour View......Page 287
7.3.2 Mapping the process to source standards......Page 290
7.3.3 Using the process......Page 292
7.3.3.1 Example use: quick and dirty process......Page 294
7.3.3.2 Example use: semi-formal process......Page 295
7.3.4 Deploying the process......Page 297
7.4.1 Considerations for tool availability......Page 300
7.4.2 Use of tools with the process......Page 303
7.4.2.1 Example tool implementation: quick and dirty process......Page 304
7.4.2.2 Example tool implementation: semi-formal process......Page 306
7.4.2.3 Example tool implementation: formal process......Page 310
7.4.3.1 Providing modelling capability......Page 314
7.4.3.5 Being compatible with process model......Page 315
References......Page 316
A.2 Block definition diagrams......Page 318
A.3 Requirement diagrams......Page 321
A.4 Parametric constraint diagrams......Page 323
A.5 Use case diagrams......Page 325
A.6 Sequence diagrams......Page 326
Reference......Page 327
B.2 Showing parallel processing......Page 328
B.3 Referencing other diagrams......Page 329
B.5 Showing loops......Page 330
Reference......Page 332
C.2 Overview of the seven views approach......Page 334
C.3 The Seven Views of UCAM......Page 337
References......Page 349
Index......Page 350