Requirements and Task Analysis. Please attend!! Duke Hutchings: “Window interfaces for multiple monitor systems”: next Monday 2/6, 9:30-11, room 154 student.

Slides:



Advertisements
Similar presentations
Requirements gathering
Advertisements

Chapter 4: Requirements Engineering
Use Case Diagrams Damian Gordon.
Use Case & Use Case Diagram
MIS 325 PSCJ. 2  Business processes can be quite complex  Process model: any abstract representation of a process  Process-modeling tools provide a.
IAT 334 Interface Design Task Analysis
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
User-Interface Design Process Lecture # 6 1Gabriel Spitz.
Interaction Diagrams Activity Diagram State Machine Diagram
Requirements Gathering and Expressing. Agenda Questions? Project update Requirements continued Project group formation.
Requirements Gathering & Expressing
Identifying Needs and Establishing Requirements John Thiesfeld Jeff Morton Josh Edwards.
Requirements and Task Analysis
Requirements: Gathering. Why  To understand what we are going to be doing  We build systems for others, not for ourselves  Requirements definition:
Requirements - Expressing Requirements analysis & its outcomes.
Task Analysis.
User Interface Design 2 Constructing an Interface for an ATM.
Task Analysis Analyzing and representing the activities of your users.
Principles and Methods
Preece Chapter 7.7 & Mc Cracken Chapter 3
Analyzing and representing the activities of your users
Requirements Gathering & Task Analysis – Part 1 of 5 Why, What and How – an Overview This material has been developed by Georgia Tech HCI faculty, and.
Task analysis 1 © Copyright De Montfort University 1998 All Rights Reserved Task Analysis Preece et al Chapter 7.
Identifying needs and establishing requirements. Overview The importance of requirements Different types of requirements Data gathering Task descriptions:Scenarios.
Requirements Gathering & Task Analysis – Part 5 of 5
Requirements Gathering
Requirements Gathering Methods for Requirements Gathering and Requirements Gathering.
Use Case Modeling. Use case diagram For each use case we develop  Object class diagram (with attributes only)  System sequence diagram (analysis) 
Requirements, cont. …and a word on Ethics. Project Part 1: Requirements Gather data using one or more techniques Learn about environment, users, tasks,
User Modeling Lecture # 5 Gabriel Spitz 1. User-Interface design - Steps/Goals.
Fall 2002CS/PSY Task Analysis Analyzing and describing how people do their jobs/work  -> Go to their environment Examine users’ tasks to better.
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.
Requirements Gathering. Why are requirements important? To understand what we are going to be doing We build systems for others, not for ourselves Requirements.
1www.id-book.com Identifying needs and establishing requirements Chapter 10.
Rational Unified Process (Part 1) CS3300 Fall 2015.
Software Waterfall Life Cycle Requirements Construction Design Testing Delivery and Installation Operations and Maintenance Concept Exploration Prototype.
Business Analysis and Essential Competencies
Prepared by Afra`a Sayah. Introduction. Weekly Tasks. Plane Phase. Analysis Phase. Design Phase. Report Rules. Conclusion. 2.
Requirements Elicitation. Who are the stakeholders in determining system requirements, and how does their viewpoint influence the process? How are non-technical.
10/12/ Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 1. Interviews & questionnaires.
Chapter 6 A Use-Case-Driven Process. 2 Definitions The choice of models and the choice of techniques used to express them have a significant impact on.
Requirements Gathering …along with Ethics. Agenda Questions? Project part 0 Requirements gathering Ethics.
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.
Identifying needs and establishing requirements What, how and why?
Requirements, cont. …along with Ethics. Agenda Questions? Data gathering techniques Requirements expressing Ethics.
1 Devon M. Simmonds University of North Carolina, Wilmington CSC450 Software Engineering WorkFlow Modeling with Activity Diagrams.
Rational Requirements Management with Use Cases v5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management with Use Cases.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
1 Objectives  Define key concepts of use-case modeling.  List the benefits of use-case modeling.  Find actors and use cases.  Describe their relationships.
Task Analysis …and we’ll really get to Ethics this time.
1 Lecture 5: (Ref. Chapter 7) Identifying Needs and Establishing Requirements.
User Interfaces 4 BTECH: IT WIKI PAGE:
1 Chapter 5 Modeling System Requirements Finding the Use Cases Page
Task analysis Chapter 5. By the end of this chapter you should be able to... Describe HTA and its features Explain the purpose of task analysis and modelling.
Task Analysis Overview, utility Types of task analysis Sources and use.
Design Process … and some design inspiration. Course ReCap To make you notice interfaces, good and bad – You’ll never look at doors the same way again.
User Modeling Lecture # 7 Gabriel Spitz 1. User Interface Design Process Gabriel Spitz 2 Needs Assessment Competitive Analysis Persona Develop Task Analysis/
Human Computer Interaction
Requirements specification Why is this the first major stage of software development? –Need to understand what customer wants first Goal of requirements.
Creating & Building the Web Site Week 8. Objectives Planning web site development Initiation of the project Analysis for web site development Designing.
Identifying Needs and Establishing Requirements Presenters: Veronica Gasca Jennifer Rhough.
Task Analysis Lecture # 8 Gabriel Spitz 1. Key Points  Task Analysis is a critical element of UI Design  It describes what is a user doing or will.
Task Analysis Lecture # 8 Gabriel Spitz 1. Key Points  Task Analysis is a critical element of UI Design  It specifies what functions the user will need.
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 Design and evaluation methods: Objectives n Design life cycle: HF input and neglect n Levels of system design: Going beyond the interface n Sources of.
Task Analysis – Input to Interaction
Using Use Case Diagrams
Task Analysis Analyzing and describing how people do their jobs/work
Human Computer Interaction Universitas Gunadarma
Presentation transcript:

Requirements and Task Analysis

Please attend!! Duke Hutchings: “Window interfaces for multiple monitor systems”: next Monday 2/6, 9:30-11, room 154 student meeting: 2/6 2-2:45, room 338 Jeff Nichols: “Automatically Generating High-Quality User Interfaces for Appliances” next Thursday 2/9 2- 3:30, room 356 student meeting: 2/10 1-1:45, room 338 George Chin: “Capturing, Representing, and Implementing Scientific Knowledge in Scientific Computing Environments”: 2/13 9:30-11, room 154 student meeting: 2/13 2-2:45, room 338 Celine Letulipe: “Symmetric Interaction Techniques”: 2/20 2-3:30, room 356 student meeting: 2/21 2:30-3:15, room 441

Project Part 1 reminder Due Feb. 16 (2 weeks!) by class time READ description and template Focus on the problem, not the solution Start gathering your data now! Ask for help and feedback Good communication skills are key And please spell and grammar check

Functional vs. NonFunctional Historically requirements Features, functions that the system should do Properties of the overall system “-ilities” ( quality, evolveability, flexibility, etc.) Environment User requirements Usability requirements

Not just “requirements” Overall goals, success criteria User characteristics Task analysis Environment – physical, social, technical Constraints Usability goals, criteria

User Characteristics: Recall Attitude, morale, willingness to change, motivation, reading level, typing skill, education, frequency of use, training, color- blindness, handedness, gender,… Novice, intermediate, expert System experience, task experience, computer literacy Cultural factors Uses of icons, colors, words, metaphors

Task Analysis Process of analyzing and documenting how people perform their jobs or activities Task-subtask decomposition Focus on: Activities Artifacts Relations More in a moment…

Physical Environment Amount of space to work Lighting levels / directions Noise level Temperature, humidity, dust… Standing / sitting Power availability Dangers Implications?

Technical Environment Computers/platforms for application Technology to interact with Networking Mobility Implications?

Social Environment How do users interact? Roles? How do users interact with others? Social implications of problem or solution? Interruption Privacy Implications?

Stakeholders Primary – targeted end users Secondary – receive output or provide input to system Tertiary – others directly receiving benefits from system success or failure Facilitating – design, development, maintenance

Stakeholder analysis Cell phone Bus stop kiosk Nuclear power plant control system

Typical Real-World Constraints Elapsed time to market Cost/effort to design and implement Size/footprint/weight/power/price Computer power/memory (related to cost and power Consistency with overall product line Backward compatibility Differentiation from competitive products

Usability Requirements Usability goals: such as learnability, consistency, robustness, etc. Ways to measure and judge success Time to complete key tasks - min, max Time to become proficient - do given set of tasks in given time Subjective satisfaction

Example What factors (environmental, user, usability) would affect the following systems? Self-service filling and payment system for a gas station On-board ship data analysis system for geologists searching for oil Fashion website for buying clothes

Example: bus stop kiosk User characteristics Context: Environment, types of users Constraints: device, market, etc. Functional requirements Non-functional requirements

How? Gather data Interviews, observation, surveys/questionnaires, documentation, immersion Organize data Notes, cards, brainstorming, computer tools Represent data Lists, outlines, matrices Narratives Hierarchies, Networks, Flow charts

Formative vs. Summative evaluation Summative assess an existing system judge if it meets some criteria Formative assess a system being designed gather input to inform design Summative or formative? Depends on maturity of system how evaluation results will be used Same technique can be used for either

(Not All) Requirements Gathering Methods Observation Thing out Loud & Cooperative Evaluation Interviews Questionnaires Focus groups Study Documentation Look at competitive products Ethnography Contextual Inquiry

Study Documentation Quick and easy if it exists Often describe how things should be done rather than how they are done Try to understand why not done “by the book” Alternative: interview domain expert

Look at Competitive Products Looking for both good and bad ideas Functionality UI style Possibly do user task performance metrics to establish bounds on your system

Ethnography Deeply contextual study Immerse oneself in situation you want to learn about (has anthropological and sociological roots) Observing people in their cultural context Behavior is meaningful only in context For UI designers: understand current methods, activities, environment, problems to aid design

Ethnography Things of interest to evaluator Structure and language used in work Individual and group actions Culture affecting work Explicit and implicit aspects of work Example: Office work environment Business practices, rooms, artifacts, work standards, relationships between workers, managers, …

Drawbacks of Ethnographic Methods Time required Can take weeks or months for large systems Scale Most use small numbers of participants just to keep somewhat manageable Type of results Highly qualitative, may be difficult to present/use Acquired skill – “learn by doing” Identifying and extracting “interesting” things is challenging

Contextual Inquiry Practical ethnographic-inspired method for requirements Master-apprentice relationship Watch and talk to customer as they do their work See: Beyer and Holtzblatt. Contextual Design. Morgan Kaufmann Publishers How compares to other methods?

Which Methods to Use? Self-service filling and payment system for a gas station On-board ship data analysis system for geologists searching for oil Fashion website for buying clothes at large department store

Making Sense Organize/categorize information “coding scheme” Card Sorting Affinity Diagrams Task analysis

Affinity Diagram - “Sorted Cards” From Interaction Design, Preece Rogers and Sharp

Task Analysis Focus on observable behaviors What are the practices, methods, steps, objects, …, used? Tasks & Subtasks Physical Cognitive Communication Conditions under which these tasks are done Results/outcomes of tasks Requirements to perform task Information, artifacts Communication with others Equipment Also see: Hackos and Redish, User and Task Analysis for Interface Design. Wiley Publishing.

Describing activities Scenarios Use Cases Task - subtask decomposition Includes sequencing information Workflow diagrams Flow charts ER or object models

Scenario Describe tasks and context in sentences Natural way of describing general idea Good for demonstrating specific problems, reasons behind actions, atypical activities Bad for representing branching, parallel activities, various possibilities of one activity

Scenario: Example 1 Its Friday afternoon and John just got paid. He wants to deposit his check immediately so he can pay his rent. He stops at one branch of his bank on the way home from work. He waits in his car while another person finishes using the ATM in front of the bank since it is drizzling outside. He walks up to the ATM to deposit his check. Only, as he is about to put the check into the envelope at the ATM, he realizes that he has not signed the back of it, and he has no pen and can not find one on or near the ATM machine. He cancels the transaction on the ATM, and enters the bank, which luckily is still open for 5 more minutes. He goes to the counter, finds a pen, and signs his check. He also fills out a deposit slip. He then waits to see a teller in person to deposit his check, and get money for the weekend.

Scenario: Example 2 Annie walks up to the ATM to deposit her weekly pay check. She puts her ATM card into the slot in the machine. She then enters her PIN number quickly, trying to block the person waiting behind her from viewing the keypad, and knows that she does not have to press “Enter” at this particular machine. She then chooses “Deposit” and “Check.” She enters the amount of the check using the keypad, then takes an envelope from the ATM machine, puts her check inside, seals the envelope and writes the amount of the check on the outside. She feeds the envelope into the slot into the ATM machine. She then selects “No other transactions” to finish, and waits to receive her receipt and ATM card.

Example Register for classes What kinds of activities could we write a scenario about? Let’s write one together

Use Case Description of a user’s goal in using a system Focuses on user-system interaction One path through a use case is sometimes called a scenario Often presented as a series of steps Diagram of actors and use cases

Use Case Diagram

Use Case example Arrange Meeting 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 s all the meeting participants informing them of them appointment

Hierarchical Task Analysis (HTA) Graphical notation & decomposition of tasks Goals – what the user wants to achieve Tasks – do these to achieve the goals Not necessarily computer related Sequential dependencies Multiple occurrences of tasks Subtasks – lower-level tasks Tasks organized into plans Clusters of subtasks with a preferred order and prerequisite conditions

From Interaction Design, Preece Rogers and Sharp Task Model - Borrow Book Sequences added as annotations Can also show hierarchy as indented text Goal Tasks to complete goal Subtasks to carry out one task

HTA: Types of Plans Fixed sequence Optional tasks Waiting events Cycles Time-sharing Discretionary

HTA

Example Goal: register for classes

Flow Charts Flow Chart of Task Steps Complete, can become complex Sequential flow, branching, parallel tasks. Includes actions, decisions, logic, by all elements of the system Mature, well-known, good tools for doing it

Flow Chart Example Start Continue? Document Input Display Manual Operation End Y N

Workflow Documents going from one person/organization to another Multiple participants in an activity

Create Travel Request (Traveler) Approval (Dean) Notification of Approval (Dean) Ensure Funds Available (Accounting) Notification of Approval (Dean) No Funds Make Trip (Traveler) Complete Expense Report (Traveler) Approval (Accounting) Etc Workflow Example - Document Flow

From Interaction Design, Preece Rogers and Sharp

Entity Relationship Diagrams Object Oriented Models Objects/people with links to related objects Stress relationship between objects and actions Links described functionally and in terms of strength About relations, not procedures Complements HTA & flow charts

Object Model: ATM Objects Account, ATM machine, ATM card, customer Relations Customer has one or more accounts ATM machine accesses account Actions on objects Account: deposit($), withdraw($), balance ATM machine: authenticate, dispense($), print receipt Etc

Your turn Create a scenario describing a CURRENT bus stop activity that would help describe requirements information for a bus stop kiosk Create an HTA of that same activity Create ER diagram of entities involved in that activity Is Workflow or Flow chart applicable?

Beyond Requirements Task analysis throughout life cycle: Describe and document design ideas Help design menu, dialog structure Help create documentation and help Task descriptions can be given at any necessary abstraction level

Summary Determine what data you need Gather it using various appropriate methods and techniques Represent the tasks and subtasks, plus other related information Use this data as basis for design Note: Be efficient!

Exercise: Movie Ticket Kiosk What data gathering techniques would you use? Who would you interact with? Who are the stakeholders? What are typical user characteristics? What is physical/social/technical environment? What is a typical scenario of use? What is an atypical or problem scenario? What would you represent using HTA? What could you represent using ER diagram? What could you represent using flowchart?