BIO PRESENTATION T2 November 18, 2004 10 :00 AM U SING P ERSONAS TO I MPROVE T ESTING Robyn Edgar Microsoft International Conference On Software Testing Analysis & Review November 15-19, 2004 Anaheim, CA USA
Robyn Edgar Robyn Edgar is a Software Test Engineer Lead in the Business Solutions division of Microsoft. She began her career as a Technical Support Engineer with Great Plains Software, Inc. in June 1999. After Microsoft Corporation acquired Great Plains in April 2001, Robyn relocated to the Redmond, Washington to join the Great Plains Human Resources and Payroll testing team. Since joining the test discipline Robyn has achieved many accomplishments such as implementation of Microsoft best practices as well as becoming an ISTQB Certified Tester.
Using Personas to Improve Testing Robyn Edgar Software Test Lead Microsoft Corporation 1
Outline � Introduction � Definition & examples of a persona � How to implement personas � Limitations of personas � How to create persona based test cases � Examples of good bugs found with personas 2
Introduction – My Background � 5 years at Microsoft � 2 years in product support, 3 years in testing � ISTQB Certified Tester � This presentation is based on my experience, not years of research 3
Introduction – Learning Objectives � At the end of this talk you should understand: � Simple description of a persona � Why personas are useful in testing � How to write test cases using personas � How to write bugs based on persona test cases 4
What are personas and why do we need them? � Personas are “fake people” based on real data. � They are practical tools to help prioritize features, maintain focus on target customers, and provide a consistent view of the end user. � They are vehicles for bringing customer data alive. Read: “What’s right for the customer?” 5
Where do personas come from? � Personas are an extension of product planning and/or requirements. Ideally, they should be created before requirements are complete. � The persona should be used in the use case/user scenario in your requirements. � Each want or need of a persona should become a requirement. � Talk to your customers and write down their pain points. Turn these pain points into wants and needs for your personas. 6
What to do with the data � Personas need to be separate documentation from regular requirements but need to be included in your requirements. � Names are important, as are the roles the persona fills within a real company. � Create a web site for your personas so they are easy for everyone in your organization (requirements, development, testing) to find. 7
What’s in a persona? � Environment (sit in an office or cubical) � Work hours (8am – 5pm) � Quotes from customer interviews � Job title � Individual goals or job responsibilities � Daily/weekly/monthly activities “A day in the life” schedule � Pain points � Anything that affects how they use your product. 8
Persona Examples for an SUV 9
Sally “I just want to get my family there safely” � 5 feet 2 inches tall � Lives in North Dakota � Takes kids to school/daycare, runs errands over lunch, pickup kids and go home for the evening. � Takes long road trips to visit the in-laws � Married with 3 children � 1.5 years, 5 years, 8 years (Joey, Rachael, Ross) � Wants in a new vehicle: � Room for the family, DVD player, room for car seat, 4WD, AC, Block heater for cold winters 10
Jeff “I love the outdoors and having fun.” � 6 feet 4 inches tall � Lives in Washington state � Single, no children � Owns a boat � Goes out into the woods fishing and boating most weekends with his buddies � Wants in a new vehicle: � Towing package, good stereo, durable interior, moon roof, nice tires, scratch resistant 11
Test Cases for the SUV Sally � Can I fit 5 people (2 adults and 3 children) comfortably? � Can I access the DVD controls from the front seats as well as rear? � Is it easy to get in and out of? (side step?) � Is it easy for the kids to get into the 3 rd row of seats? � I’m short, can I reach the pedals? � Is the 4WD easy to operate? I don’t want to get out and lock the hubs 12
Sally cont. � Safety – What are the controls like on the power windows? Can the kids accidentally roll them up or down? Can I lock the windows so the kids don’t have control of them? 13
Test Cases for the SUV Jeff � I’m tall, can I fit in the driver’s or other seats comfortably? � How does it ride when towing? � How easy is it to clean mud from the interior mats? � Can I mount a CB in the SUV? � Can I fit all of my camping/boating/fishing supplies in the back? � Can I see around the back of the vehicle with my mirrors when towing? � How loud can I turn up the stereo? Can I add satellite radio? 14
Limitations of Personas � They don’t cover every user scenario. They are just a starting point. � They do not replace other types of testing methods, they enhance them. 15
Persona based test cases � Think like your persona! As the tester be the persona � Do they know a lot about your product or a little? � Are they fairly new to computers or a computer genius? � Are they visually impaired? 16
Persona based test cases, cont. � Use your persona’s name in your test cases. Write test scenarios on his/her behalf. � Jeff goes down a steep hill and rolls his SUV. Will the moon roof crack and spread glass? � Jeff is towing a boat over a mountain pass. Can he still drive 60 mph? � It’s 30 degrees below zero in North Dakota. Is it easy for Sally to find the plug cord to keep her engine from freezing? � Can Sally easily reach the DVD controls to adjust volume, frame forward, etc. for her children while driving? Was this designed so the controls are on the steering wheel so she can concentrate more easily on the road? 17
Persona based test cases, cont. � Your personas will see the same features in different ways. Use this to create multiple test cases for the same feature. � Jeff is tall. How well does the seat adjust for him? With the seat all of the way back does he still have enough leg room? � Sally isn’t tall. How well does the seat adjust for her? Can she fit Joey’s child seat behind it? Can she drive safely with the seat moved completely forward (i.e., still see the speedometer, reach the pedals, etc.) 18
Writing Bugs using Personas � Bug Title: A driver under 5’ 5” can’t reach the pedals � Description: Sally is only 5’ 2” tall. When sitting in the driver’s seat she is unable to reach the pedals, even with the seat moved completely forward. � Recommended Solution: The pedals need to be adjustable so they move toward the driver’s seat to accommodate the shorter drivers. 19
Writing Bugs using Personas, cont. � Bug Title: Moon roof glass can puncture the air bag � Description: Were the moon roof to shatter in a roll over the glass would puncture the air bag, therefore decreasing the safety to Jeff and his passengers. � Recommended solution: Recommend stronger glass in the moon roof or better material used to create the air bags so they are less prone to puncture. 20
Selling to the Team � Why is this hard? � Convincing your requirements personnel to create yet another document/type of requirement when they are already crunched on time can be difficult � Finding time to write new test cases based on personas can be difficult due to time constraints � You might just be duplicating existing test cases if you already have an extensive set 21
Selling to the Team � Convince them of what’s in it for them � Testers without direct customer knowledge will be more likely to think like the customer/persona when testing � Using personas to write bugs will result in customer centric bugs which are more likely to be fixed 22
Conclusions � A persona is a “fake person” based on real facts of users of your system. � Personas are useful in getting everyone to view the system from the end-user’s point-of- view. � Multiple test cases for the same feature can be written based on how each persona will use it. � Use your personas in your bug writing to convince the need to fix the defect. 23
QUESTIONS? 24
Recommend
More recommend