SlideShare uma empresa Scribd logo
1 de 40
Baixar para ler offline
Ogni riferimento a fatti realmente accaduti e/o a persone realmente
             esistenti è da ritenersi puramente casuale.

     Any resemblance to actual persons is purely coincidental
As a user I want to search the Internet so
    that I find the information I need
•   Software Engineer
                       •   Scrum Master in Funambol
                                – 6 teams
                                – 30 engineers
schepis@funambol.com   •   2,5 years = 50 iterations  3000 user stories


                       •   Links:
                                – http://www.funambol.com
                                – http://www.edschepis.net
                                – http://pragmaticagile.wordpress.com
                                  edschepis
•   Introduction to User Stories
         –   Epic/Theme/User Story/Task
         –   INVEST
         –   Estimation
         –   DONE!
•   Gugol User Stories
•   Critics
•   Conclusions
•   In general or for your particular product/service/company,
       what would you rather have your customers talk about?
         – A. “Their            is awesome”
         – B. “Their           is awesome”
         – C. “Their              is awesome”
         – D. “ 	
    	
         ”

•   First-person language... reverse engineer
•   It's not about the tools we build, it's what our tools let them do
•             better is... better



    Thanks to Kathy Sierra - Talk at Business of Software 2009 [http://www.blip.tv/file/3346148]
•   What's that?                                                       Kent Beck coined the term
                                                                          user stories in Extreme
•   3C                                                                 Programming Explained 1 st
                                                                                     Edition, 1999
         – Card
         – Conversation
         – Confirmation
•   Limitations
         – It's not just “As a ... I want to... so that...”
         – Without acceptance tests are open to interpretation
         – They require close customer contact throughout the project which in some
                cases may be difficult or may be unnecessary overhead
         – Can have difficulty scaling to large projects
         – Conversation starters... fail to serve as a form of reliable documentation of
                the system
•   User stories provide a small-scale and easy-to-use presentation of
      information
         – generally formulated in the everyday language of the user
         – contain little detail, thus remaining open to interpretation
         – should help the reader understand what it is the software should accomplish
         –      	
         	
   	
      	
 
•   Use cases in contrast describe a process and its steps in detail, and
      may be worded in terms of a formal model.
         – is intended to provide sufficient detail for it to be understood on its own
         – a generalized description of a set of interactions between the system and
               one or more actors, where an actor is either a user or another system
         –
•   Theme
           – a top-level objective that may span projects and products
           – a collection (group) of user stories
•   Epic
           – a large user story: break up epic to several user stories
•   User Story
•   Task
• Independent
      – User Stories should be as independent as possible.

• Negotiable
      – User Stories are not a contract.

• Valuable
      – User Stories should be valuable to the user.

• Estimable
      – User Stories need to be possible to estimate.

• Small
      – User Stories should be small. Not too small. But not too big.

• Testable
      – User Stories need to be worded in a way that is testable
•   Who (As a...)
         – User
         – Roles
         – Systems?!?


•   What (I want to...)
         – Action

•   Why (so that...)
         – Needs
•   Search engine           follow links on the web to request pages that
      are either not yet indexed or have been updated since they were
      last indexed
•   These pages are crawled and are added to the search engine                          .
      Searching a slightly outdated index of content which roughly
      represents the content of the web
•           	
           	
          	
           	
 
         – Accept the user query, checking to match any advanced syntax and checking
              to see if the query is misspelled
         – Check to see if the query is relevant to other vertical search databases (such
              as news search or product search) and place relevant links to a few items
              from that type of search query near the regular search results.
         – Gather a list of relevant pages for the organic search results. These results
              are ranked based on page content, usage data, and link citation data.
As a user I want to search the Internet so
    that I find the information I need
•   Why splitting is essential?
          – a user story should be split when it is too large to fit within a single iteration
          – split a large user story if a more accurate estimate is necessary
•   How to split?
          – Data Boundaries (the information, the results)
                     • along the boundaries of the data supported by the story
          – Operational Boundaries (search)
                     • separate CRUD operations
          – Orthogonal Features (security, logging)
                     • creating two versions of the story: one with and one without support
          – Performance Constraints (find quickly, millions of users)
                     • separating the functional and nonfunctional aspects into separate stories
          – Mixed Priorities (error paths)
                     • the priorities of the smaller stories are different.

•   Don’t split a large story into tasks
•   Watch out the User Stories split f re n z y (“details are not needed now”)
As a user I want to search the Internet so
    that I find the information I need
As a user I want to search the Internet so
    that I find the information I need
As a user I want to search the Internet so
     that I find the information I need
As a user I want to search the Internet so
     that I find the information I need
As a user I want to search the Internet so
    that I find the information I need
•   Data boundaries: search contents, input and results
•   Operational Boundaries: searching... “I'm Feeling Lucky”
•   Performances and scalability
•   Mixed Priorities:
         –   Ranking
         –   Advanced Search
         –   Web Services
         –   Localized searches
•   Web Search
         –   Simple input
         –   “I'm Feeling Lucky”
         –   No Ranking
         –   IP-local searches
         –   Subset of results
•   Data boundaries:
         –   News Search
         –   Image Search
         –   Code Search                       Advertising
         –   Maps Search
         –   ...
•   Advanced Search
•   Web Services
•   Support millions of users
•   Story Points are units of         size used in estimating software
       requirements as an alternative to units of time
•   Measurement of complexity vs. man-day
•   Advantages:
         – cheaper to arrive at
         – collaborative estimation - it's not just developers who can or do estimate, it is
               a product team including analyst, tester and developers
         – the estimates of size are more transparent and universally agreed upon
•   Planning Poker and other techniques
•   Fibonacci sequence
•   DoD is a checklist of valuable activities required to produce software
         – a simple list of activities (writing code, coding comments, unit testing,
              integration testing, release notes, design documents, etc.) that add
              verifiable/demonstrable value to the product
•   DoD is the primary reporting mechanism for team members
         – “This feature is done.”
•   DoD is equivalent to “potentially shippable”
•   DoD is not static
1   2         8   13




2
              2
                       ?
•   Web Search
         –   Simple input
         –   “I'm Feeling Lucky”
         –   No Ranking
         –   IP-local searches
         –   Subset of results
•   Data boundaries:
         –   News Search
         –   Image Search
         –   Code Search                       Advertising
         –   Maps Search
         –   ...
•   Advanced Search
•   Web Services
•   Support millions of users
•   Scaling:
    more than 4 billion of pages and 10Kb/page = tens of terabytes
     –   Performances
     –   Hardware requirements
     –   Handling Failures
     –   PageRank and Shards
•   Documenting Gugol with a list of “As a user..”?
•   Prototypes and Spikes
•   http://www.mountaingoatsoftware.com
•   http://en.wikipedia.org/wiki/History_of_Google
•   http://xprogramming.com
•   http://www.searchenginehistory.com/
•   http://headrush.typepad.com/
•   http://pragmaticagile.wordpress.com
Focus on what user does, not what you do


Don't build a better [x], build a better [user of x]



Thanks to Kathy Sierra - Talk at Business of Software 2009 [http://www.blip.tv/file/3346148]
Alla ricerca della user story perduta

Mais conteúdo relacionado

Destaque

Antonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente AgileAntonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente AgileBetter Software
 
web 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentaliweb 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentaliBetter Software
 
Alessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRESAlessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRESBetter Software
 
Fabio Castronuovo - Intranet e la Enterprise 2.0
Fabio Castronuovo - Intranet e la Enterprise 2.0Fabio Castronuovo - Intranet e la Enterprise 2.0
Fabio Castronuovo - Intranet e la Enterprise 2.0Better Software
 
"Urban Entrepreneurship & Economic Development" Presentation fo...
"Urban Entrepreneurship & Economic Development" Presentation fo..."Urban Entrepreneurship & Economic Development" Presentation fo...
"Urban Entrepreneurship & Economic Development" Presentation fo...intelijazz
 
Il programmatore e le sue api
Il programmatore e le sue apiIl programmatore e le sue api
Il programmatore e le sue apiBetter Software
 

Destaque (8)

Antonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente AgileAntonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente Agile
 
web 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentaliweb 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentali
 
Augmented reality e web
Augmented reality e webAugmented reality e web
Augmented reality e web
 
Alessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRESAlessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRES
 
Claudio Cicali - Openid
Claudio Cicali - OpenidClaudio Cicali - Openid
Claudio Cicali - Openid
 
Fabio Castronuovo - Intranet e la Enterprise 2.0
Fabio Castronuovo - Intranet e la Enterprise 2.0Fabio Castronuovo - Intranet e la Enterprise 2.0
Fabio Castronuovo - Intranet e la Enterprise 2.0
 
"Urban Entrepreneurship & Economic Development" Presentation fo...
"Urban Entrepreneurship & Economic Development" Presentation fo..."Urban Entrepreneurship & Economic Development" Presentation fo...
"Urban Entrepreneurship & Economic Development" Presentation fo...
 
Il programmatore e le sue api
Il programmatore e le sue apiIl programmatore e le sue api
Il programmatore e le sue api
 

Semelhante a Alla ricerca della user story perduta

User Experience from a Business Perspective
User Experience from a Business PerspectiveUser Experience from a Business Perspective
User Experience from a Business PerspectiveDanny Mittleman
 
Building Effective Frameworks for Social Media Analysis
Building Effective Frameworks for Social Media AnalysisBuilding Effective Frameworks for Social Media Analysis
Building Effective Frameworks for Social Media Analysisikanow
 
Building Effective Frameworks for Social Media Analysis
Building Effective Frameworks for Social Media AnalysisBuilding Effective Frameworks for Social Media Analysis
Building Effective Frameworks for Social Media AnalysisOpen Analytics
 
Clarisoft Software Development Process (Lunch & Learn Presentation)
Clarisoft Software Development Process (Lunch & Learn Presentation)Clarisoft Software Development Process (Lunch & Learn Presentation)
Clarisoft Software Development Process (Lunch & Learn Presentation)Robert Haines
 
Usability Workshop, 11-8-2012
Usability Workshop, 11-8-2012Usability Workshop, 11-8-2012
Usability Workshop, 11-8-2012Samantha Bailey
 
Week 8 & 10
Week 8 & 10Week 8 & 10
Week 8 & 10Study Geek
 
Agile & UX What changes and other C.R.A.P.
Agile & UX What changes and other C.R.A.P.Agile & UX What changes and other C.R.A.P.
Agile & UX What changes and other C.R.A.P.LeanDog
 
INSEMTIVES Tutorial ISWC2011 - Session1
INSEMTIVES Tutorial ISWC2011 - Session1INSEMTIVES Tutorial ISWC2011 - Session1
INSEMTIVES Tutorial ISWC2011 - Session1INSEMTIVES project
 
Insemtives iswc2011 session1
Insemtives iswc2011 session1Insemtives iswc2011 session1
Insemtives iswc2011 session1Elena Simperl
 
How we use Hive at SnowPlow, and how the role of HIve is changing
How we use Hive at SnowPlow, and how the role of HIve is changingHow we use Hive at SnowPlow, and how the role of HIve is changing
How we use Hive at SnowPlow, and how the role of HIve is changingyalisassoon
 
Technical Challenges in Resource Discovery
Technical Challenges in Resource DiscoveryTechnical Challenges in Resource Discovery
Technical Challenges in Resource DiscoveryPaul Walk
 
Technical Coping Strategies for Resource Discovery - Paul Walk
Technical Coping Strategies for Resource Discovery - Paul WalkTechnical Coping Strategies for Resource Discovery - Paul Walk
Technical Coping Strategies for Resource Discovery - Paul WalkJisc
 
Digital Marketing Course Week 3: Digital Assets
Digital Marketing Course Week 3: Digital AssetsDigital Marketing Course Week 3: Digital Assets
Digital Marketing Course Week 3: Digital AssetsAyca Turhan
 
Towards an Agile approach to building application profiles
Towards an Agile approach to building application profilesTowards an Agile approach to building application profiles
Towards an Agile approach to building application profilesPaul Walk
 
Intro to UX Design
Intro to UX DesignIntro to UX Design
Intro to UX Designjayyearley
 
Insemtives swat4ls 2012
Insemtives swat4ls 2012Insemtives swat4ls 2012
Insemtives swat4ls 2012Elena Simperl
 
Responsive Innovation in a Local Context
Responsive Innovation in a Local ContextResponsive Innovation in a Local Context
Responsive Innovation in a Local ContextPaul Walk
 

Semelhante a Alla ricerca della user story perduta (20)

User Experience from a Business Perspective
User Experience from a Business PerspectiveUser Experience from a Business Perspective
User Experience from a Business Perspective
 
Building Effective Frameworks for Social Media Analysis
Building Effective Frameworks for Social Media AnalysisBuilding Effective Frameworks for Social Media Analysis
Building Effective Frameworks for Social Media Analysis
 
Building Effective Frameworks for Social Media Analysis
Building Effective Frameworks for Social Media AnalysisBuilding Effective Frameworks for Social Media Analysis
Building Effective Frameworks for Social Media Analysis
 
Clarisoft Software Development Process (Lunch & Learn Presentation)
Clarisoft Software Development Process (Lunch & Learn Presentation)Clarisoft Software Development Process (Lunch & Learn Presentation)
Clarisoft Software Development Process (Lunch & Learn Presentation)
 
Ch 3
Ch   3Ch   3
Ch 3
 
Usability Workshop, 11-8-2012
Usability Workshop, 11-8-2012Usability Workshop, 11-8-2012
Usability Workshop, 11-8-2012
 
Week 8 & 10
Week 8 & 10Week 8 & 10
Week 8 & 10
 
Agile & UX What changes and other C.R.A.P.
Agile & UX What changes and other C.R.A.P.Agile & UX What changes and other C.R.A.P.
Agile & UX What changes and other C.R.A.P.
 
INSEMTIVES Tutorial ISWC2011 - Session1
INSEMTIVES Tutorial ISWC2011 - Session1INSEMTIVES Tutorial ISWC2011 - Session1
INSEMTIVES Tutorial ISWC2011 - Session1
 
Insemtives iswc2011 session1
Insemtives iswc2011 session1Insemtives iswc2011 session1
Insemtives iswc2011 session1
 
How we use Hive at SnowPlow, and how the role of HIve is changing
How we use Hive at SnowPlow, and how the role of HIve is changingHow we use Hive at SnowPlow, and how the role of HIve is changing
How we use Hive at SnowPlow, and how the role of HIve is changing
 
Technical Challenges in Resource Discovery
Technical Challenges in Resource DiscoveryTechnical Challenges in Resource Discovery
Technical Challenges in Resource Discovery
 
Technical Coping Strategies for Resource Discovery - Paul Walk
Technical Coping Strategies for Resource Discovery - Paul WalkTechnical Coping Strategies for Resource Discovery - Paul Walk
Technical Coping Strategies for Resource Discovery - Paul Walk
 
Digital Marketing Course Week 3: Digital Assets
Digital Marketing Course Week 3: Digital AssetsDigital Marketing Course Week 3: Digital Assets
Digital Marketing Course Week 3: Digital Assets
 
Towards an Agile approach to building application profiles
Towards an Agile approach to building application profilesTowards an Agile approach to building application profiles
Towards an Agile approach to building application profiles
 
Intro to UX Design
Intro to UX DesignIntro to UX Design
Intro to UX Design
 
Insemtives swat4ls 2012
Insemtives swat4ls 2012Insemtives swat4ls 2012
Insemtives swat4ls 2012
 
User-Centered Design
User-Centered DesignUser-Centered Design
User-Centered Design
 
All about User story
All about User storyAll about User story
All about User story
 
Responsive Innovation in a Local Context
Responsive Innovation in a Local ContextResponsive Innovation in a Local Context
Responsive Innovation in a Local Context
 

Mais de Better Software

How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?Better Software
 
Software Open Source in ambito industriale
Software Open Source in ambito industrialeSoftware Open Source in ambito industriale
Software Open Source in ambito industrialeBetter Software
 
Quando il software si fa amare
Quando il software si fa amareQuando il software si fa amare
Quando il software si fa amareBetter Software
 
Cowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incollaCowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incollaBetter Software
 
Better Software: Feedback Report 2010
Better Software: Feedback Report 2010Better Software: Feedback Report 2010
Better Software: Feedback Report 2010Better Software
 
Alcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anniAlcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anniBetter Software
 
The Fun Of A Program Manager
The Fun Of A Program ManagerThe Fun Of A Program Manager
The Fun Of A Program ManagerBetter Software
 
Cavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GISCavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GISBetter Software
 
Cavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISCavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISBetter Software
 
Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009Better Software
 
Alessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello ITAlessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello ITBetter Software
 
Maurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project ManagerMaurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project ManagerBetter Software
 
Elio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaElio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaBetter Software
 
Massimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e ProblematicheMassimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e ProblematicheBetter Software
 
Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0Better Software
 
Casali + Giacoma - Design Motivazionale
Casali + Giacoma - Design MotivazionaleCasali + Giacoma - Design Motivazionale
Casali + Giacoma - Design MotivazionaleBetter Software
 
Alex Martelli - Sviluppo Software: Esperienze, Consigli e Idee
Alex Martelli - Sviluppo Software: Esperienze, Consigli e IdeeAlex Martelli - Sviluppo Software: Esperienze, Consigli e Idee
Alex Martelli - Sviluppo Software: Esperienze, Consigli e IdeeBetter Software
 
Stefano Fornari - Come creare e far crescere un progetto ed una community ope...
Stefano Fornari - Come creare e far crescere un progetto ed una community ope...Stefano Fornari - Come creare e far crescere un progetto ed una community ope...
Stefano Fornari - Come creare e far crescere un progetto ed una community ope...Better Software
 

Mais de Better Software (20)

How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?
 
Software Open Source in ambito industriale
Software Open Source in ambito industrialeSoftware Open Source in ambito industriale
Software Open Source in ambito industriale
 
Start small stay small
Start small stay smallStart small stay small
Start small stay small
 
Dove l’utente è re
Dove l’utente è reDove l’utente è re
Dove l’utente è re
 
Quando il software si fa amare
Quando il software si fa amareQuando il software si fa amare
Quando il software si fa amare
 
Cowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incollaCowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incolla
 
Better Software: Feedback Report 2010
Better Software: Feedback Report 2010Better Software: Feedback Report 2010
Better Software: Feedback Report 2010
 
Alcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anniAlcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anni
 
The Fun Of A Program Manager
The Fun Of A Program ManagerThe Fun Of A Program Manager
The Fun Of A Program Manager
 
Cavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GISCavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GIS
 
Cavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISCavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GIS
 
Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009
 
Alessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello ITAlessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello IT
 
Maurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project ManagerMaurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project Manager
 
Elio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaElio Tondo - Linux In Azienda
Elio Tondo - Linux In Azienda
 
Massimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e ProblematicheMassimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
 
Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0
 
Casali + Giacoma - Design Motivazionale
Casali + Giacoma - Design MotivazionaleCasali + Giacoma - Design Motivazionale
Casali + Giacoma - Design Motivazionale
 
Alex Martelli - Sviluppo Software: Esperienze, Consigli e Idee
Alex Martelli - Sviluppo Software: Esperienze, Consigli e IdeeAlex Martelli - Sviluppo Software: Esperienze, Consigli e Idee
Alex Martelli - Sviluppo Software: Esperienze, Consigli e Idee
 
Stefano Fornari - Come creare e far crescere un progetto ed una community ope...
Stefano Fornari - Come creare e far crescere un progetto ed una community ope...Stefano Fornari - Come creare e far crescere un progetto ed una community ope...
Stefano Fornari - Come creare e far crescere un progetto ed una community ope...
 

Último

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
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
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
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
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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 MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Último (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
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
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
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
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
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
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Alla ricerca della user story perduta

  • 1.
  • 2.
  • 3. Ogni riferimento a fatti realmente accaduti e/o a persone realmente esistenti è da ritenersi puramente casuale. Any resemblance to actual persons is purely coincidental
  • 4.
  • 5.
  • 6.
  • 7. As a user I want to search the Internet so that I find the information I need
  • 8. Software Engineer • Scrum Master in Funambol – 6 teams – 30 engineers schepis@funambol.com • 2,5 years = 50 iterations  3000 user stories • Links: – http://www.funambol.com – http://www.edschepis.net – http://pragmaticagile.wordpress.com edschepis
  • 9. Introduction to User Stories – Epic/Theme/User Story/Task – INVEST – Estimation – DONE! • Gugol User Stories • Critics • Conclusions
  • 10.
  • 11. In general or for your particular product/service/company, what would you rather have your customers talk about? – A. “Their is awesome” – B. “Their is awesome” – C. “Their is awesome” – D. “ ” • First-person language... reverse engineer • It's not about the tools we build, it's what our tools let them do • better is... better Thanks to Kathy Sierra - Talk at Business of Software 2009 [http://www.blip.tv/file/3346148]
  • 12. What's that? Kent Beck coined the term user stories in Extreme • 3C Programming Explained 1 st Edition, 1999 – Card – Conversation – Confirmation • Limitations – It's not just “As a ... I want to... so that...” – Without acceptance tests are open to interpretation – They require close customer contact throughout the project which in some cases may be difficult or may be unnecessary overhead – Can have difficulty scaling to large projects – Conversation starters... fail to serve as a form of reliable documentation of the system
  • 13. User stories provide a small-scale and easy-to-use presentation of information – generally formulated in the everyday language of the user – contain little detail, thus remaining open to interpretation – should help the reader understand what it is the software should accomplish – • Use cases in contrast describe a process and its steps in detail, and may be worded in terms of a formal model. – is intended to provide sufficient detail for it to be understood on its own – a generalized description of a set of interactions between the system and one or more actors, where an actor is either a user or another system –
  • 14. Theme – a top-level objective that may span projects and products – a collection (group) of user stories • Epic – a large user story: break up epic to several user stories • User Story • Task
  • 15. • Independent – User Stories should be as independent as possible. • Negotiable – User Stories are not a contract. • Valuable – User Stories should be valuable to the user. • Estimable – User Stories need to be possible to estimate. • Small – User Stories should be small. Not too small. But not too big. • Testable – User Stories need to be worded in a way that is testable
  • 16. Who (As a...) – User – Roles – Systems?!? • What (I want to...) – Action • Why (so that...) – Needs
  • 17.
  • 18.
  • 19. Search engine follow links on the web to request pages that are either not yet indexed or have been updated since they were last indexed • These pages are crawled and are added to the search engine . Searching a slightly outdated index of content which roughly represents the content of the web • – Accept the user query, checking to match any advanced syntax and checking to see if the query is misspelled – Check to see if the query is relevant to other vertical search databases (such as news search or product search) and place relevant links to a few items from that type of search query near the regular search results. – Gather a list of relevant pages for the organic search results. These results are ranked based on page content, usage data, and link citation data.
  • 20. As a user I want to search the Internet so that I find the information I need
  • 21. Why splitting is essential? – a user story should be split when it is too large to fit within a single iteration – split a large user story if a more accurate estimate is necessary • How to split? – Data Boundaries (the information, the results) • along the boundaries of the data supported by the story – Operational Boundaries (search) • separate CRUD operations – Orthogonal Features (security, logging) • creating two versions of the story: one with and one without support – Performance Constraints (find quickly, millions of users) • separating the functional and nonfunctional aspects into separate stories – Mixed Priorities (error paths) • the priorities of the smaller stories are different. • Don’t split a large story into tasks • Watch out the User Stories split f re n z y (“details are not needed now”)
  • 22. As a user I want to search the Internet so that I find the information I need
  • 23. As a user I want to search the Internet so that I find the information I need
  • 24. As a user I want to search the Internet so that I find the information I need
  • 25. As a user I want to search the Internet so that I find the information I need
  • 26. As a user I want to search the Internet so that I find the information I need
  • 27. Data boundaries: search contents, input and results • Operational Boundaries: searching... “I'm Feeling Lucky” • Performances and scalability • Mixed Priorities: – Ranking – Advanced Search – Web Services – Localized searches
  • 28. Web Search – Simple input – “I'm Feeling Lucky” – No Ranking – IP-local searches – Subset of results • Data boundaries: – News Search – Image Search – Code Search Advertising – Maps Search – ... • Advanced Search • Web Services • Support millions of users
  • 29.
  • 30.
  • 31. Story Points are units of size used in estimating software requirements as an alternative to units of time • Measurement of complexity vs. man-day • Advantages: – cheaper to arrive at – collaborative estimation - it's not just developers who can or do estimate, it is a product team including analyst, tester and developers – the estimates of size are more transparent and universally agreed upon • Planning Poker and other techniques • Fibonacci sequence
  • 32. DoD is a checklist of valuable activities required to produce software – a simple list of activities (writing code, coding comments, unit testing, integration testing, release notes, design documents, etc.) that add verifiable/demonstrable value to the product • DoD is the primary reporting mechanism for team members – “This feature is done.” • DoD is equivalent to “potentially shippable” • DoD is not static
  • 33. 1 2 8 13 2 2 ?
  • 34.
  • 35. Web Search – Simple input – “I'm Feeling Lucky” – No Ranking – IP-local searches – Subset of results • Data boundaries: – News Search – Image Search – Code Search Advertising – Maps Search – ... • Advanced Search • Web Services • Support millions of users
  • 36. Scaling: more than 4 billion of pages and 10Kb/page = tens of terabytes – Performances – Hardware requirements – Handling Failures – PageRank and Shards • Documenting Gugol with a list of “As a user..”? • Prototypes and Spikes
  • 37. http://www.mountaingoatsoftware.com • http://en.wikipedia.org/wiki/History_of_Google • http://xprogramming.com • http://www.searchenginehistory.com/ • http://headrush.typepad.com/ • http://pragmaticagile.wordpress.com
  • 38.
  • 39. Focus on what user does, not what you do Don't build a better [x], build a better [user of x] Thanks to Kathy Sierra - Talk at Business of Software 2009 [http://www.blip.tv/file/3346148]