UE Agile and Lean

19
User Experience Agile & Lean for Lean UX SF Jay Trimble [email protected] NASA Ames Research Center 9-27-12 Thursday, September 27, 12

description

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

Transcript of UE Agile and Lean

Page 1: UE Agile and Lean

User Experience Agile & Lean

for Lean UX SF

Jay [email protected]

NASA Ames Research Center 9-27-12

Thursday, September 27, 12

Page 2: UE Agile and Lean

[email protected]

Product Target Environment

• Mission Control for NASA and Commercial Space Missions

Thursday, September 27, 12

Page 3: UE Agile and Lean

[email protected]

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

Thursday, September 27, 12

Page 4: UE Agile and Lean

[email protected]

In the Beginning

• Delivery cycle = 6 months

• Customer contact with product unsatisfactory

• Progress measurements uncertain

• Long and formal design specs

Thursday, September 27, 12

Page 5: UE Agile and Lean

[email protected]

The Long Road• Four six-

month deliverables

• One UE Spec

• We are not going to get there from here

Subsystem1 Subsystem2 Subsystem3 Subsystem4

6 Months 6 Months 6 Months 6 Months

Module 1

Thursday, September 27, 12

Page 6: UE Agile and Lean

[email protected]

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

Thursday, September 27, 12

Page 7: UE Agile and Lean

[email protected]

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

Thursday, September 27, 12

Page 8: UE Agile and Lean

[email protected]

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

Thursday, September 27, 12

Page 9: UE Agile and Lean

[email protected]

Getting Agile• Deliver to

customer every 3 weeks

• Nightly build

• Release every 3 months

Release n

Iteration 1 Iteration 2 Iteration 3 Iteration 4

Release to Mission Control User Test Community

Release to Mission Control User Test Community

Release to Mission Control User Test Community

Release to Mission Control Ops

3 Weeks 6 Weeks 9 Weeks 12 Weeks

[email protected]

Thursday, September 27, 12

Page 10: UE Agile and Lean

[email protected]

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

Thursday, September 27, 12

Page 11: UE Agile and Lean

[email protected]

User Feedback

3 Weeks Iteration n

Daily iteration nBuild to Customer

TestFeature mods/additions,bug fixes

Optional Mid-Iteration Hackathon tests bigfeatures

Pre-ShipHackathon

Priorities/JIRARankings

Nightly Build/Internal testing as features roll out

Coding

Issue Tracking Updates/Priorities/RankingsUE & Tech Spec dates driven by coding dependencies

Deliver to customer

Agile Development Iteration

Code Freeze (-3 days)

Feature Freeze(-7 days)

Customer triages issues it discovered

Customer acceptance test

Customer verification of closed JIRA issues

Customer installsiteration n-1

Optionally, hot patch

Iteration n+1

Start 24 hour test (-2 day)

Thursday, September 27, 12

Page 12: UE Agile and Lean

[email protected]

Evolution

• Discrete event iterations

• Integrated iterations

Code iteration nStack Rank UE Spec

UE Testing iteration n-1

UE Design/Testing Iteration n

Coding ongoing

UE designs set by UE/dev agreement

Test features at roll-out

TestDesign

Deliver

Deliver

Thursday, September 27, 12

Page 13: UE Agile and Lean

Lean Principles & Our Practice

• Principle

• Tight collaboration of UX, Product Mgmt, Developer

• Know your customers and their needs

• Prioritize to reduce wasted effort

• Practice

• Integrated team, shared workspace, morning tagups, constant feedback

• Participatory Design

• Stack ranking, constant prioritization, tackle hard problems first

[email protected]

Thursday, September 27, 12

Page 14: UE Agile and Lean

Lean Principles & Our Practice

• Principle

• Focus releases on specific user goals

• Externalize your ideas and your process

• Test design hypotheses rapidly and repeatedly

• Observing, learning, and adjusting with rapid cycles of Think--Make--Check

• Practice

• Each iteration has clearly defined user-focused goals

• Shared workspace/lab

• Participatory design, daily build, customer feature verification

• Team de-brief session every release, process adjustments as needed

[email protected]

Thursday, September 27, 12

Page 15: UE Agile and Lean

Work Environment

[email protected]

Thursday, September 27, 12

Page 16: UE Agile and Lean

[email protected]

Design Sessions

• Task flows

• Common mental model

• Task objects

• UI Objects

Thursday, September 27, 12

Page 17: UE Agile and Lean

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

[email protected]

Thursday, September 27, 12

Page 18: UE Agile and Lean

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

[email protected]

Thursday, September 27, 12

Page 19: UE Agile and Lean

Lessons

• Minimize documentation, maximize customer interaction with the team and the product

• Keep the state of the product visible always

[email protected]

Thursday, September 27, 12