UE Agile and Lean


Published on

A NASA project uses elements of agile and lean user centered design to achieve a three-week delivery cycle for mission control software

Published in: Design, Technology, Education
No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

UE Agile and Lean

  1. 1. User Experience Agile & Lean for Lean UX SF Jay Trimble jtrimble2@gmail.com NASA Ames Research Center 9-27-12Thursday, September 27, 12
  2. 2. Product Target Environment • Mission Control for NASA and Commercial Space Missions jtrimble2@gmail.comThursday, September 27, 12
  3. 3. Product Mission • Develop a modular software architecture for mission control applications that allows users to compose their own software using drag and drop from a single integrated user environment • See the results at https://github.com/nasa/mct jtrimble2@gmail.comThursday, September 27, 12
  4. 4. In the Beginning • Delivery cycle = 6 months • Customer contact with product unsatisfactory • Progress measurements uncertain • Long and formal design specs jtrimble2@gmail.comThursday, September 27, 12
  5. 5. The Long Road • Four six- month deliverables Module 1 • One UE Subsystem1 Subsystem2 Subsystem3 Subsystem4 Spec 6 Months 6 Months 6 Months 6 Months • We are not going to get there from here jtrimble2@gmail.comThursday, September 27, 12
  6. 6. Time for Changes • Fix the problems iteratively, without a broad proclamation of methodology, i.e. “we are going to be agile” or “we are going to be “lean” • Just fix the problems jtrimble2@gmail.comThursday, September 27, 12
  7. 7. Incremental Improvements • Six week delivery cycle • Prioritization of work at the start of each six- week iteration • User Experience spec for every iteration due one week before iteration start • UE testing and design session during coding period of each iteration jtrimble2@gmail.comThursday, September 27, 12
  8. 8. Almost There • Better, but still not where we need to be • Six week iterations are focused on subsystem capabilities, they lack user-focus • Customers see progress every six-weeks, this is not often enough jtrimble2@gmail.comThursday, September 27, 12
  9. 9. Getting Agile • Deliver to customer Release to Mission Release to Mission Release to Mission Release to Mission every 3 Control User Test Community Control User Test Community Control User Test Community Control Ops weeks • Nightly Release n build Iteration 1 Iteration 2 Iteration 3 Iteration 4 • Release 3 Weeks 6 Weeks 9 Weeks 12 Weeks every 3 months jtrimble2@gmail.com jay.p.trimble@nasa.govThursday, September 27, 12
  10. 10. We’re There • User-focused iterations • Customer gives daily feedback using nightly build • Delivery for feature verification every three-weeks • Full release every four iterations • The measure of progress is working code • Constant customer-design/dev team interaction • Test features as they rollout using internal QA, get customer feedback from nightly build jtrimble2@gmail.comThursday, September 27, 12
  11. 11. Agile Development Iteration Optional Mid-Iteration Feature Hackathon tests big Freeze Code Freeze features (-7 days) (-3 days) Priorities/JIRA Pre-Ship Rankings Hackathon Start 24 hour test (-2 day) Deliver to customer 3 Weeks Iteration n Coding UE & Tech Spec dates driven by coding dependencies Issue Tracking Updates/Priorities/Rankings Nightly Build/Internal testing as features roll out Daily iteration n Build to Feature mods/additions, Test User Feedback bug fixes Customer Customer Customer Customer verification Customer triages Optionally, hot installs acceptance test of closed JIRA issues issues it discovered patch iteration n-1 Iteration n+1 jtrimble2@gmail.comThursday, September 27, 12
  12. 12. Evolution Stack Rank UE Spec Deliver • Discrete Code iteration n event Design UE Testing iteration n-1 Test iterations UE Design/Testing Iteration n Deliver • Integrated Coding ongoing iterations UE designs set by UE/dev agreement Test features at roll-out jtrimble2@gmail.comThursday, September 27, 12
  13. 13. Lean Principles & Our Practice • Principle • Practice • Tight collaboration of • Integrated team, shared UX, Product Mgmt, workspace, morning Developer tagups, constant feedback • Know your customers and their needs • Participatory Design • Prioritize to reduce • Stack ranking, constant wasted effort prioritization, tackle hard problems first jtrimble2@gmail.comThursday, September 27, 12
  14. 14. Lean Principles & Our Practice • Principle • Practice • Focus releases on specific • Each iteration has clearly user goals defined user-focused goals • Externalize your ideas and • Shared workspace/lab your process • Participatory design, daily • Test design hypotheses build, customer feature rapidly and repeatedly verification • Observing, learning, and • Team de-brief session adjusting with rapid cycles every release, process of Think--Make--Check adjustments as needed jtrimble2@gmail.comThursday, September 27, 12
  15. 15. Work Environment jtrimble2@gmail.comThursday, September 27, 12
  16. 16. Design Sessions • Task flows • Common mental model • Task objects • UI Objects jtrimble2@gmail.comThursday, September 27, 12
  17. 17. The Customer is part of the Team • Feature development • Participatory design, facilitated by designers, customers part of design team • Testing • Feature test at rollout by internal QA, immediate feedback from customer via nightly build, customer acceptance at iteration delivery jtrimble2@gmail.comThursday, September 27, 12
  18. 18. Lessons • Iterations focused on engineering needs can provide UE designers a breather • The train leaves the station at regular intervals. Features that are ready ship, those that aren’t get on the next train • The measure of progress is working code • Rank issues, always work in order of priority, resist the urge to do the easy things first jtrimble2@gmail.comThursday, September 27, 12
  19. 19. Lessons • Minimize documentation, maximize customer interaction with the team and the product • Keep the state of the product visible always jtrimble2@gmail.comThursday, September 27, 12
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.