61
AGILE WHY IT WORKS, HOW IT WORKS, AND HOW TO ADOPT IT

Agile: Why it Works, How it Works, and How to Adopt it

Embed Size (px)

Citation preview

Page 1: Agile: Why it Works, How it Works, and How to Adopt it

AGILEWHY IT WORKS, HOW IT WORKS, AND HOW TO ADOPT IT

Page 2: Agile: Why it Works, How it Works, and How to Adopt it

MARSHMALLOW CHALLENGE

ACTIVITY

Page 3: Agile: Why it Works, How it Works, and How to Adopt it

MARSHMALLOW CHALLENGE

RULES

INSTRUCTIONS: Use the materials supplied to build a free-standing structure with a Marshmallow on top. The team with the tallest structure wins.

TOTAL TIME: 18 minutes

MATERIALS PER TEAM: 20 spaghetti sticks, one yard tape & twine, one marshmallow.

DEFINITION OF SUCCESS: Marshmallow MUST be on top of the structure. Structures must be free-standing.

Page 4: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

MARSHMALLOW CHALLENGE DISCUSSION

▸ What didn’t work?

▸ What worked?

▸ What can we learn?

Page 5: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

MARSHMALLOW CHALLENGE DISCUSSION

▸ The power of prototyping

▸ Iteration

▸ Collaboration

▸ Feedback

Page 6: Agile: Why it Works, How it Works, and How to Adopt it

Andy WaltersDIGITAL PROJECT MANAGER

Page 7: Agile: Why it Works, How it Works, and How to Adopt it

@atendesign aten.io

Page 8: Agile: Why it Works, How it Works, and How to Adopt it

@atendesign aten.io

Page 9: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW ABOUT YOU?

▸ Quick Introductions

▸ Name

▸ Role

▸ What you’re hoping to get out of this session

▸ Your favorite film

Page 10: Agile: Why it Works, How it Works, and How to Adopt it

CARGO CULT AGILE

Page 11: Agile: Why it Works, How it Works, and How to Adopt it

SOFTWARE VS. SKYSCRAPERS

Page 12: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SOFTWARE VS. SKYSCRAPERS

▸ Suppose I hand you $2 billion and ask you to build a skyscraper. How would you do it?

▸ Traditional Approach:

▸ Initiate

▸ Plan

▸ Execute

▸ Close

▸ Profit!

Page 13: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SOFTWARE VS. SKYSCRAPERS

▸ Is the traditional approach right for skyscrapers?

▸ YES. It’s used all the time for skyscrapers.

Page 14: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SOFTWARE VS. SKYSCRAPERS

Skyscrapers Software

Stable Requirements? Yes No

Internal alignment straightforward? Yes-ish No

External alignment straightforward? Yes-ish No

Page 15: Agile: Why it Works, How it Works, and How to Adopt it

SOFTWARE IS FEEDBACK-SENSITIVE.

SKYSCRAPERS AREN’T.

Page 16: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

WHAT IS AGILE?

▸ Agile is a development methodology that facilitates product feedback at short, regular intervals forcing internal and external alignment and catching bad assumptions earlier.

▸ Agile incorporates a concept of:

▸ Increments (chunks of work)

▸ Iterations (chunks of time)

Page 17: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SOFTWARE VS. SKYSCRAPERS

▸ Suppose that instead of a Skyscraper, I’ve asked you to build a news app that aggregates your friend’s recommendations.

▸ Consider using a traditional vs. agile approach while dealing with some contingencies.

Page 18: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SOFTWARE VS. SKYSCRAPERS▸ Contingency #1: We discover people value news recommendations from

experts more than friends.

▸ Traditional approach:

▸ Agile approach:

Month 1 Month 2 Month3 Month 4 Month 5 LAUNCH

Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6

Page 19: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SOFTWARE VS. SKYSCRAPERS▸ Contingency #2: Our designers create an interface which can’t be implemented

by the developers.

▸ Traditional approach:

▸ Agile approach:

Month 1 Month 2 Month3 Month 4 Month 5 LAUNCH

Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6

Page 20: Agile: Why it Works, How it Works, and How to Adopt it

“IF YOU COULD GET ALL THE PEOPLE IN AN ORGANIZATION ROWING THE SAME DIRECTION YOU COULD DOMINATE ANY INDUSTRY […]”

—Melania Trump

Page 21: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SOFTWARE VS. SKYSCRAPERS▸ Contingency #3: Product manager discovers app will not easily port to Android,

but has promoted the app as Android-compatible.

▸ Traditional approach:

▸ Agile approach:

Month 1 Month 2 Month3 Month 4 Month 5 LAUNCH

Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6

Page 22: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

PREDICTIVE VS. ADAPTIVE

▸ Predictive Methodologies (Skyscrapers)

▸ Focus on planning the future in detail, knowing exactly the features and tasks for the entire length of the project duration.

▸ Predictive teams have difficulty implementing changes.

▸ Most suited to projects with stable requirements, such as building a skyscraper.

Page 23: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

PREDICTIVE VS. ADAPTIVE

▸ Adaptive Methodologies (Software)

▸ Focus on planning only the immediate future in detail, knowing requirements will change.

▸ Adaptive teams will have difficulty describing exactly what will happen in the future. The farther away the date, the more vague the plan is.

▸ Most suited to projects with unstable requirements, such as building a website or web application.

Page 24: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

WE COULD END THE TALK HERE.

▸ A man once promised to convert to Judaism if an old Rabbi could stand on one leg and cite the whole of the Torah.

▸ The rabbi stood one one leg and said “What is hateful to you, do not do to your neighbor. That is the whole of the Torah; the rest is commentary. Go and study it!”

▸ Adapt at regular intervals. The rest is commentary!

Page 25: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SO WHAT IS AGILE?: VALUES

▸ “Individuals and interactions over processes and tools”

▸ The right people are more valuable than tools or methods

▸ Resolutions to problems are found through interactions and discussions

Page 26: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SO WHAT IS AGILE?: VALUES

▸ “Working software over comprehensive documentation”

▸ The primary focus for teams must be delivering something that works for the client.

▸ Documentation, though often necessary, needs to be prioritized to those artifacts that, in the end, provide value to the client.

Page 27: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SO WHAT IS AGILE?: VALUES

▸ “Client collaboration over contract negotiations”

▸ Listening to what the client wants is more critical than meeting the language of a contract.

▸ Projects should be a collaboration between the client and the team rather than a hand-off between them.

Page 28: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SO WHAT IS AGILE?: VALUES

▸ “Responding to change over following a plan”

▸ Plans are notoriously out of date as soon as they are written.

▸ By embracing change as opposed to trying to prevent it, the team delivers products the customer actually wants.

Page 29: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SCRUM

▸ What is Scrum?

▸ Scrum is a teamwork methodology designed to implement agile principles.

▸ The rest of what follows is how scrum implements Agile, but there are more frameworks, such as Lean, XP, Kanban, and Scrumban.

Page 30: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS

▸ For the purposes of this talk, let’s create a fictitious project

Page 31: Agile: Why it Works, How it Works, and How to Adopt it

TRUEGIFT

Page 32: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

TRUEGIFT

▸ Problem: Gift-giving is a pain point for some people

▸ Solution: Create a service that selects and sends pre-wrapped gifts on behalf of users.

▸ Useful for birthdays, anniversaries, etc.

Page 33: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - PRODUCT VISION

▸ A vision statement is key to success of the project. The vision should be a short, compelling reflection of the heartbeat of the project.

▸ For TrueGift: TrueGift empowers people to send thoughtful, on-time gifts to their loved ones.

Page 34: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - ROADMAP

▸ A product roadmap is a VERY high-level overview of the project’s functionality.

▸ TrueGift Roadmap

▸ Implement signup process

▸ Implement checkout

▸ Implement gift notification & selection process

▸ Implement personalization & profiles

Page 35: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - PRODUCT RELEASE PLAN

▸ A release plan is a projected schedule of releases for the roadmap.

▸ TrueGift Product Release Plan

▸ Release 1:

▸ Implement signup process

▸ Implement checkout

▸ Implement gift-notification & selection process

▸ Release 2:

▸ Implement personalization & profiles

Page 36: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - THEMES & USER STORIES

▸ THEMES are a high-level requirement

▸ USER STORIES are are definitions of those requirements which:

▸ Contain just enough information to produce a reasonable estimate of the associated LOE (level of effort).

▸ Contain clearly-defined acceptance criteria

Page 37: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - THEMES & USER STORIES

▸ Example TrueGift User Stories for “Implement Signup Process”

▸ THEME: As an anonymous user, I want to sign up for the service.

▸ USER STORY #1: As an anonymous user, I want to view sample products which will be sent to my loved ones so that I’m incentivized to sign up for the service.

▸ USER STORY #2: As an anonymous user, I want to enter relevant enter information about my loved ones so that they can receive gifts.

Page 38: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SIZING USER STORIES

▸ Sizing can be done with hours or with story points.

▸ Hours

▸ The problem with hours is that we are all bad at estimating our time to complete tasks.

▸ Solution: Story Points

Page 39: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SIZING USER STORIES

▸ Story points are a psychological hack designed to trigger a relative, rather than absolute mental sizing process when determining the length of time it will take to complete a task.

Absolute Time (hours)

Shed 30 hours

House 3,000 hours

Neighborhood 300,000 hours

City 300,000,000 hours

Page 40: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SIZING USER STORIES

Relative Time (hours)

Shed Smaller than a House

House Smaller than a Neighborhood, bigger than a Shed

Neighborhood Smaller than a City, bigger than a House

City Bigger than a Neighborhood

Page 41: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SIZING USER STORIES

▸ Can be done in T-shirt sizes (Small, Medium, Large, Extra Large)

▸ Can be done with the fibonacci sequence

▸ 1 2 3 5 8 13 21 34 55

Page 42: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SIZING USER STORIES

▸ Why Use Story Points?

▸ Quick: Estimating LOE should be fast

▸ Accuracy Improves: Over time, sizing trends will tend to coalesce into a stable, predictive structure

Page 43: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINT BACKLOG

▸ A sprint backlog is just a prioritized list of user stories that have been selected for a sprint. Sizing helps figure out what is and isn’t possible to get into a sprint.

▸ The client and the team should work together to set the priority of the sprint backlog.

Page 44: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINT TASK CREATION

▸ Before the sprint begins, user stories should be broken down by the team to the task level.

▸ Tasks can be sized using story points or hours (hours is often preferred at this granular level.)

▸ The team works together to assign tasks.

Page 45: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINTS

▸ Agile incorporates the idea of a timebox, which is a fixed amount of time for the team to work together to complete a set of user stories.

▸ A sprint is NOT just for development. A sprint should be the entire team working together. There are several benefits to this:

▸ Better client expectation management and team satisfaction: Increased likelihood design will not create something which doesn’t get implemented.

▸ Increased velocity: as the team is awash in collaboration, problems are spotted sooner.

Page 46: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINT BACKLOG FOR GIFTEX

▸ Sprint 1

▸ USER STORY #1: As an anonymous user, I want to view sample products which will be sent to my loved ones so that I’m incentivized to sign up for the service.

▸ Size: 2

▸ USER STORY #2: As an anonymous user, I want to enter relevant enter information about my loved ones so that they can receive gifts.

▸ Size: 5

Page 47: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINT STANDUP

▸ Standups are a common way of increasing collaboration

▸ Should be no more than 15 minutes

▸ Can be conducted in-person or via slack

▸ Three questions:

▸ What did you do yesterday?

▸ What are you doing today?

▸ Do you have any roadblocks?

Page 48: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINT REVIEWS

▸ At the end of a sprint, the working software that has been built should be demonstrated to key stakeholders.

▸ This provides an opportunity for the team to show off their work but also to gather important feedback about whether the team is on the right track.

▸ Demos are a great time to review the product release schedule and product roadmap to give stakeholders an idea of progress.

Page 49: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINT REVIEWS

▸ Reviews should cover which stories were completed in the previous sprint.

Page 50: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINT RETROSPECTIVES

▸ A retrospective is a meeting (or, in the language of Scrum, a “ceremony”), in which the team reflects on the last sprint in order to decide how they can improve.

▸ Review objective and subjective information to create a shared picture of the sprint.

▸ Generate insights with discussion about what could be done better next time.

▸ Record, prioritize, and implement those improvements.

▸ Retrospectives are most useful when conducted within a project lifecycle, rather than at the end of it.

Page 51: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINT RETROSPECTIVES

▸ Retrospectives are not blamestorming sessions. Constructive criticism is essential in these meetings but the facilitator should focus on discovering root causes in order to craft solutions.

▸ Retrospectives are not a hugfest. Some teams, especially high-performing teams, may want to avoid the hard work of examining failures and instead pat themselves on the back. No team is immune to improvement.

▸ Retrospectives are not a locker-room pep talk. If managers are invited to retrospectives, they should assume an observer role without speaking privileges.

Page 52: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

HOW AGILE WORKS - SPRINT RETROSPECTIVES

▸ There are plenty of formats for retrospectives; my favorite is the Agile Sailboat:

Page 53: Agile: Why it Works, How it Works, and How to Adopt it

INTERMISSION10 MINUTE BREAK

Page 54: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

Page 55: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SO HOW DO I BECOME AGILE?

▸ Agile is often adopted by the development team first and pushed to management.

▸ When talking with management, cite examples like the FBI’s “Sentinel” program.

▸ After a decade of traditional software management, the CIO turned Sentinel into an agile project and two years later it is live.

▸ Federal CIO Steven VanRoekel has included the agile methodology in his “Future First” initiative.

Page 56: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

SO HOW DO I BECOME AGILE?

▸ Read Scrum: The Art of Doing Twice the Work in Half the Time by Jeff Sutherland

▸ Begin to experiment, but take it seriously.

▸ Scrum-BUT’s

▸ Send your boss to an agile talk to build buy-in.

Page 57: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

PUTTING IT ALL TOGETHER

▸ Agile is ADAPTIVE instead of PREDICTIVE

▸ Agile prefers COLLABORATION over NEGOTIATION & DOCUMENTATION

▸ Agile is about building WORKING SOFTWARE at REGULAR INTERVALS

▸ The whole of Agile: Adapt at regular intervals.

Page 58: Agile: Why it Works, How it Works, and How to Adopt it

“PLANS ARE OF LITTLE IMPORTANCE, BUT PLANNING IS ESSENTIAL”Winston Churchill

Page 59: Agile: Why it Works, How it Works, and How to Adopt it

Q&A DISCUSSIONAGILE

Page 60: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

▸ In 2013, a survey with 173 respondents conducted by Scott Ambler & Associates found that just 49% of software projects using a traditional approach were successful.

▸ The Standish Group reports that “94 percent of large federal information technology projects over the past 10 years were unsuccessful - more than half were delayed, over budget, or didn’t meet user expectations.—NYT

▸ What are some common reasons projects fail?

Page 61: Agile: Why it Works, How it Works, and How to Adopt it

AGILE

▸ Reasons software projects fail:

▸ Inaccurate assumptions about product value

▸ Changing product requirements

▸ External misalignment due to lack of adequate stakeholder involvement

▸ Internal misalignment due to miscommunication

▸ Inaccurate estimation of tasks and failure to control costs

▸ Failure to manage stakeholder expectations