SlideShare a Scribd company logo
1 of 65
Download to read offline
How to prototype to
understand your clients

 antti.tarvainen@leonidasoy.fi   harri.lammi@leonidasoy.fi
           @tarvaina                   @harri_lammi
Talk in one slide

             Understand the context
1.           of your system.

             Build prototypes to validate
2.           your understanding of the
             context and the design.

             Different situations call for
3.           different kinds of prototypes.
PROTOSONNI
“A prototype in seven days”
Case: Lausuntopalvelu


                    Demo
   http://youtu.be/jVlYofasZnI
     http://lausuntopalvelu.fi
       https://github.com/leonidas/lausuntopalvelu-prototyyppi
    but look at it on your own risk — it really is throwaway code.
Schedule:
                          Understand the problem
Start shop      1 day
                          Iterate with paper protos
Design &                  Design user interface
                5 days
Development               Develop functionality

Demo            2 hours   Deliver to the customer

Team:
Proxy product owner
2 IX/UI designers
2 software developers
Startshop Tips
DO have a schedule
DO let the client tell their story
DON’T try to come up with a solution before
you understand the problem
DON’T delegate design responsibility to the
client
From context to
       the solution
                 Context
                      Personas
We need to
understand the         Scenarios
context before
                       Paper prototypes
we can
implement the          Wireframes
solution.
                       Layouts
                 Solution
From context to
       the solution
                  Context
                       Personas
We use
                        Scenarios
different tools
to move from            Paper prototypes
context towards
                        Wireframes
solutions.
                        Layouts
                  Solution
From context to
       the solution
                    Context
We verify our            Personas
understanding
                          Scenarios
at each level
with the client           Paper prototypes
and by
                          Wireframes
comparing to
the other levels.         Layouts
                    Solution
PO   CODE
Development Tips

DO have small tasks (< 2h)
DO commit and deploy all the time
DO have product owner test the prototype all
the time
DON’T write anything extra
DON’T spend time in polishing
Internals in this case
jQuery, Transparency, Spine, Undescore, ...
CoffeeScript
Node.js
MongoDB
Github
Linode
YouTube
Demo to the client
Lessons learned


• 7-day projects are exciting!
• Throw the code away.
• Throw the design away.
What is good software?
What is a good tool?
context


             tool



A tool is used in some context.
context


              tool


          In the context
different forces act upon the tool
context


        tool


      Tool is good
if it fits the context.
context



        tool


         Tool is bad
if it doesn’t fit the context.
Example.
when you are
Example.
            just a few   bored and need
         minutes of time entertainment

                                             you can stop
                                              whenever
                                               you want
   always
  with you


                                 etc. etc.
                you don’t
              want to learn
             anything difficult
when you are
Example.
            just a few   bored and need
         minutes of time entertainment

                                             you can stop
                                              whenever
                                               you want
   always
  with you


                                 etc. etc.
                you don’t
              want to learn
             anything difficult
when you are
Example.
            just a few   bored and need
         minutes of time entertainment

                                            you can stop
                                             whenever
                                              you want
   always
  with you


                                etc. etc.

      you want to learn
      something useful
when you are
Example.
                          bored and need
               social      entertainment
             situation
                                            you can stop
                                             whenever
                                              you want
   always
  with you


                                etc. etc.

      you want to learn
      something useful
So to create a good tool
 you need two things.
context

                    ?
    ?
                     ?

1. Understand the context
where the tool will be used.
context


               tool



2. Design a tool that fits the context.
context


              tool



You cannot tell from an abstract idea,
       if it will fit the context.
context


                tool


As you make the idea more concrete,
you will see its problems more clearly.
context


                 tool



This gives you an idea how to improve it.
context


  tool



And so on.
context


           tool


     Continue iterating
 until you find a design that
fits the context well enough.
specifi            implem               mainte
         design              testing
cation            entation             nance




 Traditional waterfall lacks iteration
specifi            implem                mainte
         design               testing
cation            entation              nance


                             context


                  tool




    Probably resulting in a bad tool.
Agile methods, e.g. Scrum,
introduce iteration to fix that problem.
But a few things are unclear
     1. How do you find the context?
2. How does the context result in a backlog?
user needs




      User needs are the most
  fundamental part of the context.
architecture

                    user interface

user needs
              ?     requirements

                     data model

                     feature list


 What is the most logical next step?
              Why?
architecture

                    user interface
user needs          requirements

                     data model

                     feature list


    User interface is, because it
  can be tested against user needs.
architecture

                    user interface
user needs           requirements

                      data model

                      feature list


You cannot tell from e.g. data model
alone if it will match the user needs.
This is our process.
The right side of the process
is traditional agile, e.g. Scrum.
Before starting Scrum we
investigate the context and look
  for solutions by prototyping.
context

?            ?

    ?   ?




    We find out the context of the system
      by interviewing potential users.
context




?




        We describe the context
         by writing scenarios.
context

tool


       ?




                 We create prototypes
                 based on the scenarios.
context

tool


       ?




            We test the prototypes
       using simulation and user testing.
When the user interaction of the most
 common scenarios is clear, we put
   them to the product backlog.
A use case may consist of
 one or more features.
We take new features to production based
     on the rhythm of the project.
 Preferrably as soon as they are ready.
There are multiple kinds of prototypes.
Paper prototyping is fastest.
A fancier prototype adds precision
   but not necessarily accuracy.
We use mostly paper prototypes
  and functional prototypes.
The length of a paper prototype
   feedback loop is minutes.
The length of a functional prototype
       feedback loop is days.
Paper prototype is good for
  finding out and validating
the use cases and the design.
A functional prototype is good for
communicating the vision of the product,
  selling it and validating the market.
Talk in one slide

            Understand the context
1.          of your system.

            Build prototypes to validate
2.          your understanding of the
            context and the design.

            Different situations call for
3.          different kinds of prototypes.

More Related Content

Viewers also liked

Right Brain Invest (startup project)
Right Brain Invest (startup project)Right Brain Invest (startup project)
Right Brain Invest (startup project)Sergei Erjemin
 
Simple effective teamwork
Simple effective teamworkSimple effective teamwork
Simple effective teamworkAntti Tarvainen
 
«Окнардия» – маркетплейс-агрегатор пластиковых окон
«Окнардия» –  маркетплейс-агрегатор пластиковых окон«Окнардия» –  маркетплейс-агрегатор пластиковых окон
«Окнардия» – маркетплейс-агрегатор пластиковых оконSergei Erjemin
 
Blitzschnell an echtes Nutzerfeedback - UX Day Mannheim 2016
Blitzschnell an echtes Nutzerfeedback - UX Day Mannheim 2016Blitzschnell an echtes Nutzerfeedback - UX Day Mannheim 2016
Blitzschnell an echtes Nutzerfeedback - UX Day Mannheim 2016Reto Laemmler
 

Viewers also liked (7)

Right Brain Invest (startup project)
Right Brain Invest (startup project)Right Brain Invest (startup project)
Right Brain Invest (startup project)
 
Ikastaroaiii
IkastaroaiiiIkastaroaiii
Ikastaroaiii
 
Simple effective teamwork
Simple effective teamworkSimple effective teamwork
Simple effective teamwork
 
«Окнардия» – маркетплейс-агрегатор пластиковых окон
«Окнардия» –  маркетплейс-агрегатор пластиковых окон«Окнардия» –  маркетплейс-агрегатор пластиковых окон
«Окнардия» – маркетплейс-агрегатор пластиковых окон
 
Journal Club
Journal ClubJournal Club
Journal Club
 
Close mc gbg
Close mc gbgClose mc gbg
Close mc gbg
 
Blitzschnell an echtes Nutzerfeedback - UX Day Mannheim 2016
Blitzschnell an echtes Nutzerfeedback - UX Day Mannheim 2016Blitzschnell an echtes Nutzerfeedback - UX Day Mannheim 2016
Blitzschnell an echtes Nutzerfeedback - UX Day Mannheim 2016
 

Similar to How to prototype to understand your clients

UX Prototyping (UXiD) - Handout by Anton Chandra and Bahni Mahariasha
UX Prototyping (UXiD) - Handout by Anton Chandra and Bahni MahariashaUX Prototyping (UXiD) - Handout by Anton Chandra and Bahni Mahariasha
UX Prototyping (UXiD) - Handout by Anton Chandra and Bahni MahariashaAnton Chandra
 
UX Beers - A Story about product management at uman.ai - Jasper Verplanken
UX Beers - A Story about product management at uman.ai - Jasper VerplankenUX Beers - A Story about product management at uman.ai - Jasper Verplanken
UX Beers - A Story about product management at uman.ai - Jasper VerplankenUX Antwerp Meetup
 
Why Design Patterns Are Important In Software Engineering
Why Design Patterns Are Important In Software EngineeringWhy Design Patterns Are Important In Software Engineering
Why Design Patterns Are Important In Software EngineeringProtelo, Inc.
 
EPFL - PxS, week 4 - UX design techniques
EPFL - PxS, week 4 - UX design techniquesEPFL - PxS, week 4 - UX design techniques
EPFL - PxS, week 4 - UX design techniqueshendrikknoche
 
WORKSHOP: Making the World Easier with Interaction Design
WORKSHOP: Making the World Easier with Interaction DesignWORKSHOP: Making the World Easier with Interaction Design
WORKSHOP: Making the World Easier with Interaction DesignCheryl Platz
 
Wireframing for Mobile App Developers
Wireframing for Mobile App DevelopersWireframing for Mobile App Developers
Wireframing for Mobile App DevelopersVeiko Raime
 
IxD Works Miniworkshop: Introduction
IxD Works Miniworkshop: IntroductionIxD Works Miniworkshop: Introduction
IxD Works Miniworkshop: IntroductionInteractionDesign
 
Cinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patternsCinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patternsSteven Smith
 
30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbookGabriel Paunescu 🤖
 
Session on mockups
Session on mockupsSession on mockups
Session on mockupsAbdul Dibosh
 
Agile Prototyping Best Practices
Agile Prototyping Best PracticesAgile Prototyping Best Practices
Agile Prototyping Best Practicesuxpin
 
Hcde k 12 charrette workbook
Hcde k 12 charrette workbookHcde k 12 charrette workbook
Hcde k 12 charrette workbookValerie Remaker
 
API Workshop: Deep dive into code samples
API Workshop: Deep dive into code samplesAPI Workshop: Deep dive into code samples
API Workshop: Deep dive into code samplesTom Johnson
 
On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)Zoe Landon
 
SAD01 - An Introduction to Systems Analysis and Design
SAD01 - An Introduction to Systems Analysis and DesignSAD01 - An Introduction to Systems Analysis and Design
SAD01 - An Introduction to Systems Analysis and DesignMichael Heron
 
Design Thinking - Types of prototypes
Design Thinking - Types of prototypes Design Thinking - Types of prototypes
Design Thinking - Types of prototypes SwethaVijay10
 
User Experience 1: What is User Experience?
User Experience 1: What is User Experience?User Experience 1: What is User Experience?
User Experience 1: What is User Experience?Marc Miquel
 
The ultimate guide to prototyping
The ultimate guide to prototypingThe ultimate guide to prototyping
The ultimate guide to prototypingMarcelo Graciolli
 
APIA2018 - Zahra Tashakorinia - Design Hacks & Paper Prototyping
APIA2018 - Zahra Tashakorinia - Design Hacks & Paper PrototypingAPIA2018 - Zahra Tashakorinia - Design Hacks & Paper Prototyping
APIA2018 - Zahra Tashakorinia - Design Hacks & Paper PrototypingEuropean Innovation Academy
 
On Readability of Code
On Readability of CodeOn Readability of Code
On Readability of CodeArun Saha
 

Similar to How to prototype to understand your clients (20)

UX Prototyping (UXiD) - Handout by Anton Chandra and Bahni Mahariasha
UX Prototyping (UXiD) - Handout by Anton Chandra and Bahni MahariashaUX Prototyping (UXiD) - Handout by Anton Chandra and Bahni Mahariasha
UX Prototyping (UXiD) - Handout by Anton Chandra and Bahni Mahariasha
 
UX Beers - A Story about product management at uman.ai - Jasper Verplanken
UX Beers - A Story about product management at uman.ai - Jasper VerplankenUX Beers - A Story about product management at uman.ai - Jasper Verplanken
UX Beers - A Story about product management at uman.ai - Jasper Verplanken
 
Why Design Patterns Are Important In Software Engineering
Why Design Patterns Are Important In Software EngineeringWhy Design Patterns Are Important In Software Engineering
Why Design Patterns Are Important In Software Engineering
 
EPFL - PxS, week 4 - UX design techniques
EPFL - PxS, week 4 - UX design techniquesEPFL - PxS, week 4 - UX design techniques
EPFL - PxS, week 4 - UX design techniques
 
WORKSHOP: Making the World Easier with Interaction Design
WORKSHOP: Making the World Easier with Interaction DesignWORKSHOP: Making the World Easier with Interaction Design
WORKSHOP: Making the World Easier with Interaction Design
 
Wireframing for Mobile App Developers
Wireframing for Mobile App DevelopersWireframing for Mobile App Developers
Wireframing for Mobile App Developers
 
IxD Works Miniworkshop: Introduction
IxD Works Miniworkshop: IntroductionIxD Works Miniworkshop: Introduction
IxD Works Miniworkshop: Introduction
 
Cinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patternsCinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patterns
 
30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook
 
Session on mockups
Session on mockupsSession on mockups
Session on mockups
 
Agile Prototyping Best Practices
Agile Prototyping Best PracticesAgile Prototyping Best Practices
Agile Prototyping Best Practices
 
Hcde k 12 charrette workbook
Hcde k 12 charrette workbookHcde k 12 charrette workbook
Hcde k 12 charrette workbook
 
API Workshop: Deep dive into code samples
API Workshop: Deep dive into code samplesAPI Workshop: Deep dive into code samples
API Workshop: Deep dive into code samples
 
On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)
 
SAD01 - An Introduction to Systems Analysis and Design
SAD01 - An Introduction to Systems Analysis and DesignSAD01 - An Introduction to Systems Analysis and Design
SAD01 - An Introduction to Systems Analysis and Design
 
Design Thinking - Types of prototypes
Design Thinking - Types of prototypes Design Thinking - Types of prototypes
Design Thinking - Types of prototypes
 
User Experience 1: What is User Experience?
User Experience 1: What is User Experience?User Experience 1: What is User Experience?
User Experience 1: What is User Experience?
 
The ultimate guide to prototyping
The ultimate guide to prototypingThe ultimate guide to prototyping
The ultimate guide to prototyping
 
APIA2018 - Zahra Tashakorinia - Design Hacks & Paper Prototyping
APIA2018 - Zahra Tashakorinia - Design Hacks & Paper PrototypingAPIA2018 - Zahra Tashakorinia - Design Hacks & Paper Prototyping
APIA2018 - Zahra Tashakorinia - Design Hacks & Paper Prototyping
 
On Readability of Code
On Readability of CodeOn Readability of Code
On Readability of Code
 

Recently uploaded

Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Recently uploaded (20)

Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

How to prototype to understand your clients

  • 1. How to prototype to understand your clients antti.tarvainen@leonidasoy.fi harri.lammi@leonidasoy.fi @tarvaina @harri_lammi
  • 2. Talk in one slide Understand the context 1. of your system. Build prototypes to validate 2. your understanding of the context and the design. Different situations call for 3. different kinds of prototypes.
  • 4. Case: Lausuntopalvelu Demo http://youtu.be/jVlYofasZnI http://lausuntopalvelu.fi https://github.com/leonidas/lausuntopalvelu-prototyyppi but look at it on your own risk — it really is throwaway code.
  • 5. Schedule: Understand the problem Start shop 1 day Iterate with paper protos Design & Design user interface 5 days Development Develop functionality Demo 2 hours Deliver to the customer Team: Proxy product owner 2 IX/UI designers 2 software developers
  • 6.
  • 7.
  • 8.
  • 9.
  • 10. Startshop Tips DO have a schedule DO let the client tell their story DON’T try to come up with a solution before you understand the problem DON’T delegate design responsibility to the client
  • 11. From context to the solution Context Personas We need to understand the Scenarios context before Paper prototypes we can implement the Wireframes solution. Layouts Solution
  • 12. From context to the solution Context Personas We use Scenarios different tools to move from Paper prototypes context towards Wireframes solutions. Layouts Solution
  • 13. From context to the solution Context We verify our Personas understanding Scenarios at each level with the client Paper prototypes and by Wireframes comparing to the other levels. Layouts Solution
  • 14.
  • 15. PO CODE
  • 16. Development Tips DO have small tasks (< 2h) DO commit and deploy all the time DO have product owner test the prototype all the time DON’T write anything extra DON’T spend time in polishing
  • 17. Internals in this case jQuery, Transparency, Spine, Undescore, ... CoffeeScript Node.js MongoDB Github Linode YouTube
  • 18. Demo to the client
  • 19. Lessons learned • 7-day projects are exciting! • Throw the code away. • Throw the design away.
  • 20. What is good software?
  • 21. What is a good tool?
  • 22. context tool A tool is used in some context.
  • 23. context tool In the context different forces act upon the tool
  • 24. context tool Tool is good if it fits the context.
  • 25. context tool Tool is bad if it doesn’t fit the context.
  • 27. when you are Example. just a few bored and need minutes of time entertainment you can stop whenever you want always with you etc. etc. you don’t want to learn anything difficult
  • 28. when you are Example. just a few bored and need minutes of time entertainment you can stop whenever you want always with you etc. etc. you don’t want to learn anything difficult
  • 29. when you are Example. just a few bored and need minutes of time entertainment you can stop whenever you want always with you etc. etc. you want to learn something useful
  • 30. when you are Example. bored and need social entertainment situation you can stop whenever you want always with you etc. etc. you want to learn something useful
  • 31. So to create a good tool you need two things.
  • 32. context ? ? ? 1. Understand the context where the tool will be used.
  • 33. context tool 2. Design a tool that fits the context.
  • 34. context tool You cannot tell from an abstract idea, if it will fit the context.
  • 35. context tool As you make the idea more concrete, you will see its problems more clearly.
  • 36. context tool This gives you an idea how to improve it.
  • 38. context tool Continue iterating until you find a design that fits the context well enough.
  • 39. specifi implem mainte design testing cation entation nance Traditional waterfall lacks iteration
  • 40. specifi implem mainte design testing cation entation nance context tool Probably resulting in a bad tool.
  • 41. Agile methods, e.g. Scrum, introduce iteration to fix that problem.
  • 42. But a few things are unclear 1. How do you find the context? 2. How does the context result in a backlog?
  • 43. user needs User needs are the most fundamental part of the context.
  • 44. architecture user interface user needs ? requirements data model feature list What is the most logical next step? Why?
  • 45. architecture user interface user needs requirements data model feature list User interface is, because it can be tested against user needs.
  • 46. architecture user interface user needs requirements data model feature list You cannot tell from e.g. data model alone if it will match the user needs.
  • 47. This is our process.
  • 48. The right side of the process is traditional agile, e.g. Scrum.
  • 49. Before starting Scrum we investigate the context and look for solutions by prototyping.
  • 50. context ? ? ? ? We find out the context of the system by interviewing potential users.
  • 51. context ? We describe the context by writing scenarios.
  • 52. context tool ? We create prototypes based on the scenarios.
  • 53. context tool ? We test the prototypes using simulation and user testing.
  • 54. When the user interaction of the most common scenarios is clear, we put them to the product backlog.
  • 55. A use case may consist of one or more features.
  • 56. We take new features to production based on the rhythm of the project. Preferrably as soon as they are ready.
  • 57. There are multiple kinds of prototypes.
  • 59. A fancier prototype adds precision but not necessarily accuracy.
  • 60. We use mostly paper prototypes and functional prototypes.
  • 61. The length of a paper prototype feedback loop is minutes.
  • 62. The length of a functional prototype feedback loop is days.
  • 63. Paper prototype is good for finding out and validating the use cases and the design.
  • 64. A functional prototype is good for communicating the vision of the product, selling it and validating the market.
  • 65. Talk in one slide Understand the context 1. of your system. Build prototypes to validate 2. your understanding of the context and the design. Different situations call for 3. different kinds of prototypes.