Requirements I Gathering Data with Users
Objectives By the end of this class you should be able to… • Explain the importance of involving users in requirements gathering • Describe various types of requirements • Choose data gathering techniques for a scenario and justify the choice • Gather data to establish requirements for an application and produce a simple list of requirements • Prepare your proposal for assignment 1.
What kinds of information should we gather? • Domain knowledge, users, user characteristics… • Tasks and task characteristics • Physical environment, social environment, organizational environment, availability of user support… • Usability goals, constraints, trade-offs…
Example: eBook • What information would you want to know about users? • What information might be irrelevant?
How can we gather data? • Observation • Live or video • Interview or focus group • Keystroke / mouse logging • Questionnaire What are the advantages / disadvantages of these methods?
Interviews & Questionnaires Questions should be • Simple • Unambiguous • Non-leading • Should not make any presumptions
Improve these questions I • Did you click that link because you thought it would go to the homepage? • How often do you read an online newspaper? 1 (Never) 2 3 4 5 (lots) • What online newspaper do you read? • When you are reading your online newspaper, do you read it in the morning, afternoon, or evening, and how long do you read it for?
Improve these questions II • Do you read paper newspapers? If yes, how often, for how long, and what sections do you read? • Why is the classified section better in online newspapers compared to paper newspapers?
Personas vs. The Usera pretend person who will mould themselves to fit your system Jessica a real person with real constraints trying to get her job done
Personas • Specific, imaginary examples of the real users they represent • Be as specific as possible • Give the person a name • Create several personas, at least one for each major type of user
Example persona for eBook Mary is an 18 year old first year English major. She has limited computer experience, but regularly uses a PC to contact friends using email or facebook. Mary reads many novels, often on the bus or in bed. She often writes notes in the margins. Although she really likes the format of paper books, Mary would like to use an eBook device because many digital books are free.
Example Persona for an ATM Felix is 13 years old. He gets an allowance every week but spends it out with his friends, and there is usually not anything left over to bank. He often gets money from his grandparents and uncles for his birthday and this is always deposited to his account. He saves this for more expensive purchases; for example, he likes to buy video games. Plus he likes to buy trendy clothes. Felix’s account allows him to withdraw small amounts of money from ATMs.
Homework (due at the beginning of next class) • Imagine you are designing a flight simulator for student pilots to practice flight activities. • Describe what methods you would use to gather more information about the users, tasks, and environment. Be specific about who you would involve and what you would do. Make sure you justify your choices. • Your answer should be approx. 400 words.
Key Points • Use a combination of methods to gather information • Consider all aspects of a system’s use (not just functionality) • Use personas to describe a system’s users.