Rapid Iterative Design (RID):A Minimalist Approach to Requirements-    Gathering and Interface Design     for Agile Softwa...
[Rapid] [Iterative] Design (RID):A [Minimalist] Approach to Requirements-Gathering               and Interface Design     ...
[Rapid] [Iterative] [Minimalist] [Agile]    You – Agile software developer    Goal – Define product                       ...
Rapid Iterative DesignVision                        Personas            Paper                                      Scenari...
Where is the customer?                                                                                             How can...
What does our customer need?                                                                     Software that Works!http:...
How much is enough?                                                 Just Enough,                                          ...
Traditional Software Development       College of Arts and Sciences | Technology Services | Web and Data Solutions
Collaboration is the Key“The problem with abstractions (like reports and documents)     is that they create illusions of a...
Something Real Right AwayVision                         Personas             Paper                                       S...
PersonasWhat is it?• Representative users• Become “members” of your team• Behaviors, skills, experience,  attitudes, demog...
A Real PersonaJen, GEC Academic Advisor                                    Goal: “I’m busy. I have a lot of               ...
ScenariosWhat is it?• Narratives of real situations  your personas will find  themselves inWhy do it?• Elicit business rul...
A Real ScenarioJen, GEC Academic Advisor                                      Goal: “I’m busy. I have a lot of            ...
A Real ScenarioJen, GEC Academic Advisor                                    Goal: “I’m busy. I have a lot of              ...
User StoriesWhat is it?• Short statements of functionality written by  the user• Focus on “what,” not “how”Why do it?• Pla...
Real User Stories         As a <persona>, I want to <task>, so that <business goal>.                                      ...
Rapid Iterative DesignVision                        Personas            Paper                                      Scenari...
Paper PrototypingWhat is it?• More than a sketch!• Build the system with paper• End user simulates task  completionWhy do ...
Ingeping89 (Inge Nahuis, Netherlands)    http://www.youtube.com/watch?v=AtfWM2jRS2wCollege of Arts and Sciences | Technolo...
A Real Paper Prototype  College of Arts and Sciences | Technology Services | Web and Data Solutions
A Real Paper Prototype  College of Arts and Sciences | Technology Services | Web and Data Solutions
A Real Paper Prototype  College of Arts and Sciences | Technology Services | Web and Data Solutions
The Real SystemCollege of Arts and Sciences | Technology Services | Web and Data Solutions
The Real SystemCollege of Arts and Sciences | Technology Services | Web and Data Solutions
How much is enough?                                                 Just Enough,                                          ...
Final ThoughtsValue working software over excessivedocumentationGet to something real, real quickStay focused on your cust...
Resources & AcknowledgmentsRework Jason Fried and David Heinemeier HanssonAbout Face 3 Alan CooperUser Stories Applied Mik...
Upcoming SlideShare
Loading in...5
×

Rapid Iterative Design: A Minimalist Approach to Requirements-Gathering and Interface Design for Agile Software Developers

1,258

Published on

Mary Beth Snapp, Ohio State University, Presented at HighEdWeb, Cincinnati, Ohio, 2010

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,258
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Abstract:A priority for developers practicing agile software development is to re-evaluate the role of documentation in the software development lifecycle. On many traditional software development projects, the outcome of the analysis and design phases is a lengthy technical specifications document which is turned over to the developers with the charge, “build this.” In reality, adhering to “the plan” rarely happens, because life is not static--the plan changes as new information is revealed. Hence, agile developers place a lot of value on continuous face-to-face communication with the customer, iterative development, and minimalist documentation. We seek lightweight development techniques, so that we spend the bulk of our time on writing software, not writing documents. This presentation will detail how our team has combined four simple techniques—1) task-based scenarios, 2) personas, 3) user stories and 4) paper prototyping--into an agile approach for gathering requirements and designing interfaces for custom applications. The primary advantage of this approach is that it is very light-weight: functional requirements can be generated very quickly, so that coding can begin earlier in the project. The deliverables are essentially stacks of sticky notes and hand-drawn sketches of interfaces. That’s it!
  • Abstract:A priority for developers practicing agile software development is to re-evaluate the role of documentation in the software development lifecycle. On many traditional software development projects, the outcome of the analysis and design phases is a lengthy technical specifications document which is turned over to the developers with the charge, “build this.” In reality, adhering to “the plan” rarely happens, because life is not static--the plan changes as new information is revealed. Hence, agile developers place a lot of value on continuous face-to-face communication with the customer, iterative development, and minimalist documentation. We seek lightweight development techniques, so that we spend the bulk of our time on writing software, not writing documents. This presentation will detail how our team has combined four simple techniques—1) task-based scenarios, 2) personas, 3) user stories and 4) paper prototyping--into an agile approach for gathering requirements and designing interfaces for custom applications. The primary advantage of this approach is that it is very light-weight: functional requirements can be generated very quickly, so that coding can begin earlier in the project. The deliverables are essentially stacks of sticky notes and hand-drawn sketches of interfaces. That’s it!
  • Rapid Iterative Design: A Minimalist Approach to Requirements-Gathering and Interface Design for Agile Software Developers

    1. 1. Rapid Iterative Design (RID):A Minimalist Approach to Requirements- Gathering and Interface Design for Agile Software Developers HighEdWeb 2010 October 11, 2010 | Cincinnati, Ohio Beth Snapp (snapp.6@osu.edu) College of Arts and Sciences | Technology Services | Web and Data Solutions
    2. 2. [Rapid] [Iterative] Design (RID):A [Minimalist] Approach to Requirements-Gathering and Interface Design for [Agile] Software Developers HighEdWeb 2010 October 11, 2010 | Cincinnati, Ohio Beth Snapp (snapp.6@osu.edu) College of Arts and Sciences | Technology Services | Web and Data Solutions
    3. 3. [Rapid] [Iterative] [Minimalist] [Agile] You – Agile software developer Goal – Define product Rapid Speed – Very quickly Iterative Methods – Simple Design* Project – Iteration-friendly *Or, how to spend more time writing software and less time writing documents College of Arts and Sciences | Technology Services | Web and Data Solutions
    4. 4. Rapid Iterative DesignVision Personas Paper Scenarios Prototyping User Stories Develop- ment
    5. 5. Where is the customer? How can I get R.I.D.We are evaluated on of some of these documents?whether we havedelivered somethingthat helps our customersmeet their goals. College of Arts and Sciences | Technology Services | Web and Data Solutions
    6. 6. What does our customer need? Software that Works!http://agilemanifesto.orgAgile Alliance College of Arts and Sciences | Technology Services | Web and Data Solutions
    7. 7. How much is enough? Just Enough, Just in Time!Analysis Paralysis Cowboy Coding College of Arts and Sciences | Technology Services | Web and Data Solutions
    8. 8. Traditional Software Development College of Arts and Sciences | Technology Services | Web and Data Solutions
    9. 9. Collaboration is the Key“The problem with abstractions (like reports and documents) is that they create illusions of agreement. A hundred people can read the same words, but … they’re imagining a hundred different things. That’s why you want to get to something real right away.” (from Rework) College of Arts and Sciences | Technology Services | Web and Data Solutions
    10. 10. Something Real Right AwayVision Personas Paper Scenarios Prototyping User Stories Develop- ment
    11. 11. PersonasWhat is it?• Representative users• Become “members” of your team• Behaviors, skills, experience, attitudes, demographicsWhy do it?• Visualize real users• Elicit users’ goals• Avoid programmers programming for other programmersGood resource: About Face 3, Alan Cooper Schwab.com College of Arts and Sciences | Technology Services | Web and Data Solutions
    12. 12. A Real PersonaJen, GEC Academic Advisor Goal: “I’m busy. I have a lot of advising notes to enter, and I need to do it fast.”• Experienced: has worked for OSU for 10 years• Technically-savvy• Very knowledgeable of GEC requirements• Specializes in more challenging cases Hint: you’ll probably only need 3- 5 short personas. No need to get carried away. College of Arts and Sciences | Technology Services | Web and Data Solutions
    13. 13. ScenariosWhat is it?• Narratives of real situations your personas will find themselves inWhy do it?• Elicit business rules• Test your assumptions• Discover stuff you didn’t think about Hint: Defer the edge cases. College of Arts and Sciences | Technology Services | Web and Data Solutions
    14. 14. A Real ScenarioJen, GEC Academic Advisor Goal: “I’m busy. I have a lot of advising notes to enter, and I need to do it fast.”Jen had a one hour appointment earlier today with a studentwho had been dismissed from the university a couple yearsago due to poor academic performance. The student asked Jento help her file a petition for reinstatement. The student wasalso visibly upset about some personal issues. Jen wants torecord what they talked about for future reference. College of Arts and Sciences | Technology Services | Web and Data Solutions
    15. 15. A Real ScenarioJen, GEC Academic Advisor Goal: “I’m busy. I have a lot of advising notes to enter, and I need to do it fast.”Jen had a one hour appointment earlier today with a studentwho had been dismissed from the university a couple yearsago due to poor academic performance. The studentCan save Jen asked drafts of notes?to help her file a petition for reinstatement. The student wasalso visibly upset about some personal issues. Jen wants torecord what they talked about for future reference. College of Arts and Sciences | Technology Services | Web and Data Solutions
    16. 16. User StoriesWhat is it?• Short statements of functionality written by the user• Focus on “what,” not “how”Why do it?• Placeholders for later conversations (“just in time”)• Fast way to get requirements• Collaboration tool As a <persona>, I want to <task>, so that <business goal>. Hint: All developers should be in attendance. Adapted from Mike Cohn, User Stories Applied College of Arts and Sciences | Technology Services | Web and Data Solutions
    17. 17. Real User Stories As a <persona>, I want to <task>, so that <business goal>. As an academic advisor, I want to enter a note after an appointment with a student, so that there is a written summary of what we discussed. As an academic advisor, I want to see a student’s entire history ofHint: Hold a time- notes, so that I can prepare ahead of timeboxed story-writing for my appointment with the student.workshop. College of Arts and Sciences | Technology Services | Web and Data Solutions
    18. 18. Rapid Iterative DesignVision Personas Paper Scenarios Prototyping User Stories Develop- ment
    19. 19. Paper PrototypingWhat is it?• More than a sketch!• Build the system with paper• End user simulates task completionWhy do it?• Easy to create/easy to change• Doesn’t look finished• Communication vehicle• Validate design• Test usability Hint: Keep focused on interaction, not interface! College of Arts and Sciences | Technology Services | Web and Data Solutions
    20. 20. Ingeping89 (Inge Nahuis, Netherlands) http://www.youtube.com/watch?v=AtfWM2jRS2wCollege of Arts and Sciences | Technology Services | Web and Data Solutions
    21. 21. A Real Paper Prototype College of Arts and Sciences | Technology Services | Web and Data Solutions
    22. 22. A Real Paper Prototype College of Arts and Sciences | Technology Services | Web and Data Solutions
    23. 23. A Real Paper Prototype College of Arts and Sciences | Technology Services | Web and Data Solutions
    24. 24. The Real SystemCollege of Arts and Sciences | Technology Services | Web and Data Solutions
    25. 25. The Real SystemCollege of Arts and Sciences | Technology Services | Web and Data Solutions
    26. 26. How much is enough? Just Enough, Just in Time!Analysis Paralysis 1. Personas 2. Scenarios 3. User Stories Cowboy Coding 4. Paper Prototypes College of Arts and Sciences | Technology Services | Web and Data Solutions
    27. 27. Final ThoughtsValue working software over excessivedocumentationGet to something real, real quickStay focused on your customer’s goals College of Arts and Sciences | Technology Services | Web and Data Solutions
    28. 28. Resources & AcknowledgmentsRework Jason Fried and David Heinemeier HanssonAbout Face 3 Alan CooperUser Stories Applied Mike CohnThe Art of Agile Development James Shore Many thanks to:Paper Prototyping: The Fast and Easy Way to • Diane DagefoerdeDesign and Refine User Interfaces Carolyn Snyder • Jennifer Belisle • Ryan StockerBlog: Agile Product Design, Jeff Patton • George Abraham • Ousmane Kebe College of Arts and Sciences | Technology Services | Web and Data Solutions

    ×