Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The art of systemic feedback - AOB2013

The art of systemic feedback - AOB2013

Slides from the Agile on the Beach 2013 conference talk on art of systemic feedback.

Marcin Floryan

September 05, 2013
Tweet

More Decks by Marcin Floryan

Other Decks in Programming

Transcript

  1. Acceptance criteria Recognise feedback as a tool Identify properties and

    limitations of feedback Discover an approach to consider when designing feedback ☐ ☐ ☐
  2. “ feedback improves performance (gain stability, linearity, frequency response, step

    response) and reduces sensitivity to parameter variations due to manufacturing or environment. Wikipedia
  3. “ Because of these advantages, negative feedback is used in

    this way in many amplifiers and control systems. Wikipedia
  4. “ information about reactions to a product which is used

    as a basis for improvement Oxford Dictionary feedback is
  5. “ the modification or control of a process or system

    by its results or effects Oxford Dictionary feedback is
  6. “ People generally work better by starting with something concrete

    and tangible, such as examples, by altering rather than creating from scratch, by watching, and by getting feedback. Agile Software Development: The Cooperative Game
  7. “ Wouldn't it be easier just to do it right

    in the first place? Extreme Programming Explained
  8. We may not know how to do it "right". If

    we are solving a novel problem there may be several solutions that might work or there may be no clear solution at all. 1
  9. What's right for today may be wrong for tomorrow. Changes

    outside our control or ability to predict can easily invalidate yesterday's decisions. 2
  10. Doing everything "right" today might take so long that changing

    circumstances tomorrow invalidate today's solution before it is even finished. 3
  11. “ We think that the best approach a team can

    take is to use empirical feedback to learn about the system and its use, and then apply that learning back to the system. Growing Object-Oriented Software, Guided by Tests
  12. “ If your customer knows now just exactly what she

    wants, and if by the time you’re done she’s still going to want the same thing… Extreme Programming Installed
  13. “ It may be the first time in software history

    that this has happened. Extreme Programming Installed
  14. “ Directions set in advance of experience have an especially

    short half-life. Extreme Programming Explained
  15. “ Change is inevitable, but change creates the need for

    feedback. Extreme Programming Explained
  16. Agile manifesto – principle 12 At regular intervals, the team

    reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
  17. “ To mitigate the risk of uncertainty, Agile prescribes short

    iterations with lots of feedback. Lean-Agile Software Development
  18. “ Feedback - To learn the appropriate lessons at every

    possible opportunity The Art of Agile Development
  19. feedback recipe o make assumptions explicit o set a clear objective o create

    a careful design o learn from results o rinse and repeat
  20. “ […] people all too often look for cases that

    confirm their theories rather than consider whether some alternative principle might work better. Kluge
  21. “ It should be obvious that fast feedback improves the

    speed of learning. The Principles of Product Development Flow
  22. “ What may be less obvious is that fast feedback

    also increases the efficiency with which we generate information and learn new things. The Principles of Product Development Flow
  23. “ One thing scientists have noted about these intentional negative

    feedback loops is that short cycles are often better than long ones. […] And evaluating and correcting a project once per day is better than once per month. Management 3.0
  24. “ First learning obstacle concerns the lack of sufficient feedback

    due to infrequent decisions, which makes it hard to separate signal and background noise. Brilliant Mistakes
  25. “ Whether professionals have a chance to develop intuitive expertise

    depends essentially on the quality and speed of feedback, as well as on sufficient opportunity to practice. Thinking Fast And Slow
  26. “Begin at the beginning, […] and go on till you

    come to the end: then stop. Alice in Wonderland
  27. “Software development, for any one work item is a process

    of knowledge discovery. David Anderson
  28. “ From cybernetics, we have adopted the view that a

    software development team is a goal- directed system that regulates itself using various feedback cycles. Management 3.0
  29. “ If the only feedback you receive is the errors

    detected late in the lifecycle of your project, during testing in the large, or after the application has been released, they are likely to be very expensive to fix. Agile Modeling
  30. “ Let’s be clear about that: if it’s worth having

    the programmers build it, it’s worth knowing that they got it right. Extreme Programming Installed
  31. “ Test-driven development applies the same [principle of fast and

    short feedback] principle to programmer intent. The Art of Agile Development
  32. “ Only code that you can actually release to customers

    can provide real feedback on how well you’re providing value to your customers. The Art of Agile Development
  33. “ The nested feedback loops reinforce each other; if a

    discrepancy slips through an inner loop, there is a good chance an outer loop will catch it. Growing Object-Oriented Software, Guided by Tests
  34. “ Everyone involved in a software project has to learn

    as it progresses. Growing Object-Oriented Software, Guided by Tests
  35. “ What is the simplest thing we can do to

    create fast feedback in a group of humans? Increase face-to- face communications. Don Reinertsen
  36. XP

  37. “ The second O, orientation […] is the most important

    part of the O-O-D-A loop since it shapes the way we observe, the way we decide, the way we act. John Boyd
  38. “ we apply feedback cycles at every level of development,

    organizing projects as a system of nested loops ranging from seconds to months Growing Object-Oriented Software, Guided by Tests
  39. Cynefin simplified 1.  Just about everyone in the world has

    done this. 2.  Lots of people have done this, including several people in the company. 3.  Someone in our company has done this. 4.  Someone in the world did this, but not in our organization (and probably at a competitor). 5.  Nobody has ever done this before. a5er  Liz  Keogh  
  40. “ information is fundamentally tied to the recipient’s uncertainty about

    the message’s content and their ability to predict it in advance WHAT-IF XKCD
  41. “ Optimism is an occupational hazard of programming, feedback is

    the treatment. Extreme Programming Explained
  42. The Remember Slide • feedback is a learning tool • requires cycles

    • loops can be nested and concurrent • you have to design your feedback • assumptions + objective + results
  43. License This presentation is provided under the Creative Commons Attribution

    - Share Alike 3.0 Unported License to Share — to copy, distribute and transmit the work to Remix — to adapt the work You are free Under the following conditions Attribution — You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). Share Alike — If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.