Identifying needs and establishing requirements Data gathering for requirements.

Slides:



Advertisements
Similar presentations
Session # 2 SWE 211 – Introduction to Software Engineering Lect. Amanullah Quadri 2. Fact Finding & Techniques.
Advertisements

Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 20 User Research.
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.
Saul Greenberg User Centered Design Why User Centered Design is important Approaches to User Centered Design.
Requirements Engineering, Daniela DamianGILD project -- Feb 5, 2003 GILD and requirements management Daniela Damian University of Victoria.
SWE Introduction to Software Engineering
CAP 252 Lecture Topic: Requirement Analysis Class Exercise: Use Cases.
Data gathering.
Evaluation J T Burns May 2004
Identifying Needs and Establishing Requirements John Thiesfeld Jeff Morton Josh Edwards.
User-Centered Design and Development Instructor: Franz J. Kurfess Computer Science Dept. Cal Poly San Luis Obispo FJK 2005.
Identifying needs and establishing requirements Chapter 7a.
Identifying needs and establishing requirements
Identifying needs and establishing requirements Chapter 7b.
User-centered approaches to interaction design. Overview Why involve users at all? What is a user-centered approach? Understanding users’ work —Coherence.
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.
ESTABLISHING REQUIREMENTS
Identifying needs and establishing requirements. Overview The importance of requirements Different types of requirements Data gathering Task descriptions:Scenarios.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes 1.
Identifying Needs and Establishing Requirements
CSCI 4163 / CSCI 6904 – Winter Housekeeping  Write a question/comment about today’s reading on the whiteboard (chocolate!)  Make sure to sign.
CS3205: Identifying needs and establishing requirements
Computer Science Department California Polytechnic State University San Luis Obispo, CA, U.S.A. Franz J. Kurfess CPE/CSC 484: User-Centered Design and.
Identifying needs and establishing requirements Chapter 10.
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.
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY User Studies Basic principles, methods, and examples Sari.
Chapter 10 Identifying needs and establishing requirements.
S556 SYSTEMS ANALYSIS & DESIGN Week 11. Creating a Vision (Solution) SLIS S556 2  Visioning:  Encourages you to think more systemically about your redesign.
Identifying needs and establishing requirements CS365 – HCI - Week 3.
Requirements Elicitation. Who are the stakeholders in determining system requirements, and how does their viewpoint influence the process? How are non-technical.
Gathering User Data IS 588 Dr. Dania Bilal Spring 2008.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Chapter 4 – Requirements Engineering Lecture 3 1Chapter 4 Requirements engineering.
Human Computer Interaction
Knowing What to Do: Constraints, Discoverability, and Feedback
Chapter 7 Identifying Needs and Establishing Requirements By: Wang, Miao Fan, Xiaona.
Team-Based Development ISYS321 Determining Object- Oriented Systems Requirements.
Innovative Interface Design  User Experience Goals  Usability Goals  Consistancy  Internal  External  Feedback  Constraints  Affordances.
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.
Requirements Engineering Requirements Elicitation Process Lecture-9.
Lecture 7: Requirements Engineering
IS2210: Systems Analysis and Systems Design and Change Twitter:
1 Lecture 5: (Ref. Chapter 7) Identifying Needs and Establishing Requirements.
CSCI 4163 / CSCI 6904 – Winter Housekeeping  Clarification about due date for reading comments/questions  Skills sheet  Active listening handout.
Identifying Needs and Establishing Requirements Sonal Kulkarni Veeresh Kinagi Abilash Kittanna Jamare Lane Chapter 7.
Requirements Engineering. Requirements engineering processes The processes used for RE vary widely depending on the application domain, the people involved.
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.
12-CRS-0106 REVISED 8 FEB 2013 CSG2C3/ Interaksi Manusia dan Komputer (IMK) TIM Dosen IMK USER CENTERED DESIGN KK SIDE 2/5/20161.
Lecture 4/2/16. Learning Objective Establishing requirements Define requirements Requirements discovery vs requirements gathering Classifying Requirements.
2 The importance of requirements Different types of requirements Data gathering for requirements Task descriptions:Scenarios Use Cases Essential use cases.
Requirements Elicitation CSCI 5801: Software Engineering.
GATHERING DATA Supplementary Note. What are requirements? A requirement is a statement about an intended product that specifies what it should do or how.
Cooper Goal-Directed Design: Practice Session Dr. Cindy Corritore Creighton University ITM 734 Fall 2005.
1 Requirements Analysis Lecture # Recap of Requirements Elicitation - 1 Requirements elicitation deals with discovering requirements for a software.
Fact Finding (Capturing Requirements) Systems Development.
1 International Institute of Business Analysis Vision: The world's leading association for Business Analysis professionals” Mission: To develop and maintain.
Identifying Needs and Establishing Requirements Kelly Kim Haimin Lee.
SNS College of Engineering Coimbatore
EKT 421 SOFTWARE ENGINEERING
Working with users, part 2
Identifying needs and establishing requirements
Chapter 19 Case study on requirements, design, and evaluation: NATS
User Studies Basic principles, methods, and examples
User-centered approaches to interaction design
THE PROCESS OF INTERACTION DESIGN
Presentation transcript:

Identifying needs and establishing requirements Data gathering for requirements

Some basic guidelines Focus on identifying the stakeholders’ needs Involve all the stakeholder groups Involve more than one representative from each stakeholder group Use a combination of data gathering techniques

Some basic guidelines Support the process with props such as prototypes and task descriptions Run a pilot session You will need to compromise on the data you collect and the analysis to be done, but before you can make sensible compromises, you need to know what you’d really like Consider carefully how to record the data

Data gathering for requirements Interviews: — Forum for talking to people — Structured, unstructured or semi-structured — Props, e.g. sample scenarios of use, prototypes, can be used in interviews — Good for exploring issues — But are time consuming and may be infeasible to visit everyone Focus groups: — Group interviews — Good at gaining a consensus view and/or highlighting areas of conflict — But can be dominated by individuals

Data gathering for requirements Questionnaires: — A series of questions designed to elicit specific information —Questions may require different kinds of answers: simple YES/NO; choice of pre-supplied answers; comment —Often used in conjunction with other techniques — Can give quantitative or qualitative data — Good for answering specific questions from a large, dispersed group of people Researching similar products: — Good for prompting requirements

Data gathering for requirements Direct observation: — Spend time with stakeholders in their day-to-day tasks, observing work as it happens —Gain insights into stakeholders’ tasks — Good for understanding the nature and context of the tasks — But, it requires time and commitment from a member of the design team, and it can result in a huge amount of data Indirect observation: — Not often used in requirements activity — Good for logging current tasks

Data gathering for requirements Studying documentation: — Procedures and rules are often written down in manuals — Good source of data about the steps involved in an activity, and any regulations governing a task — Not to be used in isolation — Good for understanding legislation, and getting background information — No stakeholder time, which is a limiting factor on the other techniques

Contextual Inquiry An approach to ethnographic study where user is expert, designer is apprentice A form of interview, but — at users’ workplace (workstation) — 2 to 3 hours long Four main principles: — Context: see workplace & what happens — Partnership: user and developer collaborate — Interpretation: observations interpreted by user and developer together — Focus: project focus to understand what to look for

Some examples The Living Box: Ethnographic interviews, focus groups with props, and questionnaires Future Technology Workshops: Interacting with images

Choosing between techniques Data gathering techniques differ in two ways: 1. Amount of time, level of detail andrisk associated with the findings 2. Knowledge the analyst requires The choice of technique is also affected by the kind of task to be studied: —Sequential steps or overlapping series of subtasks? —High or low, complex or simple information? —Task for a layman or a skilled practitioner?

Problems with data gathering (1) Identifying and involving stakeholders: users, managers, developers, customer reps?, union reps?, shareholders? Involving stakeholders: workshops, interviews, workplace studies, co-opt stakeholders onto the development team ‘Real’ users, not managers: traditionally a problem in software engineering, but better now

Problems with data gathering (2) Requirements management: version control, ownership Communication between parties: —within development team —with customer/user —between users… different parts of an organisation use different terminology Domain knowledge distributed and implicit: —difficult to dig up and understand —knowledge articulation: how do you walk? Availability of key people

Problems with data gathering (3) Political problems within the organisation Dominance of certain stakeholders Economic and business environment changes Balancing functional and usability demands

Summary The most commonly-used techniques for data gathering are: questionnaires, interviews, focus groups, direct observation, studying documentation and researching similar products