#phpday

                           XKanban
                         XP, Kanban and timeboxing




martedì 17 maggio 2011
Who am I ?
#phpday




                         Web developer @ideato
                         3 years of “serious” php ( +2 of playing around)




martedì 17 maggio 2011
XP Values
                                        Communication
#phpday




                         Respect                                             Simplicity




                                   Courage                            Feedback
                                        http://www.extremeprogramming.org/

martedì 17 maggio 2011
XP Values
                                      Communication
#phpday




                         Respect                                             Simplicity




                                   Courage                            Feedback
                                        http://www.extremeprogramming.org/

martedì 17 maggio 2011
XP Values
                                        Communication
#phpday




                         Respect                                             Simplicity


                                   Courage                            Feedback
                                        http://www.extremeprogramming.org/

martedì 17 maggio 2011
XP Values
                                        Communication
#phpday




                         Respect                                             Simplicity




                                   Courage                        Feedback
                                        http://www.extremeprogramming.org/

martedì 17 maggio 2011
XP Values
                                   Communication
#phpday




                         Respect                                        Simplicity




                              Courage                            Feedback
                                   http://www.extremeprogramming.org/

martedì 17 maggio 2011
XP Values
                                    Communication
#phpday




                         Respect                                         Simplicity




                               Courage                            Feedback
                                    http://www.extremeprogramming.org/

martedì 17 maggio 2011
XP Principles
                                                           Humanity
                   Accepted responsibility                                           Economics
                          Baby steps                                                      Mutual benefit
#phpday




                         Quality                                                                          Flow
                         Failure                                                                        Opportunity
                          Reflection                                                                Redundancy
                                Diversity                        Self similarity
                                                       Improvement
                             http://www.extremeprogramming.org/   http://martinfowler.com/bliki/PrinciplesOfXP.html
martedì 17 maggio 2011
XP Principles
#phpday                               Humanity
                         What people need to be good developers?
                              Safety, Accomplishment, Belonging, Growth, Understand and be understood




martedì 17 maggio 2011
XP Principles
#phpday
                            Economics
                         Does your work produce value?
                                  (for you and your customer)




martedì 17 maggio 2011
XP Principles
#phpday
                         Mutual benefit
               Every activity should benefit all people involved




martedì 17 maggio 2011
XP Principles
#phpday
                                    Flow
                   Delivering a steady flow of valuable software
                   Biased towards a continuous flow of activities



martedì 17 maggio 2011
XP Principles
#phpday
                         Opportunity
                          Learn to see problems as
                          opportunities for change



martedì 17 maggio 2011
XP Principles
#phpday
                          Redundancy
                         The critical problems should be
                         solved in several different ways



martedì 17 maggio 2011
XP Principles
#phpday

                         Self similarity
                   Copy the structure of one solution into a new
                         context, even at different scales



martedì 17 maggio 2011
XP Principles
#phpday

                          Improvement
                     Get an activity started right away but refine
                                 the results over time



martedì 17 maggio 2011
XP Principles
#phpday

                               Diversity
                  Variety of skills, attitudes, and perspectives to
                  see problems and pitfalls, to think of multiple
                              ways to solve problems

martedì 17 maggio 2011
XP Principles
#phpday
                                 Reflection
                         Think about how and why you are working
                              Analyze why you succeed or fail
                              No one stumbles into excellence

martedì 17 maggio 2011
XP Principles
#phpday
                                               Failure
                         If you're having trouble succeeding, fail
                                     “Don't know which of three ways to implement a story?
                          Try it all three ways. Even if they all fail, you'll learn something valuable”
                                                            Kent Back




martedì 17 maggio 2011
XP Principles
#phpday

                                Quality
                             Pushing quality higher
                         often results in faster delivery
                  A concern for quality is no excuse for inaction

martedì 17 maggio 2011
XP Principles
#phpday


                                  Baby steps
                                "What's the least you could do
                         that is recognizably in the right direction?"
                                          Kent Back

martedì 17 maggio 2011
XP Principles
#phpday
                  Accepted responsibility
                         Responsibility cannot be assigned;
                               it can only be accepted
                         With responsibility comes authority


martedì 17 maggio 2011
Where were we?
                                                                                  2 Main Stream Projects
                                 Customers
#phpday
                                  Requests                                                                                               2 Developers
                              user stories
                                                      emergencies

                                                         tasks
                                                                                                                                              +
                                         bugs
                                                                                        http://www.flickr.com/photos/kainet/288519656/
                                                                                                                                        1/2 Developers

               The Emergency Ward
                                                                                                       Management
                                                                                                        projects and clients “assistance”
                                                                                                                 long term planning
                                                                          1 Developer
                         http://www.flickr.com/photos/st3f4n/2489961263/


martedì 17 maggio 2011
Problems: knowledge
                          Spread of knowledge on projects
                                                            Humanity
#phpday
#phpday
                                  Accepted responsibility              Economics

                                     Baby steps                               Mutual benefit
                                   Quality                                      Flow
                                 Failure                                   Opportunity

                                 Reflection                            Redundancy
                                        Diversity          Self-similarity

                                                 Improvement
     martedì 17 maggio 2011
Problems: workflow(s)
                     Main stream (iterations) VS Emergency ward (bug, small tasks, emergencies)
                                                       Humanity
                                                                    Economics
#phpday

                Accepted responsibility
                                Baby steps                                    Mutual benefit

                              Quality                                         Flow
                                Failure                                       Opportunity

                            Reflection                                     Redundancy

                                          Diversity
                                                                    Self-similarity
                                                      Improvement

martedì 17 maggio 2011
Problems: Effort
                         “When can we do this?”: planning, resources, negotiation
                                                             Humanity
#phpday
#phpday
                                  Accepted responsibility                 Economics
                                     Baby steps                                Mutual benefit
                                   Quality                                       Flow
                                     Failure                                         Opportunity

                                   Reflection                                    Redundancy

                                               Diversity                   Self-similarity
                                                            Improvement

     martedì 17 maggio 2011
Problems: who does what?
                         Fixed team(s) on project(s)
                                                             Humanity
#phpday
#phpday
                    Accepted responsibility                               Economics

                                     Baby steps                                Mutual benefit
                                   Quality                                       Flow
                                     Failure                                        Opportunity

                                    Reflection                                  Redundancy

                                                Diversity                 Self-similarity
                                                            Improvement

     martedì 17 maggio 2011
Problems: planning
                         Weekly iteration planning: what about emergencies and small requests?
                                                                Humanity
#phpday
#phpday
                              Accepted responsibility                        Economics
                                         Baby steps                                   Mutual benefit

                                       Quality                                        Flow
                                         Failure                                      Opportunity

                                       Reflection                                  Redundancy

                                                   Diversity
                                                                             Self-similarity
                                                               Improvement

     martedì 17 maggio 2011
Problems: performance
                         How much work can you do in a week? How do you measure it?
                                                             Humanity
#phpday
#phpday
                                 Accepted responsibility                Economics
                                    Baby steps                               Mutual benefit
                                Quality                                              Flow

                                    Failure                                       Opportunity
                                Reflection                                     Redundancy

                                              Diversity                   Self-similarity
                                                           Improvement
     martedì 17 maggio 2011
Lighting your process
#phpday
                         Timeboxing
                         Kanban
                         Bring our problems to light!
                         Still using xp values and principles!



martedì 17 maggio 2011
Timeboxing
                  Principles: humanity, economics, self-similarity, improvement, failure

#phpday




martedì 17 maggio 2011
Kanban
             Principles: opportunity, failure, reflection, flow, economics, mutual benefit

#phpday




martedì 17 maggio 2011
Bring your problems to light!
#phpday
                         Lead time: how long it takes to release value!
                         Activities wait too long/Bugs discovered in QA process
                         Too much work in progress
                         Bottlenecks
                         Non-standard workflow: why it is not in kanban?

martedì 17 maggio 2011
Still using XP values and principles

#phpday             Accepted responsibility       Humanity    Economics
                                                                  Mutual benefit
#phpday




                                Baby steps
                              Quality                                Flow
                              Failure                               Opportunity
                               Reflection                          Redundancy
                                    Diversity                 Self-similarity
                                                Improvement
     martedì 17 maggio 2011
Still using XP values and principles
                      Accepted responsibility
                                  Economics
#phpday                              Failure
                                     Quality
#phpday




                                  Reflection          Knowledge:
                                    Diversity   Kanban = first in, first out
                               Improvement         Pair programming
                              Self-similarity
                              Mutual benefit
                                        Flow
                                Opportunity
                                 Reundancy
     martedì 17 maggio 2011
Still using XP values and principles
                      Accepted responsibility
                                  Economics
#phpday                              Failure
                                     Quality           Workflow(s):
#phpday




                                  Reflection
                                                Kanban board, and limits on its
                                    Diversity
                                                          columns
                               Improvement
                                                 Every development activity is
                              Self-similarity
                                                  on the kanban board: user
                              Mutual benefit
                                                    stories, tasks, bugs, ...
                                        Flow
                                Opportunity
                                 Reundancy
     martedì 17 maggio 2011
Still using XP values and principles
                      Accepted responsibility
                                  Economics
#phpday                              Failure         Effort on projects:
                                     Quality
#phpday




                                  Reflection     “Continuous negotiation” based on
                                    Diversity   weekly “work in progress” metrics
                               Improvement                Short release
                              Self-similarity        Daily re-arrangement of
                              Mutual benefit             kanban activities
                                        Flow
                                Opportunity
                                 Reundancy
     martedì 17 maggio 2011
Still using XP values and principles
                      Accepted responsibility
                                  Economics
#phpday                              Failure
                                     Quality
#phpday




                                                  Who does what?
                                  Reflection
                                    Diversity   Everyone does everithing!
                               Improvement      Kanban = first in, first out
                              Self-similarity      Pair programming
                              Mutual benefit
                                        Flow
                                Opportunity
                                 Reundancy
     martedì 17 maggio 2011
Still using XP values and principles
                      Accepted responsibility
                                  Economics
#phpday                              Failure
#phpday




                                     Quality            Planning:
                                  Reflection         Continuous planning
                                    Diversity
                               Improvement      At the end of each user story
                              Self-similarity   the customer can rearrange
                              Mutual benefit      the activities of his project
                                        Flow
                                Opportunity
                                 Reundancy
     martedì 17 maggio 2011
Still using XP values and principles
                      Accepted responsibility
                                  Economics
#phpday                              Failure
                                     Quality
#phpday




                                                      Performance:
                                  Reflection
                                    Diversity    “Work in progress” per week
                               Improvement           Metrics for planning
                              Self-similarity   “Continuous planning” with our
                              Mutual benefit               customers
                                        Flow
                                Opportunity
                                 Reundancy
     martedì 17 maggio 2011
References

#phpday
                                    http://www.poppendieck.com/
#phpday




                              Kanban and Scrum - making the most of both
                                        http://goo.gl/RnTjw

                                 http://en.wikipedia.org/wiki/Kanban



     martedì 17 maggio 2011
Questions?

#phpday
                              Joind.in : http://joind.in/2993
#phpday




                                     Filippo De Santis
                                       fd@ideato.it
                                 twitter: @filippodesantis



     martedì 17 maggio 2011

Xkanban: XP, Kanban and timeboxing

  • 1.
    #phpday XKanban XP, Kanban and timeboxing martedì 17 maggio 2011
  • 2.
    Who am I? #phpday Web developer @ideato 3 years of “serious” php ( +2 of playing around) martedì 17 maggio 2011
  • 3.
    XP Values Communication #phpday Respect Simplicity Courage Feedback http://www.extremeprogramming.org/ martedì 17 maggio 2011
  • 4.
    XP Values Communication #phpday Respect Simplicity Courage Feedback http://www.extremeprogramming.org/ martedì 17 maggio 2011
  • 5.
    XP Values Communication #phpday Respect Simplicity Courage Feedback http://www.extremeprogramming.org/ martedì 17 maggio 2011
  • 6.
    XP Values Communication #phpday Respect Simplicity Courage Feedback http://www.extremeprogramming.org/ martedì 17 maggio 2011
  • 7.
    XP Values Communication #phpday Respect Simplicity Courage Feedback http://www.extremeprogramming.org/ martedì 17 maggio 2011
  • 8.
    XP Values Communication #phpday Respect Simplicity Courage Feedback http://www.extremeprogramming.org/ martedì 17 maggio 2011
  • 9.
    XP Principles Humanity Accepted responsibility Economics Baby steps Mutual benefit #phpday Quality Flow Failure Opportunity Reflection Redundancy Diversity Self similarity Improvement http://www.extremeprogramming.org/ http://martinfowler.com/bliki/PrinciplesOfXP.html martedì 17 maggio 2011
  • 10.
    XP Principles #phpday Humanity What people need to be good developers? Safety, Accomplishment, Belonging, Growth, Understand and be understood martedì 17 maggio 2011
  • 11.
    XP Principles #phpday Economics Does your work produce value? (for you and your customer) martedì 17 maggio 2011
  • 12.
    XP Principles #phpday Mutual benefit Every activity should benefit all people involved martedì 17 maggio 2011
  • 13.
    XP Principles #phpday Flow Delivering a steady flow of valuable software Biased towards a continuous flow of activities martedì 17 maggio 2011
  • 14.
    XP Principles #phpday Opportunity Learn to see problems as opportunities for change martedì 17 maggio 2011
  • 15.
    XP Principles #phpday Redundancy The critical problems should be solved in several different ways martedì 17 maggio 2011
  • 16.
    XP Principles #phpday Self similarity Copy the structure of one solution into a new context, even at different scales martedì 17 maggio 2011
  • 17.
    XP Principles #phpday Improvement Get an activity started right away but refine the results over time martedì 17 maggio 2011
  • 18.
    XP Principles #phpday Diversity Variety of skills, attitudes, and perspectives to see problems and pitfalls, to think of multiple ways to solve problems martedì 17 maggio 2011
  • 19.
    XP Principles #phpday Reflection Think about how and why you are working Analyze why you succeed or fail No one stumbles into excellence martedì 17 maggio 2011
  • 20.
    XP Principles #phpday Failure If you're having trouble succeeding, fail “Don't know which of three ways to implement a story? Try it all three ways. Even if they all fail, you'll learn something valuable” Kent Back martedì 17 maggio 2011
  • 21.
    XP Principles #phpday Quality Pushing quality higher often results in faster delivery A concern for quality is no excuse for inaction martedì 17 maggio 2011
  • 22.
    XP Principles #phpday Baby steps "What's the least you could do that is recognizably in the right direction?" Kent Back martedì 17 maggio 2011
  • 23.
    XP Principles #phpday Accepted responsibility Responsibility cannot be assigned; it can only be accepted With responsibility comes authority martedì 17 maggio 2011
  • 24.
    Where were we? 2 Main Stream Projects Customers #phpday Requests 2 Developers user stories emergencies tasks + bugs http://www.flickr.com/photos/kainet/288519656/ 1/2 Developers The Emergency Ward Management projects and clients “assistance” long term planning 1 Developer http://www.flickr.com/photos/st3f4n/2489961263/ martedì 17 maggio 2011
  • 25.
    Problems: knowledge Spread of knowledge on projects Humanity #phpday #phpday Accepted responsibility Economics Baby steps Mutual benefit Quality Flow Failure Opportunity Reflection Redundancy Diversity Self-similarity Improvement martedì 17 maggio 2011
  • 26.
    Problems: workflow(s) Main stream (iterations) VS Emergency ward (bug, small tasks, emergencies) Humanity Economics #phpday Accepted responsibility Baby steps Mutual benefit Quality Flow Failure Opportunity Reflection Redundancy Diversity Self-similarity Improvement martedì 17 maggio 2011
  • 27.
    Problems: Effort “When can we do this?”: planning, resources, negotiation Humanity #phpday #phpday Accepted responsibility Economics Baby steps Mutual benefit Quality Flow Failure Opportunity Reflection Redundancy Diversity Self-similarity Improvement martedì 17 maggio 2011
  • 28.
    Problems: who doeswhat? Fixed team(s) on project(s) Humanity #phpday #phpday Accepted responsibility Economics Baby steps Mutual benefit Quality Flow Failure Opportunity Reflection Redundancy Diversity Self-similarity Improvement martedì 17 maggio 2011
  • 29.
    Problems: planning Weekly iteration planning: what about emergencies and small requests? Humanity #phpday #phpday Accepted responsibility Economics Baby steps Mutual benefit Quality Flow Failure Opportunity Reflection Redundancy Diversity Self-similarity Improvement martedì 17 maggio 2011
  • 30.
    Problems: performance How much work can you do in a week? How do you measure it? Humanity #phpday #phpday Accepted responsibility Economics Baby steps Mutual benefit Quality Flow Failure Opportunity Reflection Redundancy Diversity Self-similarity Improvement martedì 17 maggio 2011
  • 31.
    Lighting your process #phpday Timeboxing Kanban Bring our problems to light! Still using xp values and principles! martedì 17 maggio 2011
  • 32.
    Timeboxing Principles: humanity, economics, self-similarity, improvement, failure #phpday martedì 17 maggio 2011
  • 33.
    Kanban Principles: opportunity, failure, reflection, flow, economics, mutual benefit #phpday martedì 17 maggio 2011
  • 34.
    Bring your problemsto light! #phpday Lead time: how long it takes to release value! Activities wait too long/Bugs discovered in QA process Too much work in progress Bottlenecks Non-standard workflow: why it is not in kanban? martedì 17 maggio 2011
  • 35.
    Still using XPvalues and principles #phpday Accepted responsibility Humanity Economics Mutual benefit #phpday Baby steps Quality Flow Failure Opportunity Reflection Redundancy Diversity Self-similarity Improvement martedì 17 maggio 2011
  • 36.
    Still using XPvalues and principles Accepted responsibility Economics #phpday Failure Quality #phpday Reflection Knowledge: Diversity Kanban = first in, first out Improvement Pair programming Self-similarity Mutual benefit Flow Opportunity Reundancy martedì 17 maggio 2011
  • 37.
    Still using XPvalues and principles Accepted responsibility Economics #phpday Failure Quality Workflow(s): #phpday Reflection Kanban board, and limits on its Diversity columns Improvement Every development activity is Self-similarity on the kanban board: user Mutual benefit stories, tasks, bugs, ... Flow Opportunity Reundancy martedì 17 maggio 2011
  • 38.
    Still using XPvalues and principles Accepted responsibility Economics #phpday Failure Effort on projects: Quality #phpday Reflection “Continuous negotiation” based on Diversity weekly “work in progress” metrics Improvement Short release Self-similarity Daily re-arrangement of Mutual benefit kanban activities Flow Opportunity Reundancy martedì 17 maggio 2011
  • 39.
    Still using XPvalues and principles Accepted responsibility Economics #phpday Failure Quality #phpday Who does what? Reflection Diversity Everyone does everithing! Improvement Kanban = first in, first out Self-similarity Pair programming Mutual benefit Flow Opportunity Reundancy martedì 17 maggio 2011
  • 40.
    Still using XPvalues and principles Accepted responsibility Economics #phpday Failure #phpday Quality Planning: Reflection Continuous planning Diversity Improvement At the end of each user story Self-similarity the customer can rearrange Mutual benefit the activities of his project Flow Opportunity Reundancy martedì 17 maggio 2011
  • 41.
    Still using XPvalues and principles Accepted responsibility Economics #phpday Failure Quality #phpday Performance: Reflection Diversity “Work in progress” per week Improvement Metrics for planning Self-similarity “Continuous planning” with our Mutual benefit customers Flow Opportunity Reundancy martedì 17 maggio 2011
  • 42.
    References #phpday http://www.poppendieck.com/ #phpday Kanban and Scrum - making the most of both http://goo.gl/RnTjw http://en.wikipedia.org/wiki/Kanban martedì 17 maggio 2011
  • 43.
    Questions? #phpday Joind.in : http://joind.in/2993 #phpday Filippo De Santis fd@ideato.it twitter: @filippodesantis martedì 17 maggio 2011