Feedback Loops

2,599 views

Published on

Using Feedback Loops to develop your software user interface

Presented at ELAG 2010
June 10th 2010

Published in: Technology, Business
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,599
On SlideShare
0
From Embeds
0
Number of Embeds
31
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

















































  • 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!

    ×