Identifying User Needs and Establishing Requirements.

Similar documents
PROCESS USE CASES: USE CASES IDENTIFICATION

Different Requirements Gathering Techniques and Issues. Javaria Mushtaq

IBM Software Group. Mastering Requirements Management with Use Cases Module 6: Define the System

Unit 7 Data analysis and design

OCR LEVEL 3 CAMBRIDGE TECHNICAL

CONCEPT MAPS AS A DEVICE FOR LEARNING DATABASE CONCEPTS

Pragmatic Use Case Writing

A Context-Driven Use Case Creation Process for Specifying Automotive Driver Assistance Systems

Utilizing Soft System Methodology to Increase Productivity of Shell Fabrication Sushant Sudheer Takekar 1 Dr. D.N. Raut 2

Knowledge Elicitation Tool Classification. Janet E. Burge. Artificial Intelligence Research Group. Worcester Polytechnic Institute

ECE-492 SENIOR ADVANCED DESIGN PROJECT

Implementing a tool to Support KAOS-Beta Process Model Using EPF

Specification of the Verity Learning Companion and Self-Assessment Tool

AGENDA LEARNING THEORIES LEARNING THEORIES. Advanced Learning Theories 2/22/2016

What is PDE? Research Report. Paul Nichols

Information DUT

On Human Computer Interaction, HCI. Dr. Saif al Zahir Electrical and Computer Engineering Department UBC

Visual CP Representation of Knowledge

Generating Test Cases From Use Cases

Deploying Agile Practices in Organizations: A Case Study

DSTO WTOIBUT10N STATEMENT A

Abstractions and the Brain

CEFR Overall Illustrative English Proficiency Scales

PAST EXPERIENCE AS COORDINATION ENABLER IN EXTREME ENVIRONMENT: THE CASE OF THE FRENCH AIR FORCE AEROBATIC TEAM

The Common European Framework of Reference for Languages p. 58 to p. 82

Conceptual Framework: Presentation

With guidance, use images of a relevant/suggested. Research a

Specification and Evaluation of Machine Translation Toy Systems - Criteria for laboratory assignments

P. Belsis, C. Sgouropoulou, K. Sfikas, G. Pantziou, C. Skourlas, J. Varnas

Ministry of Education, Republic of Palau Executive Summary

PRODUCT COMPLEXITY: A NEW MODELLING COURSE IN THE INDUSTRIAL DESIGN PROGRAM AT THE UNIVERSITY OF TWENTE

Maximizing Learning Through Course Alignment and Experience with Different Types of Knowledge

Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining

Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining

Practice Examination IREB

MSW POLICY, PLANNING & ADMINISTRATION (PP&A) CONCENTRATION

DICTE PLATFORM: AN INPUT TO COLLABORATION AND KNOWLEDGE SHARING

Higher education is becoming a major driver of economic competitiveness

Major Milestones, Team Activities, and Individual Deliverables

An Introduction to Simio for Beginners

Sample from: 'State Studies' Product code: STP550 The entire product is available for purchase at STORYPATH.

Is operations research really research?

VII Medici Summer School, May 31 st - June 5 th, 2015

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

Notes on The Sciences of the Artificial Adapted from a shorter document written for course (Deciding What to Design) 1

What is Thinking (Cognition)?

and secondary sources, attending to such features as the date and origin of the information.

Unpacking a Standard: Making Dinner with Student Differences in Mind

Visit us at:

Activities, Exercises, Assignments Copyright 2009 Cem Kaner 1

Use of CIM in AEP Enterprise Architecture. Randy Lowe Director, Enterprise Architecture October 24, 2012

A CASE STUDY FOR THE SYSTEMS APPROACH FOR DEVELOPING CURRICULA DON T THROW OUT THE BABY WITH THE BATH WATER. Dr. Anthony A.

Litterature review of Soft Systems Methodology

MULTIDISCIPLINARY TEAM COMMUNICATION THROUGH VISUAL REPRESENTATIONS

Self Study Report Computer Science

Arizona s English Language Arts Standards th Grade ARIZONA DEPARTMENT OF EDUCATION HIGH ACADEMIC STANDARDS FOR STUDENTS

Engineers and Engineering Brand Monitor 2015

TU-E2090 Research Assignment in Operations Management and Services

Towards a Collaboration Framework for Selection of ICT Tools

A Pipelined Approach for Iterative Software Process Model

Myers-Briggs Type Indicator Team Report

EOSC Governance Development Forum 4 May 2017 Per Öster

The Teaching and Learning Center

Improving the impact of development projects in Sub-Saharan Africa through increased UK/Brazil cooperation and partnerships Held in Brasilia

DG 17: The changing nature and roles of mathematics textbooks: Form, use, access

Indiana Collaborative for Project Based Learning. PBL Certification Process

MARKETING FOR THE BOP WORKSHOP

The IDN Variant Issues Project: A Study of Issues Related to the Delegation of IDN Variant TLDs. 20 April 2011

CPS122 Lecture: Identifying Responsibilities; CRC Cards. 1. To show how to use CRC cards to identify objects and find responsibilities

Designing a Rubric to Assess the Modelling Phase of Student Design Projects in Upper Year Engineering Courses

3. Improving Weather and Emergency Management Messaging: The Tulsa Weather Message Experiment. Arizona State University

Evidence-based Practice: A Workshop for Training Adult Basic Education, TANF and One Stop Practitioners and Program Administrators

Observing Teachers: The Mathematics Pedagogy of Quebec Francophone and Anglophone Teachers

IST 649: Human Interaction with Computers

Preparing a Research Proposal

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

Unit purpose and aim. Level: 3 Sub-level: Unit 315 Credit value: 6 Guided learning hours: 50

EDIT 576 DL1 (2 credits) Mobile Learning and Applications Fall Semester 2014 August 25 October 12, 2014 Fully Online Course

The Political Engagement Activity Student Guide

LEt s GO! Workshop Creativity with Mockups of Locations

Guidelines for the Use of the Continuing Education Unit (CEU)

PUPIL PREMIUM POLICY

5. UPPER INTERMEDIATE

Learning Disabilities and Educational Research 1

Strategic Practice: Career Practitioner Case Study

Evidence for Reliability, Validity and Learning Effectiveness

HARPER ADAMS UNIVERSITY Programme Specification

EPA RESOURCE KIT: EPA RESEARCH Report Series No. 131 BRIDGING THE GAP BETWEEN SCIENCE AND POLICY

SOFTWARE EVALUATION TOOL

A Coding System for Dynamic Topic Analysis: A Computer-Mediated Discourse Analysis Technique

The Use of Statistical, Computational and Modelling Tools in Higher Learning Institutions: A Case Study of the University of Dodoma

TCH_LRN 531 Frameworks for Research in Mathematics and Science Education (3 Credits)

Introduction. 1. Evidence-informed teaching Prelude

Volunteer State Community College Strategic Plan,

Stakeholder Debate: Wind Energy

An Industrial Technologist s Core Knowledge: Web-based Strategy for Defining Our Discipline

Kristin Moser. Sherry Woosley, Ph.D. University of Northern Iowa EBI

CPS122 Lecture: Identifying Responsibilities; CRC Cards. 1. To show how to use CRC cards to identify objects and find responsibilities

Automating the E-learning Personalization

Scoring Guide for Candidates For retake candidates who began the Certification process in and earlier.

Transcription:

Identifying User Needs and Establishing Requirements. Interaction Design, Chapter 7 Tempe Kraus Yongjie Zheng October 30, 2007

Outline What are we trying to achieve? Identifying needs and establishing requirements Categories of requirements Data gathering techniques Choosing between data gathering techniques Data gathering guidelines Data interpretation and analysis Task description and analysis Scenarios, use cases, essential use cases and task analysis Summary Additional References 2

In the beginning... What are we trying to achieve? Identifying needs: Understand as much as possible about the users, as well as their work and the context of their work. System under development should support users in achieving their goals. Identifying needs is crucial to our next step. Establishing requirements: Building upon the needs identified, produce a set of requirements. A user-centered approached to development: Study that investigated the causes of IT project failure found that requirements definition was the most frequently cited project stage that caused failure. Understanding what the product should do and making sure it meets the stakeholders needs are absolutely critical to the success of the product. 3

What are requirements? A requirement is a statement that specifies what an intended product should do, or how it should perform. Traditionally, two types of requirements: Functional requirements specify what the system should do. Non-Functional requirements specify what constraints there are on the system or its development. Interaction design requires us to understand both the functionality required and the constraints for development or operation of the product. Let s refine these two broad types into further categories. 4

Categories of requirements Category Functional requirements Description What the product should do. Data requirements Environmental requirements The type, volatility, size/amount, persistence, accuracy and value of the amounts of the required data. Or context of use circumstances in which the interactive product must operate. User requirements Characteristics of the intended user group. Usability requirements The usability goals and associated measures. Source: Interaction Design, ch. 7 5

Data gathering Overview of data gathering techniques used in the requirements activity Technique Good for Kind of data Advantages Disadvantages Questionnaires Answering specific questions Quantitative and qualitative data Can reach many people with low resource Design is crucial and response rate may be low. Responses may not be useful. Interviews Exploring issues Some quantitative but mostly qualitative data Interviewer can guide interviewee if necessary. Encourages contact between developers and users. Time consuming. Artificial environment may intimidate interviewee. Focus groups and workshops Collecting multiple viewpoints Some quantitative but mostly qualitative data Highlights areas of consensus and conflict. Encourages contact between developers and users. Possibility of dominant characters Naturalistic observation Understanding context of user activity Qualitative Observing actual work gives insights that other techniques can t give Very time consuming. Huge amounts of data. Studying documentation Learning about procedures, regulations and standards Quantitative No time commitment from users required Day-to-day working will differ from documented procedures Source: Interaction Design, ch. 7 6

Choosing between data gathering techniques Your choice is influenced by a number of factors. The kind of information you want. May also change depending on the stage of the project. The resources available to you. E.g., your project may not have the time, money or personnel to send out a nationwide survey. The location and accessibility of stakeholders. You may want to run a workshop for a large group of stakeholders, but could be prohibited by geography. 7

Choosing between data gathering techniques, continued Two main issues to consider when making your choice: The nature of the data gathering technique itself. The task which is to be studied. Data gathering techniques differ in the following: The amount of time they take, level of detail and risk associated with the findings. The knowledge the analyst must have about basic cognitive processes. Tasks can be classified along three scales: Is the task a set of sequential steps or is it a rapidly overlapping series of subtasks? Does the task involve high information content with complex visual displays, or low information content, where simple signals are enough to alert the user? Is the task intended to be performed by a laymen with minimal training, or a practitioner highly skilled in the task domain? Example: the design of an ATM vs. the design of a system to support back-room workers at a bank who are reconciling the machine register with the customers deposit slip. 8

Basic data gathering 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. Support the data-gathering sessions with suitable props. Run a pilot session if possible, to work out any kinks. Understand what you are really looking for (though compromise may be needed). Carefully consider the means used to record the data during a face-to-face data gathering session. 9

Data interpretation and analysis Once you have gathered your data, you will need to interpret and analyze it. Start interpretation and analysis as soon after the gathering session as possible. Interpreting data: Begin structuring and recording descriptions of requirements. Capture information in documents and diagrams. This helps to keep track of context and usage information during the rest of the process. Analyzing data: Data-flow diagrams, state charts, work-flow charts, etc. For object-oriented approaches, can use class diagrams, sequence diagrams, etc. Requirements activity iterates numerous times before stable requirements evolve. Continued interpretation and analysis throughout the process will result in a deeper understanding as well as clarification of the requirements. We will focus on four techniques that have a user-centered focus and are intended to understand the users goals and tasks. 10

Task description and analysis User-centered task descriptions are created to understand users goals and tasks. Scenarios Use cases Essential use cases Task analysis Methodology for each: Description Advantages Limitations How to develop Example: The shared calendar application System-centered descriptions are used to communicate precise information with developers. 11

Task description and analysis, continued Scenarios Description Describes human activities or tasks in a story that allows exploration and discussion of contexts, needs, and requirements. Advantages Telling a story is a natural way for people to explain what they are doing or how to achieve something. It also allows us to identify the stakeholders and the products involved in the activity. Limitations More focused on task characteristics than the detail of interface design and layout. [2] To Develop Focus on what users are trying to achieve. 12

Task description and analysis, continued Scenarios: the shared calendar example Source: Interaction Design, ch. 7 13

Task description and analysis, continued Use Cases Description The main emphasis is on user-system interaction, but also user goals. Advantages It is easy to grasp key features in the user-system interaction activities. Limitations Traditional use cases contain certain assumptions, including that there is a piece of technology to interact with, and the kind of interaction to be designed. To Develop Identify the actors, then examine these actors and identify their goal or goals in using the system. 14

Task description and analysis, continued Use cases: the shared calendar example 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. The system searches the calendars for a date that satisfies the constraints 8. The system displays a list of potential dates 9. The user chooses one of the dates 10. The system writes the meeting into the calendar 11. The system emails all the meeting participants informing them for the appointment Alternative courses: 5. If the list of people is invalid 5.1 The system displays an error message 5.2 The system returns to step 2 8. If no potential dates are found 8.1 The system displays a suitable message 8.2 The system returns to step 5 15 Source: Interaction Design, ch. 7

Task description and analysis, continued Essential Use Cases Description A structured narrative consisting of three parts: a name that expresses the overall user intention, a stepped description of user actions, and a stepped description of system responsibilities. Advantages Represents a more general case than a scenario embodies, and tries to avoid the assumptions of a traditional use case. Limitations Difficult to capture concrete and specific activities while maintaining the generality required. To Develop Identify user roles, then examine these roles and identify the users goal or goals in using the system. 16

Task description and analysis, continued Essential use cases: the shared calendar example Source: Interaction Design, ch. 7 17

Task description and analysis, continued Task Analysis Description Used to analyze the underlying rationale and purpose of what people are doing: what are they trying to achieve, why are they trying to achieve it, and how are they going about it, e.g. Hierarchical Task Analysis (HTA) & GOMS. Advantages Task analysis establishes a foundation of existing practices on which to build new requirements or to design new tasks. Limitations In the hands of inexperienced practitioners, too much level of detail may be entered into; for systems with diffuse objectives, time may be wasted by attempting to apply task analysis to intractable material. [2] To Develop Break a task down into subtasks and then into sub-subtasks and so on. 18

Task description and analysis, continued Task analysis: the shared calendar example (1 text form) 19 Source: Interaction Design, ch. 7

Task description and analysis, continued Task analysis: the shared calendar example (2 diagram form) Source: Interaction Design, ch. 7 20

Task description and analysis, continued Developers-centered descriptions: more formal, more specialized [4] Entity-Relationship diagrams Class diagrams Ontologies Goals Finite State Machines 21

Summary Getting the requirements right is crucial to the success of the interactive product. There are different types of requirements: Functional, data, environmental, user and usability. Every system will have requirements under each of these headings. Most commonly used data-gathering techniques for establishing requirements include: Questionnaires, interviews, workshops or focus groups, naturalistic observation, and studying documentation. Describing user tasks such as scenarios, use cases and essential use cases can help to articulate existing user work practices. They also help to express envisioned use for new devices. Task analysis techniques help to investigate an existing situation, i.e. existing systems and current practices. 22

Additional References 1. Sommerville, Ian; Software Engineering, Sixth Edition; Addison-Wesley, Boston, MA (2000). 2. Scenario Building, http://www.ucc.ie/hfrg/projects/respect/urmethods/scenario.htm 3. Schneiderman, Ben and Plaisant, Catherine; Designing the User Interface, Fourth Edition; Addison-Wesley, Boston, MA (2005). 4. van Vliet, Hans; Software Engineering: Principles and Practice, First Edition; John Wiley & Sons, Ltd (2000). 23

24