Identifying Needs and Establishing Requirements Presenters: Veronica Gasca Jennifer Rhough.

Slides:



Advertisements
Similar presentations
Data Gathering Purpose: –To collect sufficient, relevant and appropriate data to develop a set of stable requirements Data: –Tasks performed –Goals –Context.
Advertisements

Chapter 5 Understanding Requirements
ACTIVELY ENGAGING THE STAKEHOLDER IN DEFINING REQUIREMENTS FOR THE BUSINESS, THE STAKEHOLDER, SOLUTION OR TRANSITION Requirements Elicitation.
Conversation Form l One path through a use case that emphasizes interactions between an actor and the system l Can show optional and repeated actions l.
Identifying Needs and Establishing Requirements John Thiesfeld Jeff Morton Josh Edwards.
Identifying needs and establishing requirements Task Descriptions.
User-Centered Design and Development Instructor: Franz J. Kurfess Computer Science Dept. Cal Poly San Luis Obispo FJK 2005.
Task Analysis Analyzing and representing the activities of your users.
Analysis Concepts and Principles
Identifying needs and establishing requirements Chapter 7b.
Preece Chapter 7.7 & Mc Cracken Chapter 3
Analyzing and representing the activities of your users
Chapter 3 Preparing and Evaluating a Research Plan Gay and Airasian
ESTABLISHING REQUIREMENTS
Systems Analysis and Design
Fact-Finding Fact-Finding Overview
Identifying needs and establishing requirements. Overview The importance of requirements Different types of requirements Data gathering Task descriptions:Scenarios.
Requirements Gathering : Determining the scope of the system 1. Elicitiation – fact finding 2. Specification 3. Validation.
1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 2 Chapter 6 & 7 System.
Identifying Needs and Establishing Requirements
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 7 Requirements Engineering Software Engineering: A Practitioner’s Approach, 6/e Chapter.
CMSC 345 The Requirements Specification. Why do we need requirements Without the correct requirements, you cannot design or build the correct product,
Requirements II: Task Analysis. Objectives By the end of the class, you will be able to… Write detailed task descriptions to inform design. Create scenarios.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
CPSC 871 John D. McGregor Module 1 Session 2 Requirements Elicitation/analysis.
Advanced Topics in Requirement Engineering. Requirements Elicitation Elicit means to gather, acquire, extract, and obtain, etc. Requirements elicitation.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
IS 466 ADVANCED TOPICS IN INFORMATION SYSTEMS LECTURER : NOUF ALMUJALLY 22 – 10 – 2011 College Of Computer Science and Information, Information Systems.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
Chapter 10 Identifying needs and establishing requirements.
Identifying needs and establishing requirements CS365 – HCI - Week 3.
IS 466 ADVANCED TOPICS IN INFORMATION SYSTEMS LECTURER : NOUF ALMUJALLY 22 – 10 – 2011 College Of Computer Science and Information, Information Systems.
Chapter 7 Identifying Needs and Establishing Requirements By: Wang, Miao Fan, Xiaona.
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.
Ch 7 Identifying needs and establishing requirements Group 3: Lauren Sullivan Chris Moore Steven Pautz Jessica Herron.
Objectives By the end of the class, you will be able to… Describe typical users by using “personas” Write detailed task descriptions to inform design.
Lecture 7: Requirements Engineering
Task Analysis …and we’ll really get to Ethics this time.
1 Lecture 5: (Ref. Chapter 7) Identifying Needs and Establishing Requirements.
1 Chapter 5 Lecture 5: Understanding Requirements Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Use Case Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
INFO1002 Systems Modelling Lecture 10 Establishing User Requirements Department of information Systems.
Systems Development Life Cycle
By Germaine Cheung Hong Kong Computer Institute
Identifying needs and establishing requirements Data gathering for requirements.
McGraw-Hill/Irwin Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 4 Systems Requirements Determination.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
Chapter 6 Determining System Requirements. Objectives:  Describe interviewing options and develop interview plan.  Explain advantages and pitfalls of.
2/6/03C-1 © 2001 T. Horton CS 494 Object-Oriented Analysis & Design Requirements and Use Cases.
CS3205: Task Analysis and Techniques
Marketing Research Chapter 29. The Marketing Research Process The five steps that a business follows when conducting marketing research are: Defining.
Requirement Engineering
CS305: Spring 2008 Task Analysis and Techniques. Task Analysis Same as requirements analysis? –Focus on users, not on the proposed system –“Earlier” than.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Use Case Diagrams. Introduction In the previous Lecture, you saw a brief review of the nine UML diagrams. Now that you have the clear, you'll start to.
2 The importance of requirements Different types of requirements Data gathering for requirements Task descriptions:Scenarios Use Cases Essential use cases.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
GATHERING DATA Supplementary Note. What are requirements? A requirement is a statement about an intended product that specifies what it should do or how.
A focus group is actually gathering of people who are customers or users representatives for a product to gain its feedback. The feedback can be collected.
Identifying Needs and Establishing Requirements Kelly Kim Haimin Lee.
Pepper modifying Sommerville's Book slides
TIM 58 Chapter 3: Requirements Determination
ESTABLISHING REQUIREMENTS
THE BUSINESS ANALYSIS PROCESS MODEL
Software Requirements analysis & specifications
Chapter 5 Understanding Requirements
Chapter 5 Understanding Requirements
Chapter 5 Understanding Requirements.
Presentation transcript:

Identifying Needs and Establishing Requirements Presenters: Veronica Gasca Jennifer Rhough

Introduction: The whys User’s needs, requirements, aspirations, and expectations should be taken into consideration Rewards if established correctly Disadvantages if wrong or not done

Requirements Make it as clear, specific, and unambiguous as possible Abstract Web site should appeal to teenage girls Precise Search time for a query is less than 3 seconds Issue an auditory and visual alert when a download fails

Types of Requirements Functional Data (volatility, size, persistence, accuracy, value) User Usability Environment Physical Social Organizational Technical

Data Gathering Techniques Questionnaires Interviews Focus Groups/Workshops Naturalistic Observation Studying Documentation

Technique #1 Questionnaires Elicit specific information Needs to be written well Good for large groups of people, spread geographically Often used in conjunction with other techniques

Technique #2 Interviews In-person or phone Structured or Unstructured Good at getting people to explore issues More enjoyable Time consuming Not good for large groups of people

Technique #3 Focus Groups/Workshops Consensus view Highlights conflicts/disagreements Structured or facilitator mediated Strong personalities can dominate discussions

Technique #4 Naturalistic Observation Shadow day to day tasks More accurate, detailed descriptions Vary from outside to participant observation Time consuming Generates large amounts of data

Technique #5 Studying Documentation Background legislation Previous software

Which one? Time Experience of analyst Nature of task Other resource availability stakeholders

Some Tips Involve all stakeholders Use combo of techniques Obtain diversity Props/prototypes Run pilot data gathering sessions

Data Interpretation and Analysis Interpretation Goal: to structure and record descriptions of requirements. Start interpretation as soon after the gathering session as possible. Discuss the findings with others.

Requirements template (Volere, Atlantic Systems Guild): Requirement #: Unique IdRequirement Type: Template section Event/use case #: Origin of the requirement Description: A one-sentence statement of the intention of the requirement. Rationale: Why is the requirement considered important or necessary? Source: Who raised this requirement? Fit Criterion: A quantification of the requirement used to determine whether the solution meets the requirement. …

Techniques to understand users’ goals and tasks Task Description Task Analysis Scenarios Use Cases Essential Use Cases

Scenarios Scenario: Informal narrative description of human activities or tasks in a story that allows exploration and discussion of contexts, needs, and requirements. Concentrate on the human activity rather than interaction with technology.

Sample scenario Mary needs to send some documents to her boss, who is currently in France. She scans the documents and places the electronic copies into her working directory and then opens her application to send the information through electronic Mail. She creates a new memo and selects….

Advantages of using scenarios Scenarios help explain or discuss some aspect of the user’s goals. They can be used to imagine potential users of a device as well as to capture existing behavior. Capturing scenarios of existing behavior helps in determining new scenarios and hence gathering data for new requirements.

Use cases Also focus on user goals, but the emphasis here is on a user-system interaction rather than the user’s task itself. A use case is associated with an actor, and it is the actor’s goal in using the system that the use case wants to capture.

Creating use cases The main use case describes what is called the “normal course” through the use case To develop a use case: First, identify the actors (people or systems that will be interacting with the system under development). Examine these actors and identify their goals or goals in using the system. Each of these will be a use case.

Sample use case 1. The user chooses the option to arrange a meeting. 2. The system prompts user for the names of attendees. 3. The user types in a list of names. 4. The system checks that the list is valid. 5. The system prompts the user for meeting constraints. 6. The user types in meeting constraints. 7. … Alternative course: 5. If the list of people is invalid, display an error message and return to step 2.

Use case diagram Arrange a meeting

Essential use cases They represent abstractions from scenarios, and consist of: Name to express overall user intention Stepped description of user actions Stepped description of system responsibility Instead of actors, essential use cases are associated with user roles.

Sample essential use case User IntentionSystem responsibility Arrange a meeting request meeting attendees Identify meeting attendees Identify meeting constraints suggest potential dates …

Task analysis It’s used to analyze the underlying rationale and purpose of what people are doing. The most widely used version is known as HTA (Hierarchical Task Analysis) HTA involves breaking a task down into subtasks and then Into sub-subtasks And so on…. The starting point is a user goal

Sample task analysis 0. In order to arrange a meeting 1. compile a list of meeting attendees 2. compile a list of meeting constraints 3. f ind a suitable date 3.1 identify potential dates from departmental calendar 3.2 identify potential dates from each individual’s calendar 3.3 … 4. enter meeting into calendars …

For more information… Interaction Design (Preece, Rogers, Sharp) Chapter 7, Identifying needs and establishing requirements.