Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 GILD and requirements management Daniela Damian University of Victoria.

Slides:



Advertisements
Similar presentations
Lecture 5: Requirements Engineering
Advertisements

Data Gathering Purpose: –To collect sufficient, relevant and appropriate data to develop a set of stable requirements Data: –Tasks performed –Goals –Context.
ACTIVELY ENGAGING THE STAKEHOLDER IN DEFINING REQUIREMENTS FOR THE BUSINESS, THE STAKEHOLDER, SOLUTION OR TRANSITION Requirements Elicitation.
Requirements Analysis CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology January 7, 2003.
CAP 252 Lecture Topic: Requirement Analysis Class Exercise: Use Cases.
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh 1 Requirements.
Identifying Needs and Establishing Requirements John Thiesfeld Jeff Morton Josh Edwards.
Identifying needs and establishing requirements Chapter 7a.
Identifying needs and establishing requirements Chapter 7b.
SE 555 Software Requirements & Specification Requirements Validation.
Systems Analysis and Design in a Changing World, Fourth Edition
1 درس مهندسي نيازمندي استاد دكتر عبداله زاده دانشجو خيرالنسا مرچانت RE in The Year 00: A Research Perspective.
Part 2: Requirements Days 7, 9, 11, 13 Chapter 2: How to Gather Requirements: Some Techniques to Use Chapter 3: Finding Out about the Users and the Domain.
Requirements Specifications Today: Homework #1 due For next class: Pressman 11; SRD Team Status Reports Requirements Process (continued) Bio Break ( 5.
© Pearson Education Limited, Chapter 6 Fact-finding Transparencies.
Chapter 4: Beginning the Analysis: Investigating System Requirements
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.
Project Requirement Gathering: Recommended "Best" Practices Edward Kuligowski Bellevue University CIS 665 Click to Preview.
Identifying Needs and Establishing Requirements
Chapter 4: Beginning the Analysis: Investigating System Requirements
CS3205: Identifying needs and establishing requirements
Introduction to Systems Analysis and Design Trisha Cummings.
S/W Project Management
Introduction to SDLC: System Development Life Cycle Dr. Dania Bilal IS 582 Spring 2009.
1www.id-book.com Identifying needs and establishing requirements Chapter 10.
Advanced Topics in Requirement Engineering. Requirements Elicitation Elicit means to gather, acquire, extract, and obtain, etc. Requirements elicitation.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
ITEC224 Database Programming
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Requirements Engineering
Planning and Writing Your Documents Chapter 6. Start of the Project Start the project by knowing the software you will write about, but you should try.
 To describe the principal requirements engineering activities and their relationships  To introduce techniques for requirements elicitation and analysis.
1 CS 426 Senior Projects Chapter 3: The Requirements Workflow [Arlow & Neustadt, 2005] January 31, 2012.
CS305: Fall 2008 Identifying needs and establishing requirements Readings: 1) Chapter 10 of the ID-Book textbook 2) Chapter 2 from Task-Centered User Interface.
Requirements Engineering Requirements Elicitation Process Lecture-9.
System Analysis-Gathering Requirements.  System analysis is the process of gathering info about existing system, which may be computerized or not, while.
Lecture 7: Requirements Engineering
1 Requirements Management - General concepts - Noureddine Abbadeni King Saud University College of Computer and Information Sciences Based on “Software.
Introduction to Systems Analysis and Design
IS2210: Systems Analysis and Systems Design and Change Twitter:
Slide 1 Requirements Determination Chapter 5. Slide 2 Objectives ■ Understand how to create a requirements definition. ■ Become familiar with requirements.
Systems Life Cycle A2 Module Heathcote Ch.38.
Requirement Elicitation Process Lesson 3. Requirements Elicitation  Is the process to find out the requirements for an intended software system by communicating.
Systems Analysis and Design in a Changing World, Thursday, Feb 1.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Information Gathering Prototypes Structured Walkthrough.
12/10/15.  It is a Cross Life Cycle Activity (CLCA) that may be performed at any stage ◦ In fact, some part of it (e.g. risk analysis and management)
Writing Software Documentation A Task-Oriented Approach Thomas T. Barker Chapter 5: Analyzing Your Users Summary Cornelius Farrell Emily Werschay February.
Identifying Needs and Establishing Requirements Sonal Kulkarni Veeresh Kinagi Abilash Kittanna Jamare Lane Chapter 7.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
Systems Development Life Cycle
Identifying needs and establishing requirements Data gathering for requirements.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
©2011 1www.id-book.com Data Gathering Chapter 7. ©2011 Data Gathering What is data gathering? –The act of gathering data through a study The data can.
Requirements Engineering. Requirements engineering processes The processes used for RE vary widely depending on the application domain, the people involved.
Requirements Engineering Process
Identifying Needs and Establishing Requirements Presenters: Veronica Gasca Jennifer Rhough.
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)
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
Lecture 4/2/16. Learning Objective Establishing requirements Define requirements Requirements discovery vs requirements gathering Classifying Requirements.
Chapter 3: The Requirements Workflow [Arlow and Neustadt, 2005] CS 426 Senior Projects in Computer Science University of Nevada, Reno Department of Computer.
Requirements. Outline Definition Requirements Process Requirements Documentation Next Steps 1.
GATHERING DATA Supplementary Note. What are requirements? A requirement is a statement about an intended product that specifies what it should do or how.
1 Requirements Analysis Lecture # Recap of Requirements Elicitation - 1 Requirements elicitation deals with discovering requirements for a software.
Introduction to Software Requirement Engineering Nisa’ul Hafidhoh Teknik Informatika
Software Requirements analysis & specifications
Chapter 3: The Requirements Workflow
Requirements Validation – I
Presentation transcript:

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 GILD and requirements management Daniela Damian University of Victoria

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Outline What is requirements and the process of their “engineering” Goals and requirements, and our project What vs. How or Requirements vs. Design Requirements and project management -Activity phases -Practical considerations

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Requirements and their “engineering” in Software Engineering A requirement is a feature of the system or a description of something the system is capable of doing in order to fulfill the system’s purpose. Related to: Motivations, interests, goals, needs, wishes Different stakeholders in the project Requirements “engineering”: a complex phenomenon, little understood and often underestimated

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Our project – thought provokin Research endeavorSoftware development project Different stakeholders Goals Research questions Different stakeholders Software requirements Our Project Management Defining our goals Deriving software requirements to map these goals (rationale for work) Continually checking for progress re: goals and requirements

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Our project - Thought provoking

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Importance of getting it right Failures to understand and manage requirements is the biggest single cause of cost and schedule over-runs A study run by Standish Group: - surveyed 350 companies about their over 8000 software projects - results: 31% - canceled before they were completed; - only 9% were delivered on time and cost.

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Importance of getting it right Causes: incomplete requirements (13.1%) lack of user involvement (12.4%) lack of resources (10.6%) unrealistic expectations (9.9%) lack of executive support (9.3%) changing requirements and specifications (8.7%) lack of planning (8.1%) system no longer needed (7.5%)

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Requirements process and its activities

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Requirements management Activity phase: Elicitation/definition Analysis and modeling Negotiation Documentation/specification What you are actually doing Identify stakeholders Analyze the requirements gathered for ambiguities, completeness, inconsistencies, etc. Resolve conflicts (find trade-offs) Maintain a repository of requirements/issues/traceability links among all these

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 The What vs. How and the development life-cycle

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Establishing Requirements Aim: to make them as clear, specific and unambiguous as possible There are many different kinds of requirements Functional requirements -E.g. for a website: that the time to download any complete page is less than 5 seconds Non-functional -E.g. that the system runs on many platforms such as PC, Mac, Unix Data requirements -E.g. type, persistence, accuracy of data processed by the system Environmental requirements or context of use -E.g. ATMs operating in busy or public areas User requirements -E.g. system serves novices as well as experts users Usability requirements -E.g. efficiency, safety

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 “Requirements identification” techniques Questionnaires Interviews Focus groups and workshops Naturalistic observation Studying documentation

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Sources of requirements

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Questionnaires Closed-ended questionnaire Leaves no room for individual comments from the respondent Pre-set responses for each question Open-ended questionnaire Respondent replies to questions in their own words Combine closed-ended and open-ended questions

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Interviews Interviews tend to be one on one and only elicit one person’s perspective Interviews can be structured, unstructured or semi-structured depending on how rigorously the interviewer sticks to a prepared set of questions

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Focus Groups and Workshops Sessions with a group of stakeholders to discuss issues and requirements These sessions can be very structured with set topics for discussion, or can be unstructured Require a facilitator who can keep the discussion on track and provide focus and redirection when appropriate

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Naturalistic Observation Observation involves spending some time with the stakeholders as they go about their day-to-day tasks A member of the design team shadows a stakeholder, making notes, asking questions, and observing what is being done in the natural context of the activity

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Studying Documentation Manuals are a good source of data about the steps involved in an activity (e.g. Procedures and rules) Studying documentation is good for understanding legislation and getting some background information on the work It is an idealized account of the work practices

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Choosing among data gathering techniques USER GROUP SIZE / AVAILABILITY SmallLarge QuestionnairesFocus GroupsInterviews TYPE OF DATA NEEDED SpecificGeneral Questionnaires, Documentation Focus Groups, Naturalistic Observation Interviews Documentation Drawn by Polly Allen in Seng310, Spring 2003

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Choosing among data gathering techniques Focus on identifying the stakeholders’ needs Involve all the stakeholder groups Use a combination of data gathering techniques Support the data-gathering sessions with suitable props, such as task descriptions and prototypes if available Run a pilot session if possible to ensure that your data-gathering session is likely to go as planned

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Requirements management – practical considerations Requirements management == expectations management Safety (sanity) checks: define a minimal set of requirements feasible within project parameters define “meaningful” subsequent project artifacts e.g. design, tests, implementation keep track of progress/changes/coverage of requirements

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 Our project Research endeavorSoftware development project Different stakeholders Goals Research questions Different stakeholders Software requirements Our Project Management Defining our goals Deriving software requirements to map these goals (rationale for work) Continually checking for progress re: goals and requirements

Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003