Miguel Garzón, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher with material from: Jo Atlee, Nancy Day, Dan Berry (all University.

Slides:



Advertisements
Similar presentations
7.1 A Bridge to Design & Construction
Advertisements

1 R&D SDM 1 Software Project Management Requirements Analysis 2010 Theo Schouten.
Introduction to Software Engineering Dr. Basem Alkazemi
ACTIVELY ENGAGING THE STAKEHOLDER IN DEFINING REQUIREMENTS FOR THE BUSINESS, THE STAKEHOLDER, SOLUTION OR TRANSITION Requirements Elicitation.
SWE Introduction to Software Engineering
Requirements Inception
Introduction to Software Engineering
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Business Area Analysis Focus: Domain View (selected business area) Goals: –Isolate functions and procedures that allow the area to meet its goals –Define.
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
Requirements Engineering Process – 1
Chapter 4 Capturing the Requirements 4th Edition Shari L. Pfleeger
1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 2 Chapter 6 & 7 System.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes 1.
Chapter 4 Requirements Engineering
Requirements/Systems analyst
S/W Project Management
1 IBM Software Group ® Mastering Requirements Management with Use Cases Module 4: Analyze the Problem.
Advanced Topics in Requirement Engineering. Requirements Elicitation Elicit means to gather, acquire, extract, and obtain, etc. Requirements elicitation.
1 Phases in Software Development Lecture Software Development Lifecycle Let us review the main steps –Problem Definition –Feasibility Study –Analysis.
Dr. Ralph R. Young Director of Software Engineering Systems and Process Engineering Northrop Grumman Information Technology (703)
1 REQUIREMENT ENGINEERING Chapter 7. 2 REQUIREMENT ENGINEERING Definition Establishing what the customer requires from a software system. OR It helps.
Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher with material from: Jo Atlee, Nancy Day, Dan Berry (all University.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Business Analysis and Essential Competencies
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Requirements Engineering
Feasibility Study.
Requirements Elicitation. Who are the stakeholders in determining system requirements, and how does their viewpoint influence the process? How are non-technical.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Slide 10A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
1 CS 426 Senior Projects Chapter 3: The Requirements Workflow [Arlow & Neustadt, 2005] January 31, 2012.
Software Engineering Saeed Akhtar The University of Lahore Lecture 7 Originally shared for: mashhoood.webs.com.
Lecture 7: Requirements Engineering
Lecture-3.
Requirement Elicitation Process Lesson 3. Requirements Elicitation  Is the process to find out the requirements for an intended software system by communicating.
Requirements Collection By Dr. Gabriel. Requirements A requirement is any function, constraint, or property that the system must provide, meet, or satisfy.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
Systems Development Life Cycle
By Germaine Cheung Hong Kong Computer Institute
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
Requirements Validation
1 Chapter 8 Building the Analysis Model (1) Analysis Concepts and Principles.
Requirements Engineering Requirements Elicitation Overview of Requirements Analysis.
Requirements Engineering Processes. Syllabus l Definition of Requirement engineering process (REP) l Phases of Requirements Engineering Process: Requirements.
Evaluating Requirements
1 The Requirements Problem Chapter 1. 2 Standish Group Research Research paper at:  php (1994)
Requirement Engineering
Requirement engineering & Requirement tasks/Management. 1Prepared By:Jay A.Dave.
CS223: Software Engineering Lecture 8: Requirement Engineering.
 CMMI  REQUIREMENT DEVELOPMENT  SPECIFIC AND GENERIC GOALS  SG1: Develop CUSTOMER Requirement  SG2: Develop Product Requirement  SG3: Analyze.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
Chapter 3: The Requirements Workflow [Arlow and Neustadt, 2005] CS 426 Senior Projects in Computer Science University of Nevada, Reno Department of Computer.
Software Engineering Lecture 10: System Engineering.
The Feasibility Study The objective of a feasibility study is to find out if an project can be done and if so, how The objective of a feasibility study.
Chapter 4 – Requirements Engineering Part 2 1Chapter 4 Requirements engineering.
Requirements. Outline Definition Requirements Process Requirements Documentation Next Steps 1.
Quiz 1 Q1) Discuss briefly the main phases of the requirement process. Q2)Discuss briefly the main outcome of the Trawling for Requirements phase.
1 Requirements Analysis Lecture # Recap of Requirements Elicitation - 1 Requirements elicitation deals with discovering requirements for a software.
Requirement Elicitation Nisa’ul Hafidhoh Teknik Informatika
Requirements Engineering
Requirements Elicitation – 1
THE BUSINESS ANALYSIS PROCESS MODEL
Software Requirements analysis & specifications
Chapter 3: The Requirements Workflow
Presentation transcript:

Miguel Garzón, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher with material from: Jo Atlee, Nancy Day, Dan Berry (all University of Waterloo); Amyot , Somé 2008 Introduction to Requirements Elicitation SEG3101 (Fall 2015)

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 2 Table of Contents Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems I know that you believe that you understood what you think I said, but I am not sure you realize that what you heard is not what I meant. 1 [1] Robert McCloskey, State Department spokesman

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 3

Goals, Risks, and Challenges

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 5 What is Requirements Elicitation? Requirements elicitation is “the process of discovering the requirements for a system by communicating with customers, system users and others who have a stake in the system development” 1 Elicitation means “to bring out, to evoke, to call forth” Elicitation might even require one to provoke! Human activity involving interaction between a diverse array of human beings [1] Ian Sommerville and Pete Sawyer Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation Elicitation Goals Determine sources of information & appropriate techniques Get information on domain, problem, constraints Produce a first document Mainly user requirements and elicitation notes Potentially incomplete, disorganized, inconsistent But we must start somewhere! Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems 6

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 7 Elicitation Risks and Challenges (1) Problems of scope System boundaries inadequately defined or defined too soon Unnecessary technical details Problems of understanding Stakeholder not sure of what is needed Stakeholder has trouble communicating needs Stakeholder does not understand capabilities and limitation of computing environment Requirements limited by what stakeholders think is possible Stakeholder does not have full understanding of domain Stakeholders state conflicting requirements Hard to detect, negotiate, and prioritize Problems of volatility Stakeholders will not commit to a set of written requirements Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 8 Elicitation Risks and Challenges (2) Other typical issues Experts seldom available Many stakeholders lack motivation or resist to change Finding an adequate level of precision/detail Mixing requirements with design Common vocabulary often missing Requirements do not fall from the sky! Sometimes hidden Sometimes too obvious, implicit, ordinary… Assume == “a**” of “u” and “me” Need for creative thinking in order to produce innovative and adequate requirements Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 9 RE: More an Art than Science Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

Sources of Requirements

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 11 Sources of Requirements Various stakeholders Clients, customers, users (past and future), buyers, managers, domain experts, developers, marketing and QA people, lawyers, people involved in related systems, anyone who can bring added value! Pre-existing systems Not necessarily software systems Pre-existing documentation Competing systems Documentation about interfacing systems Standards, policies, collective agreements, legislation … Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 12 Stakeholder – Customer/Client Person who pays for the software development Ultimately, has the final word on what will be the product For an internal product, the client is probably a product manager For the consumer market, the customer may be the marketing department Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 13 Stakeholder – Buyer Person who pays for the software once it is developed Possibly a user or a business owner buying a product for his employees What features is he willing to pay for? Which are trivial or excessive? Must participate actively in the project (or have a representative) Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 14 Stakeholder – User... of the current system or future system Experts of the current system: indicate which functions to maintain or improve Experts of competitors’ products: suggestions on designing a superior product May have special needs or requirements Usability, training, online help... Do not neglect interest groups Expert users, or with disabilities or handicaps Select users with care Different seniority Must speak with authority and be responsible and motivated Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 15 Stakeholder – Domain Expert Expert who knows the work involved Familiar with the problem that the software must solve. For example: Financial expert for finance management software Aeronautical engineers for air navigation systems Meteorologist for weather forecasting system, etc… Also knows the environment in which the product will be used Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 16 Stakeholder – Software Engineer Expert who knows the technology and process Determines if the project is technically and economically feasible Specifically estimates the cost and time of product development Educates the buyer/client on the latest and innovative hardware or software, and recommends new features that will benefit from these technologies Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 17 Stakeholder – Others Inspector An expert in governmental rules and safety relevant to the project Examples: safety inspectors, auditors, technical inspectors, government inspectors Market research specialist Can play the role of the customer if the software is developed for the general public Expert who has studied the market to determine trends and needs of potential customers Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 18 Stakeholder – Others Lawyer Familiar with laws and legal aspects Standards relevant to the project Expert of systems that interact with the system to be built Knows the interfaces of the interacting systems May be interested in product features (if the product can help the interacting system to perform its tasks) Others that bring added value People who will use your product as a basic building block Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 19 On Stakeholders Availability… Stakeholders are generally busy! Have priorities other than you Are rarely entirely disconnected from their daily routine and tasks See their participation in the elicitation process as a supplementary task Hence, you must have the support and commitment of managers (especially theirs!) You must also avoid being perceived as a threat: Loss of jobs caused by the improved system Loss of autonomy, powers, or privileges To the recognition and visibility of their work Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

Requirements Elicitation Tasks

SEG3101 (Fall 2014). Introduction to Requirements Elicitation Tasks Performed as Part of Elicitation (1) Planning for the elicitation Why? Who? When? How? Risks? During the elicitation Confirm the viability of the project (is it worth it?) Understand the problem from the perspective of each stakeholder Extract the essence of stakeholders’ requirements Invent better ways to do the work of the user Following the elicitation Analyse results to understand obtained information Negotiate a coherent set of requirements acceptable by all stakeholders and establish priorities Record results in the requirements specification Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems 21

SEG3101 (Fall 2014). Introduction to Requirements Elicitation Tasks Performed as Part of Elicitation (2) Repeat as needed Elicitation is incremental Driven by information obtained You always do a bit of elicitation – analysis – specification – verification at the same time Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems 22

SEG3101 (Fall 2014). Introduction to Requirements Elicitation Elicitation Plan – Objectives / Strategies & Processes Objectives: Why this elicitation? Validate market data Explore usage scenarios Develop a set of requirements, etc.. Set elicitation strategies and processes Approaches used Often a combination of approaches depending on the types and number of stakeholders Examples: Surveys (questionnaires)‏, workshops, interviews… Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems 23

SEG3101 (Fall 2014). Introduction to Requirements Elicitation Elicitation Plan – Products Usually set of rough requirements Written, audio, video notes Documentation Deliverables depend on objective and technique Generally: un-organized, redundant, incomplete Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems 24

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 25 Extract Essence Extract the essence of the stakeholders' requirements Interpret stakeholders' descriptions of requirements Possibly build models (may be part of your documentation!) Gaps in the model behavior may indicate unknown or ambiguous situations Models help focus our efforts Should be resolved by asking the stakeholders (especially users) Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation 26 Invent Better Ways Invent better ways to do the user's work Ask why documented requirements so far are desired The client/user’s view can be limited by past experiences... Brainstorm to invent requirements the stakeholders have not yet thought of Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems

SEG3101 (Fall 2014). Introduction to Requirements Elicitation Dilbert on Requirements Elicitation 27 Goals, Risks, and Challenges Sources of Requirements Requirements Elicitation Tasks Elicitation Problems