Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Feedback Loops

2,657 views

Published on

Using Feedback Loops to develop your software user interface

Presented at ELAG 2010
June 10th 2010

Published in: Technology, Business
  • Be the first to comment

Feedback Loops

  1. 1. Building a User Interface with Feedback Loops Charles Lowell Serials Solutions @cowboyd github/cowboyd
  2. 2. I am Developer
  3. 3. I think in JavaScript and Ruby
  4. 4. I am not Librarian
  5. 5. I am not Search Guru
  6. 6. I am not Business Man
  7. 7. I am not Manager
  8. 8. I am not Process Expert
  9. 9. I am Stake Holder
  10. 10. I am Stake Holder
  11. 11. Harmonious Process
  12. 12. Harmonious Process Harmonious Code
  13. 13. Harmonious Process Harmonious Code Harmonious
  14. 14. Harmonious Process Harmonious Code Harmonious Me
  15. 15. We get a review
  16. 16. Deficiencies • No way to get to the next detailed record • No way to save an item from detail screen • Email form unforgiving of common errors • Option to receive link, citation or both • Citations should show call numbers
  17. 17. Summon Mobile • “Nothing but fluff...” • “Your Designers should have thought how people might actually use this interface.” • “It looks to me as if they just rushed it out the door so they could brag.” • “Serious deficiencies...”
  18. 18. Why is he so angry?
  19. 19. Why is he so angry? Because that’s what software has taught users to feel
  20. 20. Software Development Design Release Develop 6 months
  21. 21. Software Development Design Release Develop 6 months
  22. 22. Software Development Design Release Develop 6 months wasted time
  23. 23. Software development breeds hateful users
  24. 24. Software Development Design Release Develop 6 months wasted time
  25. 25. Our Process Design Release Design Release Design Release Develop Develop Develop 3 weeks 3 weeks 3 weeks
  26. 26. Our Process Design Release Design Release Design Release Develop Develop Develop 3 weeks 3 weeks 3 weeks Still There
  27. 27. Our Process Design Release Design Release Design Release Develop Develop Develop 3 weeks 3 weeks 3 weeks Still There
  28. 28. Our Process Design Release Design Release Design Release Develop Develop Develop 3 weeks 3 weeks 3 weeks Still There
  29. 29. Lesson: Embrace the angry face. Failures are valuable. They help you triangulate on the right solution. He’s a fantastic compass of how you’re doing.
  30. 30. Deficiencies • No way to get to the next detailed record • No way to save an item from detail screen • Email form unforgiving of common errors • Option to receive link, citation or both • Citations should show call numbers
  31. 31. Important Features • No way to get to the next detailed record • No way to save an item from detail screen • Email form unforgiving of common errors • Option to receive link, citation or both • Citations should show call numbers
  32. 32. “It looks to me like they just rushed it out the door so they could brag.”
  33. 33. Rushed Yes, Brag no. • Get it into hands of power users fast • Let them steer the product, not some designer in an Ivory tower
  34. 34. Feedback Loops are the central theme of our process
  35. 35. Design Release Develop T = min(t)
  36. 36. Not Just from Users • Developer feedback loops (unit testing) • Devteam feedback loops (continuous integration) • Team-wide feedback loops(bi-weekly demos)
  37. 37. Step #1
  38. 38. Step #1 Deploy to production
  39. 39. Gall’s Law “A Complex system that works is invariably found to have evolved from a simple system that worked....”
  40. 40. Unit Feedback Write Tests Tests Pass Design Develop Release
  41. 41. Unit Feedback • Clearly defined spec for desired code • No extra code than what is required by the test • Afterwards, the test can be used in an automated regression suite.
  42. 42. Continuous Integration Check in Deploy Build
  43. 43. Continuous Integration • Full regression test with every source code change • Regressions caught within seconds • Changes are viewable and testable within minutes
  44. 44. Team Feedback Design Release Develop
  45. 45. Release Cycle Team Feedback Design Develop Release Continuous Integration riddled with potential points of failure... that’s great! Unit Tests D DR D DR D DR D DR D DR D DR 3 Weeks
  46. 46. Adaptive Path
  47. 47. Adaptive Path Failure -> Learning
  48. 48. Fail Fast = Win • Competitors change • Users change • Rely on capability, not fixed targets
  49. 49. Questions? Charles Lowell Serials Solutions @cowboyd github/cowboyd Thank You!

×