building software to help our clients grow s ince 1985 agile software development andrew nichols,...
TRANSCRIPT
building software to help our clients growSINCE 1985
www.tallan.com
Agile Software Development
Andrew Nichols, Certified Scrum Master
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009
[email protected] Stewart, Director of Business [email protected]
Founded in 1985 Offices in NYC, Boston, LA, Tampa Over 100 technology consultants with a
wide range of expertise and knowledgeArchitects, developers, user experience
designers, technical managers, and testers
Delivered 1000’s of projects to over 500 clients
Focus on business-critical customized solutions
Company Overview
2Tallan, Inc. Proprietary and Confidential. Copyright 2009
User Experience/Web Property Development – Leveraging the latest web technologies to build communities via the web
eCommerce Web Development - Connecting companies to their customers and partners (B2B and B2C)
Enterprise Application Integration and Service Oriented Architecture – Connecting critical internal and external systems, thereby increasing operational efficiency and leveraging existing assets
Business Intelligence – Providing internal and external users with accurate, timely, actionable information in the most understandable format
Both Microsoft .net framework and Java skillsets
Tallan Professional Services
3Tallan, Inc. Proprietary and Confidential. Copyright 2009
Tallan, Inc. Proprietary and Confidential. Copyright 2009 4
Partnership - Microsoft
Managed Gold Level Partner Mid-Market, Enterprise Four Competencies
Custom Development Solutions- .netData Management Solutions-SQL Server, BI Business Process and Integration-BizTalk Server Information Worker Solutions-SharePoint Server
Why Tallan?
20+ year history Delivered 1000’s of projects to over 500
companies Deliver on Time and on Budget = Client
Longevity ING: 7 years Disney: 5 years Talbots: 12 years Ingram Micro: 7 years Columbia House: 7 years Barnes & Noble: 5 years FedEx Office, formerly Kinko’s: 5 years
5Tallan, Inc. Proprietary and Confidential. Copyright 2009
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 6
The Traditional Waterfall
Requirements
Design
Develop
Test
Deploy
Originally introduced in 1970 by Winston W. Royce
The Waterfall Approach
Assumes cost of change is lower earlier in the process
Strives to reduce rework with focus on upfront planning and design, measure twice cut once
Signoff and approval required at phase transition points
Inflexible to Change
Heavy change control (prevention) processes
Requirements
Design
Develop
Test
Deploy
Inherent problems with upfront design
Assumes perfect understanding of problem
Mistakes are unavoidable
Attempts to fix scope
Poor Quality
Testing late in process increases risk of defects
Requirements
Design
Develop
Test
Deploy
Poor Quality
Testing late in process increases risk of defects
Difficult to get signoff in early phases
1. “I can’t sign off on all 300 pages of this requirement document”
2. “What are all these diagrams with arrows and boxes?”
How does Agile address these issues?
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 14
The Traditional Waterfall
Requirements
Design
Develop
Test
Deploy
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 15
Agile Methods
Requirements
Design
Develop
Test
Deploy
Requirements
Design
Develop
Test
Deploy
Requirements
Design
Develop
Test
Deploy
Requirements
Design
Develop
Test
Deploy
Requirements
Design
Develop
Test
Deploy
Breaking up the work into small batches
The Agile Methods
Iteratively Deliver Working Software
On Time On Budget On Scope
Solves True Business Problem
Maximum Value Minimal Cost
Traditional Success Agile Definition of Success
Definition of Project Success
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 17
Waterfall Agile
The Old Triple Constraint
Scope is Fixed Quality is Fixed to High!
7 Phases of Scrum
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 19
Discovery
Release Planning
Sprint Planning
Daily Scrum
Develop/Test/Deploy
Sprint Demo
SprintRetrospect
ive
7 Phases of Scrum
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 20
Discovery
Release Planning
Sprint Planning
Daily Scrum
Develop/Test/Deploy
Sprint Demo
SprintRetrospect
ive
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 21
# Description
1 Login/Logout
2 Forgot Password
3 Change Password
4 View Account Summary
5 View Account Detail
6 Sort Detail by Date
7 Sort Detail by Check #
8 Sort Detail by Amount
Product Backlog
7 Phases of Scrum
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 22
Discovery
Release Planning
Sprint Planning
Daily Scrum
Develop/Test/Deploy
Sprint Demo
SprintRetrospect
ive
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 23
# Description Release
1 Login/Logout 1
2 Forgot Password 1
3 Change Password 1
4 View Account Summary 2
5 View Account Detail 2
6 Sort Detail by Date 3
7 Sort Detail by Check # 3
8 Sort Detail by Amount 3
Product Backlog
7 Phases of Scrum
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 24
Discovery
Release Planning
Sprint Planning
Daily Scrum
Develop/Test/Deploy
Sprint Demo
SprintRetrospect
ive
7 Phases of Scrum
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 25
Discovery
Release Planning
Sprint Planning
Daily Scrum
Develop/Test/Deploy
Sprint Demo
SprintRetrospect
ive
7 Phases of Scrum
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 26
Discovery
Release Planning
Sprint Planning
Daily Scrum
Develop/Test/Deploy
Sprint Demo
SprintRetrospect
ive
7 Phases of Scrum
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 27
Discovery
Release Planning
Sprint Planning
Daily Scrum
Develop/Test/Deploy
Sprint Demo
SprintRetrospect
ive
7 Phases of Scrum
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 28
Discovery
Release Planning
Sprint Planning
Daily Scrum
Develop/Test/Deploy
Sprint Demo
SprintRetrospect
ive
7 Phases of Scrum
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 29
Discovery
Release Planning
Sprint Planning
Daily Scrum
Develop/Test/Deploy
Sprint Demo
SprintRetrospect
ive
Nobody is specialized Resources are available for
many different tasks Communication between roles
and team members is high Team is empowered to
determine best way to get job done
Team organization
Self Organizing Cross Functional Teams
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 31
Increase Flexibility Increase Quality Decrease Cost Decrease Risk More Predictable Timelines
Benefits of Iterative Approach
Responsibilities
Users & Business Sponsor Developers and Testers
Defining Product Prioritizing Features Tracking Value
Estimating Delivering Quality
Decrease cost of change
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 33
Iteration1Features 1, 2, 3
Iteration 2 Features 5, 6, 7, 8
Iteration 2Features 4, 5
Scope changes allowed between iterations
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 34
Perfect Plan may not be the Best Plan
Embrace Flexibility
Perfect Plan
Best Plan
Increase quality
Testing occurs within each iteration keeping defects low
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 36
Poka Yoke: Mistake Proof
Increase Quality
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 37
Test Early (Unit testing) Test Often (Continuous regression
testing) Automate Tests (Testing a part of build
process) Design Software to be Testable (IOC)
Increase Quality
Test Driven Development
Decrease Cost
Rates of Feature Use in Software
Decrease Cost
Never used features are prioritized out of project
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 40
Define Value
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 41
Decrease Cost
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 42
Decrease Cost
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 43
Decrease Cost
Decrease Cost
1st Agile Release
Waterfall Release
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 45
Mistakes discovered earlier in process UAT performed upfront with more
customer involvement
Lower Risk
Decrease Risk
“Biggest risk in a project is building the wrong product.”
[Mike Cohn 2005]
How long will it take to implement 100 features?
What % complete are we?
How long did it take to implement 5 features?
How many tests are passing?
Predictive Means Empirical Means
More Predictable Timelines
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 47
Keys to Success and Challenges with Agile
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 48
Keys to success with Agile
Iteration scope must remain fixed Deliver high quality software at each
iteration“Team must meet their iteration
commitment”, Mary Poppendieck
Strong Product Management Strong interest from Business Owners
Challenges with Agile
Constant delivery
Constant planning
Getting sufficient time from Product Managers
Product Manager’s ability to prioritize features
Automated Testing Continuous Integration
Critical Agile Practices
Engineering Practices
Daily Standup (Scrum) Transparency To Customer Cross Functional Team Single Project Focus Per Iteration
Critical Agile Practices
Management Practices
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 53
Scrum Ken Schwaber and Jeff Sutherland
eXtreme Programming Kent Beck, Ward Cunningham, Ron Jeffries
Crystal Methods Alistair Cockburn
Feature Driven Development Jeff DeLuca
Dynamic Systems Development Method DSDM Consortium
Agile Methodologies
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 54
Agile Project Management Jim Highsmith, Sanjiv Augustine
Agile ManagementDavid Anderson
eXtreme Project ManagementRob Thomsett, Doug DeCarlo
Agile Management Frameworks
References and Recommended Reading
Agile Software Development with Scrum, Ken Schwaber
Lean Software Development, an Agile Toolkit, Mary Poppendieck
Agile Estimating and Planning, Mike Cohn
Managing the Development of Large Software Systems, Winston Royce
Standish Group Study Reported at XP2002, Jim Johnson
Irony of the Waterfall Approach
“…the implementation…is risky and invites failure….invariably a major redesign is required…and one can expect up to a 100% overrun in schedule and/or costs.”, [Royce 1970]
Questions?
04/19/23Tallan, Inc. Proprietary and Confidential. Copyright 2009 57
A Different Kind of Contract
Traditional IT Contract Tell us the exact scope that you want and we will
estimate the date and cost. If you change the scope, we will surely extend the date and increase the cost.
Agile Contract Let’s agree on a target delivery date and we will deliver
your highest‐priority features as efficiently as possible. Discoveries along the way should lead to a better product than you could have specified up front.
Agile Software Development 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.