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

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

Apr 14, 2017

Download

Software

andywalters
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
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