Top Banner
06/06/2022 1 Introduction to Agile J.D. Meier
24

Introduction to Agile, by J.D. Meier

Aug 23, 2014

Download

J.D. Meier

A brief and visual introduction to the Agile.

Learn the Agile mindset and the big 3 (Extreme Programming, Scrum, and Kanban). Be able to whiteboard a simple view of how each one works to get things done and make things happen.
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: Introduction to Agile, by J.D. Meier

04/07/2023 1

Introduction to Agile

J.D. Meier

Page 2: Introduction to Agile, by J.D. Meier

04/07/2023 2

Page 3: Introduction to Agile, by J.D. Meier

About J.D. Meier

J.D. Meier … Principal Program Manager at Microsoft Focus - Software Development, Project

Management, and Effectiveness Research, author, lead teams, and ship stuff 10+ years deliberate practice in “proven practices” 750+ software architecture and design reviews

As a hobby and passion, I study success patterns inside and outside of Microsoft, up and down the chain.

Blogs J.D. Meier on MSDN (Microsoft Blog):

http://blogs.msdn.com/jmeier Sources of Insight (Effectiveness Blog) -

http://SourcesOfInsight.com

3

Page 4: Introduction to Agile, by J.D. Meier

04/07/2023 4

Goals

1. Take a walk through the big 3 (XP, Scrum, and Kanban)

2. Build a shared vocabulary for Agile3. Learn simple mental models for Agile

Page 5: Introduction to Agile, by J.D. Meier

04/07/2023 5

Agile vs. WaterfallWaterfall Agile

Page 6: Introduction to Agile, by J.D. Meier

04/07/2023 6

What is AgileAgile is a framework of values and principles to manage teams and

projects.

Agile is an alternative approach to traditional project management. It embraces change while traditional project management fights change.

People across functional teams work together as one team, rather than different groups working in phases or stages.

More human communication, interaction, and face-to-face.

Continuous feedback from users and stakeholders.

Iterations, shorter development cycles, and more frequent releases.

Visibility of progress and transparency of process.

Page 7: Introduction to Agile, by J.D. Meier

04/07/2023 7

Individuals and interactions over Processes and tools

Working software over Comprehensive documentation

Customer collaboration over Contract negotiation

Responding to change over Following a plan

Agile Values

http://www.agilemanifesto.org

Page 8: Introduction to Agile, by J.D. Meier

04/07/2023 8

12 Agile Principles1. Our highest priority is to satisfy the customer through early and continuous delivery

of valuable software.2. Welcome changing requirements, even late in development. Agile processes harness

change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout the project.5. Build projects around motivated individuals. Give them the environment and support

they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

7. Working software is the primary measure of progress.8. Agile processes promote sustainable development. The sponsors, developers, and users

should be able to maintain a constant pace indefinitely.9. Continuous attention to technical excellence and good design enhances agility.10. Simplicity--the art of maximizing the amount of work not done--is essential.11. The best architectures, requirements, and designs emerge from self-organizing teams.12. At regular intervals, the team reflects on how to become more effective, then tunes and

adjusts its behavior accordingly.

Flowing continuous value, continuous learning, and empowering people.

http://www.agilemanifesto.org

Page 9: Introduction to Agile, by J.D. Meier

04/07/2023 9

Why Agile1. Increase customer involvement which can build

empathy and reduce do-overs and rework2. Learn faster which means you can adapt to

change3. Improve quality through focus4. Reduce risk through shorter feedback loops and

customer interaction5. Simplify by getting rid of overhead and waste6. Reduce cycle time through timeboxing and

parallel development7. Improve operational awareness through

transparency8. Drive process improvement through

continuous improvement9. Empower people through less mechanics and

more interaction, continuous learning, and adaptation

10.Flow more value through more frequent releases and less “big bang”

Page 10: Introduction to Agile, by J.D. Meier

04/07/2023 10

Extreme Programming (XP)

Page 11: Introduction to Agile, by J.D. Meier

04/07/2023 11

1. Coding Standards2. Collective Ownership3. Continuous Integration4. On-Site Customer5. Pair Programming6. Planning Game7. Refactoring8. Short Releases9. Simple Design10.Sustainable Pace (40 Hour Week)11. System Metaphor12.Test-Driven Development

12 Practices of Extreme Programming (XP)

Page 12: Introduction to Agile, by J.D. Meier

04/07/2023 12

Extreme Programming (XP) at a Glance

Exploration

Architectural Spikes

Spikes

Continuous Integration

Acceptance Tests

Small Releases

System Metaphor

Stories

Iteration Planning

Iteration

Pair ProgrammingDevelopme

nt Testing

Collective CodebaseTests

Estimates

StoriesStories

StoriesStories

Stories

Customer Approval

Release

Page 13: Introduction to Agile, by J.D. Meier

04/07/2023 13

Scrum

Page 14: Introduction to Agile, by J.D. Meier

04/07/2023 14

Scrum PracticesRoles

• Product Owner• Development Team• Scrum Master

Artifacts• Product Backlog• Sprint Backlog• Increment• Burn down Chart

• Product Planning• Sprint• Sprint Planning

Meeting• Daily Scrum• Sprint Review• Sprint Retrospective

Activities

Page 15: Introduction to Agile, by J.D. Meier

04/07/2023 15

Scrum at a Glance

Product Backlog Sprint Backlog

Retrospective

Potentially Shippable Product Increment

Sprint

1-4 Weeks

24 Hours

Sprint Planning

Daily Scrum

Sprint Review

Page 16: Introduction to Agile, by J.D. Meier

04/07/2023 16

Kanban

Page 17: Introduction to Agile, by J.D. Meier

04/07/2023 17

Kanban Practices

1. Visualize the Workflow2. Limit WIP (Work in Progress)3. Measure the Lead Time

Page 18: Introduction to Agile, by J.D. Meier

04/07/2023 18

Kanban at a Glance

Page 19: Introduction to Agile, by J.D. Meier

04/07/2023 19

Start Simple

You Can Easily Adapt the Flow of the Process to Better Reflect What You Do and Gain More

Visibility

Page 20: Introduction to Agile, by J.D. Meier

04/07/2023 20

Favorite Ideas from Agile

Page 21: Introduction to Agile, by J.D. Meier

04/07/2023 21

1. Personalized process that's adaptable2. Customer focus / customer connection3. People centric over doc centric4. Embracing change versus fighting it5. Pairing up on problems6. Reducing the risk of failure7. Shorter feedback loops8. Continuous build9. Continuous value10.From “Push” to “Pull”

The Short-List

These are a few of my favorite things …

Page 22: Introduction to Agile, by J.D. Meier

04/07/2023 22

Where to Go for More

Agile Manifesto - http://www.agilemanifesto.org

https://www.scrum.org/Portals/0/Documents/Scrum%20Guides/Scrum_Guide.pdf

The Scrum Guide (PDF) -

http://www.crisp.se/file-uploads/Kanban-vs-Scrum.pdf

Kanban Vs. Scrum (PDF) -

Scrumban: Essays on Kanban Systems for Lean Software Development, by Corey Ladas

Page 23: Introduction to Agile, by J.D. Meier

04/07/2023 23

Q & A

Page 24: Introduction to Agile, by J.D. Meier

04/07/2023 24

“Done Done”