Becoming Agile An Introduction and Tips for Getting Started
description
Transcript of Becoming Agile An Introduction and Tips for Getting Started
BECOMING AGILEAN INTRODUCTION AND TIPS FOR GETTING STARTED
Bob Schommer, CSP, CSPO, PMPAgile Coach
September 17, 2013
ABOUT SKYLINE TECHNOLOGIES• Microsoft Gold Certified Partner supporting five practice areas including: Business
Intelligence, Custom Software Solutions, Enterprise Portals, Online Marketing and IT Business Consulting.
• Skyline’s IT Business Consulting group:– Builds IT strategies that transform IT from a cost center into a strategic asset;
– Integrates IT into official business processes so companies can exploit technology to drive profitable growth, control costs and improve customer service;
– Guides and mentors people in best of breed development methodologies, business analysis techniques and quality assurance programs;
– Provides certified (PMI and Scrum) program and project managers, senior quality assurance professionals and experienced business analysts.
• Proud sponsors of PMI-NEW and the Northeast Wisconsin Agile Users Group
Credible People, Credible Solutions, Incredible Results!
AGENDA• Agile Principles• The Scrum Framework• Slicing the Cake• Visualizing Progress (or the lack thereof)• Becoming a ScrumMaster• Final Thoughts and Questions
WHAT DOES IT MEAN TO BE AGILE?• Iterative and incremental development (IID)
– Working software in each iteration• Evolutionary and adaptive
– Inspect and adapt– Visibility
• Iterative and adaptive planning– Risk driven– Value driven
• Self managed and self organized teams• Time boxed
HISTORY• 1957: IID was used on NASA’s Project Mercury• 1970’s: Successful use on numerous large, life-critical systems
(e.g. space, avionic, defense)• 1992: Canadian ATC system• 1994: DoD adopts new standard that prefers iterative and
evolutionary methods• 1995: Jeff Sutherland and Ken Schwaber first formalized Scrum• 2001: Agile Manifesto emerged during a weekend meeting of
seventeen “agilites” in Utah
AGILE MANIFESTO“We are uncovering better ways of developing software by doing it and helping
others do it. Through this work we have come to value:
That is, while there is value in the items on the right, we value the items on the left more.”www.agilemanifesto.org
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 PRINCIPLES• Our highest priority is to satisfy the customer through early and continuous
delivery of valuable software. • Welcome changing requirements, even late in development. Agile processes
harness change for the customer's competitive advantage. • Deliver working software frequently, from a couple of weeks to a couple of
months, with a preference to the shorter timescale. • Business people and developers must work together daily throughout the
project. • Build projects around motivated individuals. Give them the environment and
support they need, and trust them to get the job done. • The most efficient and effective method of conveying information to and within
a development team is face-to-face conversation.
AGILE PRINCIPLES• Working software is the primary measure of progress. • Agile processes promote sustainable development. The sponsors,
developers, and users should be able to maintain a constant pace indefinitely.
• Continuous attention to technical excellence and good design enhances agility.
• Simplicity – the art of maximizing the amount of work not done – is essential.
• The best architectures, requirements, and designs emerge from self-organizing teams.
• At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
TRIPLE CONSTRAINT DOES NOT GO AWAY
Scope
Cost Time
Traditional MethodsScope
Cost Time
Scope drives
budget and schedule
Agile Approach
Budget and schedule
drives scope
Prioritized by business value
It is impossible to fully define requirements until the client actually begins to use the product.
AGENDA• Agile Principles• The Scrum Framework• Slicing the Cake• Visualizing Progress (or the lack thereof)• Becoming a ScrumMaster• Final Thoughts and Questions
SCRUM TERMSScrum Not an acronym. Sometimes used to refer to the daily
stand up meetingSprint An iteration – typically 2-4 weeks in durationProduct Backlog A prioritized list of product features with estimated
effortSprint Backlog Detailed list of tasks that the Scrum Team has
committed to deliver during a sprintScrum Board Used by Scrum Teams to track sprint progress –
typically a white board with post-it notesBurn Down Publicly displayed chart showing work remaining –
either for the sprint or a release
SCRUM ROLES
Product Owner
Product vision
Prioritizes work to maximize ROI
Determines when to deploy
Keeps team “fed” with high value work
Scrum Team
Self organizing
Cross functional skills
Creates and enforces own ground rules
Responsible for commitments
Scrum Master
Works for the team
Coach, Leader, Facilitator, Change Agent
Removes impediments
Has no authority
Potential Deployment
Sprint Review
Scrum Planning
Sprint Planning 2 Parts: Selection and Decomp
Daily Scrum
Sprint 2-4 Weeks
Team Retrospective
Product Backlog & Team Formation
THE SCRUM FRAMEWORK
Potential Deployment
Sprint Review
Scrum Planning
Sprint Planning 2 Parts: Selection and Decomp
Daily Scrum
Sprint 2-4 Weeks
Team Retrospective
Product Backlog & Team Formation
THE SCRUM FRAMEWORK
Potential Deployment
Sprint Review
Scrum Planning
Sprint Planning 2 Parts: Selection and Decomp
Daily Scrum
Sprint 2-4 Weeks
Team Retrospective
Product Backlog & Team Formation
THE SCRUM FRAMEWORK
BECOMING AGILESKELETON
• Fairly easy to implement• Within weeks for many• Customers begin seeing
improvement
HEART• Can be more difficult• Can take months or years• Change in culture,
behavior and organization• Opportunities are
exciting!
AGENDA• Agile Principles• The Scrum Framework• Slicing the Cake• Visualizing Progress (or the lack thereof)• Becoming a ScrumMaster• Final Thoughts and Questions
SLICING THE CAKE
SOFTWARE LAYERSWeb Application
Business Service
API
Back Office System
Sprin
t 1
Sprin
t 2
Sprin
t 3
Sprin
t 4
Sprin
t 5
CONSIDERATIONS WHEN SLICING THE CAKE
• Focus on high value features first• Code will be “touched” multiple times
– There will be re-work• There will be changes
– Plan for refactoring• Multiple test cycles should mean higher quality• Expect customer excitement• Stop at “good enough”
AGENDA• Agile Principles• The Scrum Framework• Slicing the Cake• Visualizing Progress (or the lack thereof)• Becoming a ScrumMaster• Final Thoughts and Questions
SPRINT BACKLOG – DAY ONEPlanned Checked Out DONE! Unplanned
SPRINT BACKLOG – DAY FIVEPlanned Checked Out DONE! Unplanned
SPRINT BACKLOG – DAY TENPlanned Checked Out DONE! Unplanned
BOTTOM’S UPPlanned Checked Out DONE! Unplanned
UNPLANNED WORK IS KILLING US!Planned Checked Out DONE! Unplanned
EVERYONE’S BUSY BUT NOTHING IS GETTING DONEPlanned Checked Out DONE! Unplanned
GETTING TO “DONE”• Has “Done” been defined and is it understood?
– Checklist– Demonstrable value
• Three questions work well for co-located, disciplined teams– Focused on getting stories “done”
• Walk the board to keep focus on the story– Holds team members accountable– Impediments are obvious– Team should lead the discussion
• Mix it up
TECHNIQUES• Remember the team should be self managed
– Use the retrospective to problem solve– Stress ownership– Any team member can do any task
• Keep tasks small– No more than 2 days to complete a task
• Remove impediments• Ask questions• Coach
AGENDA• Agile Principles• The Scrum Framework• Slicing the Cake• Visualizing Progress (or the lack thereof)• Becoming a ScrumMaster• Final Thoughts and Questions
BEING A SCRUMMASTER REQUIRES …• A servant leadership attitude
– “I work for the team.”– Protector of team
• Maturity– Comfortable with conflict– Hold the team accountable
• Confidence– Let the team manage themselves– Work yourself out of a job
• Bravery– Challenge the status quo
HIGH-PERFORMING DEVELOPMENT “ENGINE”
Product Backlog
Feature 1
Feature 2
Feature 3
Feature 4
Feature “n”
Scrum TeamProduct Owner
Raw Materials High Performance Development Engine
High Business Value
SCRUMMASTER’S ROLE• Maintenance, repairs and clean up• Optimizes and tunes the “engine”• Ensures high quality “raw materials”
from the Product Owner• Drives organizational change• Facilitates• Resolves impediments
SOME COMMON IMPEDIMENTS• Interruptions• Environments– Physical– Technical
• Work space• Other team members
• Organizational– PMO– QA– Managers
• Product Owner
AGENDA• Agile Principles• The Scrum Framework• Slicing the Cake• Visualizing Progress (or the lack thereof)• Becoming a ScrumMaster• Final Thoughts and Questions
AGILE’S POPULARITY IS A REACTION BY TEAMS TO …
• Overbearing controls• Paperwork• Detailed estimates that
become reality• Project “death marches”
Developers want to develop. Testers want to test.
• Unproductive meetings• Forced deadlines• Long hours• Time not spent
developing
CHALLENGE THE STATUS QUO• Agile is consistent with continuous improvement
– Lean for software development
• Anything that impedes the team should be challenged– Governance– PMO– Even regulatory (Do “just enough” to pass)
• Impetus for holistic organizational improvements
WHEN WAS THE LAST TIME YOU ADDED A TOOL TO YOUR TOOLBOX?
• Your value to your organization increases when you can solve more and bigger problems– Not every problem is a nail so …– Your solution should not always be a hammer
• Agile and traditional methods are both viable approaches depending on …– The project– Your organization– Your skills
RESOURCES• Web Sites
– http://agile.vc.pmi.org– www.agilealliance.org– www.scrumalliance.org– www.mountaingoatsoftware.com
• Books– Agile and Iterative Development: A Manager’s Guide by Craig Larman– Agile Estimating and Planning by Mike Cohn– Agile Project Management with Scrum by Ken Schwaber– Kanban and Scrum: Making the most of both by Henrick Kniberg and Mattias Skarin– Succeeding with Agile by Mike Cohn
• NEW Agile Users Group (www.newagile.org)