Duke ECE 490L: How to Start New Ventures in Poornima Vijayashanker
Transcription
Duke ECE 490L: How to Start New Ventures in Poornima Vijayashanker
Duke ECE 490L: How to Start New Ventures in Electrical and Computer Engineering Poornima Vijayashanker poornima@femgineer.com Jeff Glass jeff.glass@duke.edu Akshay Raut ar118@duke.edu 1 Review • Customer Discovery • Mental Models • Customer Interviews Duke ECE 490L 2 Announcements • Quiz 1 results on Sakai - talk to TA: Akshay • Questions on Lab 2? Duke ECE 490L 3 Review Session: Wednesday October 23, 2013 DUHatch Idea Summary 4 Agenda • Stories to Features • Usability Testing • Paper Prototyping • Interaction Testing Duke ECE 490L 5 We’re gonna start building! Duke ECE 490L 6 Market Research Customer Discovery Early Adopter Pricing Product Distribution Validation Customer Creation Business/Company Formation Mainstream Adopters Money for Marketing Duke ECE 490L 7 Customer Discovery Validation Customer Creation Business/Company Formation Early Adopter Pricing Product Distribution Duke ECE 490L 8 We’ve conducted interview to test across various segments. Duke ECE 490L 9 Formed our Mental Models per segment or gotten rid of segments based on needs. Duke ECE 490L 10 Goals: validated problem AND understand the needs to bring clarity to design and product implementation. Duke ECE 490L 11 Collect feedback and categorize customers. Duke ECE 490L 12 1. Learn verbs of a customer 2. Create personas 3. Comb for tasks 4. Match personas to tasks 5. Look for patterns 6. Tasks become stories 7. Stories fit into features Duke ECE 490L 13 Everyone should understand personas! Duke ECE 490L 14 Everyone should comb for tasks! Duke ECE 490L 15 Tasks What customers do that you might want to design a solution for. Desire, Feelings, Characterizes level of need. Preference, Expectations Duke ECE 490L 16 Tasks Implied Task Third-Party Task Compound Tasks Vague Verbs Desire, Feelings, Preference, Expectations Quotes Philosophical Beliefs Duke ECE 490L 17 How can a compound task affect design? Duke ECE 490L 18 Steps. Duke ECE 490L 19 e.g. “When I take attendance if I see a student is expired, I notify them immediately.” Duke ECE 490L 20 What about a vague verb? Duke ECE 490L 21 e.g. “Read an attendance report.” Duke ECE 490L 22 Know how many students have come to particular classes. Duke ECE 490L 23 Once you’ve gotten clarity, you may need to add additional stories. Duke ECE 490L 24 Stories lead to features, which fit into product implementation. Duke ECE 490L 25 Tasks Desires, Preferences, Feelings, and Expectations Want to be able to take Take attendance for each class. attendance quickly. Type of Task Third party task. Enter new students. If we keep track of new students we can follow up with this later. High Level Task View history of attendance. If we can view the attendance history per student we’ll know who our best students are and who hasn’t come in awhile. High level task. Provide students with reports. If we provide students with reports they will know when they are about to expire, and hopefully renew their membership. High level task. Notify them of expired memberships. If we want to get paid on time, then we need to notify students of expired memberships. Third party task. Students need to pay. I want my students to pre-pay for classes so that I know I’m getting paid on time. I also want a way to automatically renew them. Implied task Duke ECE 490L 26 Tasks Desires, Preferences, Feelings, and Expectations Want to be able to take Take attendance for each class. attendance quickly. Enter new students. View history of attendance. Provide students with reports. If we keep track of new students we can follow up with this later. Stories As a yoga studio owner, I’d like to take attendance quickly before class to keep track of student’s memberships. As a yoga studio owner, I’d like to record information of new students as they come to my studio. If we can view the attendance history per As a yoga studio owner, I’d like to see a student we’ll know who our best students breakdown of when students attended AND I’d like to see an aggregate number are and who hasn’t come in awhile. of attendees. As a yoga studio owner, I’d like to send If we provide students with reports they students a report so they know when will know when they are about to expire, they’re about to expire AND will pay on and hopefully renew their membership. time. Notify them of expired memberships. If we want to get paid on time, then we need to notify students of expired memberships. As a yoga studio owner, I want to notify students the moment they expire, so that I will get paid on time. Students need to pay. I want my students to pre-pay for classes so that I know I’m getting paid on time. I also want a way to automatically renew them. As a yoga studio owner, I want all students to pre-pay for class packages AND I want to provide an option to do this automatically. Duke ECE 490L 27 If you’re limited on time or resources you’ll need to prioritize feedback to help pick stories to build. Duke ECE 490L 28 Tasks Take attendance for each class. Enter new students. View history of attendance. Provide students with reports. Notify them of expired memberships. Collect money from students. Desires, Preferences, Feelings, and Expectations Stories Want to be able to take attendance quickly. As a yoga studio owner, I’d like to take attendance quickly before class to keep track of student’s memberships. If we keep track of new students we can follow up with this later. As a yoga studio owner, I’d like to record information of new students as they come to my studio. If we can view the attendance history per As a yoga studio owner, I’d like to see a student we’ll know who our best students breakdown of when students attended AND I’d like to see an aggregate number are and who hasn’t come in awhile. of attendees. As a yoga studio owner, I’d like to send If we provide students with reports they students a report so they know when will know when they are about to expire, they’re about to expire AND will pay on and hopefully renew their membership. time. If we want to get paid on time, then we need to notify students of expired memberships. As a yoga studio owner, I want to notify students the moment they expire, so that I will get paid on time. I want my students to pre-pay for classes so that I know I’m getting paid on time. I also want a way to automatically renew them. As a yoga studio owner, I want all students to pre-pay for class packages AND I want to provide an option to do this automatically. Duke ECE 490L 29 Group tasks into patterns to understand connections. Duke ECE 490L 30 Think about mental spaces. Duke ECE 490L 31 Enter student info Take attendance Review Attendance Collect payment & record membership Review expired membership Notify students who are expired Are there pauses between these steps? Is there a chronological order? Is there a flow of data? Duke ECE 490L 32 Also need to model data. Duke ECE 490L 33 Enter student info Take attendance Review Attendance 1 2 3 Data Needed Student Info Package Purchased Expiration Date Packages Data Needed Class Info Student Attendance Duke ECE 490L 34 Go back and refine stories. Duke ECE 490L 35 As a yoga studio owner, I’d like to record the following information for new students: first name, last name, email, and address. Duke ECE 490L 36 More granular: As a yoga studio owner, if students do not provide me with a valid email address I’d like to be notified. Duke ECE 490L 37 Additional stories: As a yoga studio owner, I’d like to view invalid email addresses of students. As a BzB, I need to validate a student’s email address once it’s entered by a yoga studio owner. Duke ECE 490L 38 As a yoga studio owner, I’d like to take attendance for each class taught. Duke ECE 490L 39 More granular: As a yoga studio owner, when I’m taking attendance, I’d like to include the date, time, instructor name, and student who attended the class. Duke ECE 490L 40 Getting very granular helps avoid scope creep and conveys important design details. Duke ECE 490L 41 Now we need to implement these stories and collect feedback! Duke ECE 490L 42 Based on tasks we may have to test on various user segments. Duke ECE 490L 43 Data Technique Uses Preferences Opinions, likes, dislikes Survey Focus Group Mood Boards Preference Interview Customer Feedback Visual Design Branding Market Analysis Advertising Campaigns Evaluative What is understood or accomplished with a tool. Usability Test Log Analysis Search Analysis Customer Feedback Interaction Functionality Screen Layout Nomenclature Information Architecture Generative Mental environment in which things get done Non-Directed Interview Mental Model Diary Ethnography Contextual Inquiry Navigation & Flow Interaction Design Alignment & Gap Analysis Contextual Marketing Duke ECE 490L 44 Paper Prototyping. Supplemental Reading: Paper Prototyping Duke ECE 490L 45 What is paper prototyping? Duke ECE 490L 46 Paper prototyping is a variation of usability testing where representative users perform realistic tasks by interacting with paper version of the interface that is manipulated by a person. Duke ECE 490L 47 Why paper? Duke ECE 490L 48 Benefits of Paper • Quickly & cheaply iterate • Avoid opinion wars • Focus on workflow • “Please take attendance” • System • agnostic “I don’t know how to use a Mac...?!” • Validate stories Duke ECE 490L 49 How to design an interface on paper? Duke ECE 490L 50 Structure • Define • design elements consistent scheme for buttons, links, etc. • “Interactions” can lead to additional pages of paper • Doesn’t have to be to spec but dimensions should be close • mobile v. web Duke ECE 490L 51 Usability Testing with Paper • Sample design with interaction. • How to do a usability test & key things to keep in mind. • How to convert design and feedback from users into stories. Duke ECE 490L 52 Set Goals for What You Are Testing • Copy • Is the design clear? • What is missing? Duke ECE 490L 53 Conducting a Usability Test Explain the product. Set expectations. What you are testing. Make them comfortable. What are you testing. Thank them for their time. Setup a follow up. How they are helping. Duke ECE 490L 54 Demo. Duke ECE 490L 55 Collect feedback and do another iteration! Duke ECE 490L 56 Interaction Testing Duke ECE 490L 57 Goal: to validate workflows and data flows. Duke ECE 490L 58 Demo. Duke ECE 490L 59 Tools • Balsamiq: wireframes • Invision: share wireframes with teams to collaborate • Verify: scaling user testing Duke ECE 490L 60 Review • Stories to Features • Usability Testing • Closing Customers Duke ECE 490L 61