Table of Contents
Foreword ix
Preface xiii
Part 1. Requirements Engineering 1
Chapter 1. The Requirements Engineering Process 3
1.1. Background and main definitions 3
1.2. Requirements engineering process 10
1.2.1. Requirements engineering and ISO 15288 processes 11
1.2.2. Requirements engineering and ISO 29110 processes 14
1.2.3. Problem versus solution 18
1.3. Requirements engineering process and modeling 19
1.4. Engineering processes and project management 26
Chapter 2. A Method for Requirements Engineering 31
2.1. Proposal of a requirements engineering method 31
2.1.1. Requirement diagram 36
2.1.2. Block definition diagram 38
2.1.3. Use case diagram 38
2.1.4. State machine diagram 39
2.1.5. Sequence diagram 39
2.1.6. Activity diagram 40
2.2. Define the system framework 40
2.2.1. Goal 40
2.2.2. Define the system framework using SysML 41
2.2.3. Systematization and verification 43
2.3. Define the system life cycle 43
2.3.1. Goal 43
2.3.2. Define the system life cycle using SysML 44
2.3.3. Systematization and verification 45
2.4. Define contexts45
2.4.1. Goal 45
2.4.2. Define contexts using SysML 45
2.4.3. Systematization and verification 47
2.5. Define uses 47
2.5.1. Goal 47
2.5.2. Define uses using SysML 49
2.5.3. Systematization and verification 52
2.6. Describe the use scenarios 53
2.6.1. Goal 53
2.6.2. Describe the use scenarios using SysML 53
2.6.3. Systematization and verification 62
2.7. Define functional requirements 62
2.7.1. Goal 62
2.7.2. Define functional requirements using SysML 65
2.7.3. Systematization and verification 67
2.8. Define non-functional requirements 67
2.8.1. Goal 67
2.8.2. Define non-functional requirements using SysML 68
2.8.3. Systematization and verification 70
2.9. Ensure traceability 72
2.9.1. Goal 72
2.9.2. Ensure traceability using SysML 72
2.9.3. Systematization and verification 75
2.10. Conclusion 75
Part 2. Case Study, Application of the Method 77
Chapter 3. Definition of Stakeholders’ Needs 79
3.1. Case study 79
3.1.1. Context of the case study 80
3.1.2. Structure of the SysML project 81
3.1.3. Presentation of the results 84
3.2. Definition of needs 85
3.2.1. Define the system framework 85
3.2.2. Define the system life cycle 86
3.2.3. Define contexts 87
3.2.4. Define uses 89
3.2.5. Describe the use scenarios 92
3.2.6. Define functional requirements 92
3.2.7. Define non-functional requirements 95
3.2.8. Ensure traceability 95
3.3. Stakeholder needs definition documents 98
3.3.1. Use a document template 98
3.3.2. Use a list of needs 119
Chapter 4. System Requirements Engineering 125
4.1. Case study 125
4.1.1. Structure of the SysML project 125
4.1.2. Presentation of the results 126
4.2. Definition of system requirements 126
4.2.1. Define the system framework 126
4.2.2. Define the system life cycle 127
4.2.3. Define contexts 127
4.2.4. Define uses 128
4.2.5. Describe the use scenarios 132
4.2.6. Define functional requirements 135
4.2.7. Define non-functional requirements 136
4.2.8. Ensure traceability 136
4.3. System requirements analysis document 139
4.4. Requirements management 161
4.4.1. Fundamental elements 162
4.4.2. Management workflows 168
4.4.3. Use in student projects 173
Chapter 5. Integration with Other Methods 175
5.1. Context 175
5.2. Integration with the Harmony SE method 175
5.2.1. Modification of the project structure 176
5.2.2. The Harmony SE method and requirements engineering 176
5.2.3. Definition of stakeholders’ needs 178
5.2.4. Analysis of system requirements 179
5.2.5. Conclusion 180
5.3. Integration with the Arcadia method 180
5.3.1. The Arcadia method and requirements engineering 181
5.3.2. Definition of stakeholders’ needs 182
5.3.3. Analysis of system requirements 183
5.3.4. Conclusion 185
5.4. Integration with the CESAM method 186
5.4.1. The CESAM method and requirements engineering 186
5.4.2. Definition of stakeholders’ needs 187
5.4.3. Analysis of system requirements 189
5.4.4. Conclusion 189
References 191
Index 195