Requirements Engineering (continued)

Slides:



Advertisements
Similar presentations
Requirements Validation
Advertisements

Requirements Management
Business Area Analysis Focus: Domain View (selected business area) Goals: –Isolate functions and procedures that allow the area to meet its goals –Define.
Requirements Engineering Processes
SE 555 Software Requirements & Specification Requirements Validation.
Overview of Software Requirements
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
1 SWE Introduction to Software Engineering Lecture 11 - Requirements Engineering Processes.
Requirements Engineering Process – 1
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes 1.
Dr Suad AlRamouni. ◦ Understand some key terms used in software requirements engineering. ◦ Distinguish requirements development from requirements management.
S/W Project Management
Applying the Inspection Process. What Software Artifacts Are Candidates for Inspection? Software Requirements Software Designs Code Test Plans.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Chapter 6 Requirements Engineering Process.
Copyright © Jerzy R. Nawrocki Requirements Review Requirements Engineering & Project.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
1 REQUIREMENT ENGINEERING Chapter 7. 2 REQUIREMENT ENGINEERING Definition Establishing what the customer requires from a software system. OR It helps.
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
Writing Quality Requirements Karl E. Wiegers Presented by: Ricardo Carlos.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Requirements Engineering Requirements Elicitation Process Lecture-9.
Requirements Engineering Requirements Specification Lecture-22.
Requirements validation Csaba Veres. What is it? Validation is the process of checking the requirements document for –completeness –consistency –accuracy.
Requirement Elicitation Process Lesson 3. Requirements Elicitation  Is the process to find out the requirements for an intended software system by communicating.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
Requirements Engineering Overview Senior Design Don Evans.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Requirements Validation
Requirements / Specifications. 01/18/10CS-499G2 Requirements Determine what the customer needs (wants) the software to do  What are requirements?  An.
Requirements Engineering. Requirements engineering processes The processes used for RE vary widely depending on the application domain, the people involved.
Requirements Engineering Process
Requirements Engineering Processes. Syllabus l Definition of Requirement engineering process (REP) l Phases of Requirements Engineering Process: Requirements.
1 The Requirements Problem Chapter 1. 2 Standish Group Research Research paper at:  php (1994)
Requirements Engineering Requirements Validation and Management Lecture-24.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Requirement Engineering
Requirements Engineering Requirements Management Lecture-25.
Requirements Analysis
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
CS223: Software Engineering Lecture 8: Requirement Engineering.
Chapter 4 – Requirements Engineering Part 2 1Chapter 4 Requirements engineering.
Verification vs. Validation Verification: "Are we building the product right?" The software should conform to its specification.The software should conform.
1 Requirements Analysis Lecture # Recap of Requirements Elicitation - 1 Requirements elicitation deals with discovering requirements for a software.
 The processes used for RE vary widely depending on the application domain, the people involved and the organisation developing the requirements.  However,
1 Requirements Management - II Lecture # Recap of Last Lecture We talked about requirements management and why is it necessary to manage requirements.
REQUIREMENTS ENGINEERING PROCESSES Chapter 6. Activities in Requirements Engineering processes  Requirements elicitation;  Requirements analysis; 
Requirements Errors Lecture # 14.
Requirements Engineering Processes
Requirements Validation – II
Chapter 7 Review Requirements Engineering Processes
Requirements Engineering (continued)
CHAPTER.2: Requirements Engineering Processes
Requirements analysis, representation and validation
Requirements Elicitation – 1
Chapter 4 Software Requirements
Software Requirements analysis & specifications
UNIT II.
Requirements Analysis
Verification and Validation
Requirements Engineering Process
Requirements Verification and Validation
Requirements Engineering Process – 1
Requirements Management - I
SE-565 Software System Requirements VII. Requirements Validation
Requirements Validation – I
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Software Reviews.
Unit IV – Chapter 2 V-Test Model.
Presentation transcript:

Requirements Engineering (continued)

Requirements Engineering Activities Requirements Development Requirements Management Elicitation Analysis Specification Validation

Validation Objectives Certify that the requirements document is an acceptable description of the system to be implemented Check a requirements document for Completeness Understandability, organization Conformance to standards Requirements conflicts, redundancy, ambiguity Technical errors Traceability and Verifiability

Analysis and Validation Analysis works with raw requirements as elicited from the system stakeholders The requirements are known to be incomplete and expressed in an informal, unstructured way Validation works with a final draft of the requirements document, i.e., with negotiated and agreed-on requirements Remove additional sources of incompleteness, inconsistency, and so forth

Validation Inputs and Outputs Requirements document List of problems Requirements Validation Organizational knowledge Agreed actions Organizational standards

Validation Inputs Requirements document Organizational knowledge Should be a complete version of the document, not an unfinished draft. Organizational knowledge Knowledge on the part of the organization, that may be used to judge the realism of the requirements Organizational standards Local standards, e.g., for the structure of the requirements document

Validation Outputs Problem list Agreed-on actions List of discovered problems in the requirements document Agreed-on actions List of agreed-on actions in response to requirements problems Some problems may have several corrective actions

Requirements Validation via Inspection A group of people read and analyze the requirements, look for problems, meet and discuss the problems and agree on actions to address these problems

Inspection Team Membership Inspections should involve a number of stakeholders of different backgrounds People from different backgrounds bring different skills and knowledge to the inspection Stakeholders should feel involved in the RE process and seek an understanding of the needs of other stakeholders Inspection team should ideally include (among others) a domain expert an end-user, and representatives of the client

Requirements Inspection Checklists Understandability Can readers of the document understand what the requirements mean? Redundancy Is information unnecessarily repeated? Completeness Does the checker know of any missing requirements or is there any information missing from requirement descriptions? Ambiguity Are the requirements expressed using terms that are clearly defined? Could readers from different backgrounds make different interpretations of the requirements? Testability Are the functional requirements testable?

Requirements Inspection Checklists Consistency Do the descriptions of different requirements include contradictions? Are there contradictions between individual requirements and overall system requirements? Organization Is the document structured in a sensible way? Are the descriptions of requirements organized so that related requirements are grouped? Conformance to standards Do the requirements and requirements document conform to defined standards? Are departures from standards justified? Traceability Are requirements unambiguously identified, with links to related requirements and reasons why requirements are included?

Requirements and Testing Testing doesn’t occur until later in the lifecycle, when code is available. Still, each functional requirement must be testable i.e. it should be possible to define tests to check whether or not that requirement has been met. Inventing requirements tests is an effective validation technique as missing or ambiguous information in the requirements description may make it difficult to formulate tests Testers can begin developing tests as soon as requirements specs are available

Requirements Engineering Activities Requirements Development Requirements Management Elicitation Analysis Specification Validation 13

Requirements Management The process of managing change to the requirements for a system The principal concerns of requirements management are: Managing changes to agreed requirements Managing relationships between requirements Managing the dependencies between the requirements document and other artifacts produced in the systems engineering process (i.e., design docs, code, tests, user docs….) 14

Reasons for Requirements Changes Errors and misunderstandings New requirements emerge Deeper understanding of the system Changing external circumstances Changes of strategy or priority of the business Economic circumstances, new competitors New information about the system’s environment E.g., new digital maps for a geographic info system New laws or regulations 15

Requirements Traceability Requirements cannot be managed effectively without requirements traceability A requirement is traceable if you can determine Why the requirement exists (perhaps including who suggested it) What requirements are related to it How that requirement relates to other information such as systems design, code, tests, and user documentation. 16

Traceability Traceability information is data that helps you assess the impact of requirements change It links related requirements and the requirements and other system representations Traceability matrices and tables may be used to record traceability information. 17