Download presentation
Presentation is loading. Please wait.
Published byBruce Carson Modified over 8 years ago
1
Requirements Engineering Processes, York EngD Programme, 2009Slide 1 Requirements engineering processes Prof Ian Sommerville
2
Requirements Engineering Processes, York EngD Programme, 2009Slide 2 Objectives To introduce the activities in requirements engineering processes To discuss the reasons why there RE processes vary significantly from one organisation to another To introduce the activity of requirements management
3
Requirements Engineering Processes, York EngD Programme, 2009Slide 3 RE process perspectives Different views of requirements engineering processes
4
Requirements Engineering Processes, York EngD Programme, 2009Slide 4 Perceptions of requirements engineering Requirements engineering (RE) means different things to different people –It’s about problem analysis, and –It’s about solution specification, and –It’s the baseline for design, and –It’s what you do at the start of the life-cycle. RE is all of these things so, as a consequence, there cannot be a single, definitive RE process RE processes vary dramatically depending on the type of system being developed and the maturity of the organisation procuring the system
5
Requirements Engineering Processes, York EngD Programme, 2009Slide 5 Goals of requirements engineering Specify a product that satisfies the stakeholders and constraints Specify how that satisfaction is to be verified Enable project planning and cost estimation Manage change Write a description of the requirements in a form that is suitable for the customer for the system and for the system developer
6
Requirements Engineering Processes, York EngD Programme, 2009Slide 6 RE process interactions
7
Requirements Engineering Processes, York EngD Programme, 2009Slide 7 A staged model of a requirements engineering process
8
Requirements Engineering Processes, York EngD Programme, 2009Slide 8 A spiral view of the RE process
9
Requirements Engineering Processes, York EngD Programme, 2009Slide 9 Process variability The factors that lead to variability in requirements engineering processes
10
Requirements Engineering Processes, York EngD Programme, 2009Slide 10 Process activities Requirements discovery –Interacting with stakeholders to discover their requirements. Domain requirements are also discovered at this stage. Requirements classification and organisation –Groups related requirements and organises them into coherent clusters. Prioritisation and negotiation –Prioritising requirements and resolving requirements conflicts. Requirements documentation –Requirements are documented and input into the next round of the spiral.
11
Requirements Engineering Processes, York EngD Programme, 2009Slide 11 Problem understanding Understanding the problem when developing requirements for a system is not a simple technical issue. Requirements engineers have to understand –The product –The process –The customer (s) –The developer (s) of the software –The deployment environment
12
Requirements Engineering Processes, York EngD Programme, 2009Slide 12 Is the product... An information system? –Understanding the organisational environment is crucial; –The organisation may change radically; An embedded or hybrid system? –Operational environment needs to be understood; –Solution architecture fixed early and hard to change; –Production problems tend to migrate to the software. A custom-built system or a software product –Do customers for know what their requirements are? –Who supplies the requirements for a software product?
13
Requirements Engineering Processes, York EngD Programme, 2009Slide 13 Is the process... Customer-driven? –Customer is principal stakeholder; –Typically a document-driven process. Market-driven? –Time-to-market is the dominant constraint; –Developer is principal stakeholder; –Driven by product vision for first release. Subsequent releases need to balance developer’s strategic goals and customers’ requirements.
14
Requirements Engineering Processes, York EngD Programme, 2009Slide 14 Is the customer… Homogeneous? –Need to understand their business and strategic objectives. Heterogeneous? –Need to trade off conflicting requirements, This is the normal situation. Merely potential? –Need a proxy to represent the actual customer
15
Requirements Engineering Processes, York EngD Programme, 2009Slide 15 Has the developer... A document culture? –Documentation may be an overhead for small start-ups - but a creeping requirement as product and customer base grows. A quality culture? –RE ‘products’ perceived to have only an indirect relationship to software products; –Classical view of quality conflicts with short development cycles. A RAD culture? –No experience of dealing with requirements documents but works on the basis of prototyping and rapid evolution
16
Requirements Engineering Processes, York EngD Programme, 2009Slide 16 Is the deployment environment... An existing environment with established processes and equipment? –How should the system integrate with the existing equipment? Will existing processes be resistant to change? Flexible and geared to change? –Are the people in the environment used to change or will they resist the system? –Is the management tradionally hierarchical? Disciplined? –Do the people in the environment work according to a process or do they set their own tasks?
17
Requirements Engineering Processes, York EngD Programme, 2009Slide 17 Why is RE hard to get right? The world is complex –The problem is not always tractable to analysis. The world changes –The problem will change … and the solution may change the problem. Resources are scarce –RE is always tightly time- and money-bound; –Required effort will exceed budget.
18
Requirements Engineering Processes, York EngD Programme, 2009Slide 18 Typical process problems Requirements elicitation –Failure to consider all important stakeholders and therefore critical requirements are not included in the system Requirements analysis –Failure to carry out a detailed analysis of the requirements –System and problem models become inconsistent Requirements validation –Failure to identify requirements tests –Insufficient validation of requirements Requirements management –Failure of change control and management of requirements
19
Requirements Engineering Processes, York EngD Programme, 2009Slide 19 Symptoms of RE process problems Product problems –Customer dissatisfaction –Delays in implementing changes to products –Unused product features People problems –System stakeholders feel excluded –Meetings failing to reach agreement Schedule problems –Requirements changes take a long time to negotiate –Extensive rework causes schedule delays
20
Requirements Engineering Processes, York EngD Programme, 2009Slide 20 Requirements management The process of managing changes to system requirements
21
Requirements Engineering Processes, York EngD Programme, 2009Slide 21 Requirements management Requirements management is the process of managing changing requirements during the requirements engineering process and system development. Requirements are inevitably incomplete and inconsistent –New requirements emerge during the process as business needs change and a better understanding of the system is developed; –Different viewpoints have different requirements and these are often contradictory.
22
Requirements Engineering Processes, York EngD Programme, 2009Slide 22 Requirements change The priority of requirements from different viewpoints changes during the development process. System customers may specify requirements from a business perspective that conflict with end-user requirements. The business and technical environment of the system changes during its development.
23
Requirements Engineering Processes, York EngD Programme, 2009Slide 23 Requirements evolution
24
Requirements Engineering Processes, York EngD Programme, 2009Slide 24 Enduring and volatile requirements Enduring requirements. Stable requirements derived from the core activity of the customer organisation. E.g. a hospital will always have doctors, nurses, etc. May be derived from domain models Volatile requirements. Requirements which change during development or when the system is in use. In a hospital, requirements derived from health-care policy
25
Requirements Engineering Processes, York EngD Programme, 2009Slide 25 Requirements classification
26
Requirements Engineering Processes, York EngD Programme, 2009Slide 26 Requirements management planning During the requirements engineering process, you have to plan: –Requirements identification How requirements are individually identified; –A change management process The process followed when analysing a requirements change; –Traceability policies The amount of information about requirements relationships that is maintained; –CASE tool support The tool support required to help manage requirements change;
27
Requirements Engineering Processes, York EngD Programme, 2009Slide 27 Requirements identification A scheme has to be devised for requirements identification so that requirements can be unambiguously identified The most common scheme is a nested numbering scheme e.g. 1.2.3. However, such schemes are a problem –The top level classification (the first number) has to be fixed in advance –There are problems when requirements are changed Major problem is ensuring that stakeholders use the requirements identification scheme in a consistent way
28
Requirements Engineering Processes, York EngD Programme, 2009Slide 28 Change management
29
Requirements Engineering Processes, York EngD Programme, 2009Slide 29 Traceability Traceability is concerned with the relationships between requirements, their sources and the system design Source traceability –Links from requirements to stakeholders who proposed these requirements; Requirements traceability –Links between dependent requirements; Design traceability –Links from the requirements to the design;
30
Requirements Engineering Processes, York EngD Programme, 2009Slide 30 Tool support Requirements storage –Requirements should be managed in a secure, managed data store. Change management –The process of change management is a workflow process whose stages can be defined and information flow between these stages partially automated. Traceability management –Automated retrieval of the links between requirements.
31
Requirements Engineering Processes, York EngD Programme, 2009Slide 31 Key points A staged requirements engineering process includes a feasibility study, requirements elicitation and analysis, requirements specification and requirements management. Social and organisational factors influence system requirements, resulting in variations in RE processes Business changes inevitably lead to changing requirements. Requirements management includes planning and change management.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.