Upload
binah
View
41
Download
1
Tags:
Embed Size (px)
DESCRIPTION
“Never Have Your Dog Stuffed is really advice to myself, a reminder to myself not to avoid change or uncertainty, but to go with it, to surf into change.” Alan Alda. Agile. Making it Work for You. Presenters. Agile – Making it Work for You Gary Wunrow – Program Manager, Sentry Insurance - PowerPoint PPT Presentation
Citation preview
1
AGILEMaking it Work for You
“Never Have Your Dog Stuffed is really advice to myself, a reminder to myself not to avoid change or uncertainty, but to go with it, to surf into change.”
Alan Alda
2
PRESENTERS Agile – Making it Work for You
Gary Wunrow – Program Manager, Sentry Insurance
Q&A Session Jim Stitzlein – Sr. VP & CIO, Sentry Insurance Jeff Sanner – IT Director of Digital Interactive,
Sentry Insurance Gary Wunrow
3
AGENDA What is Agile?
Definition Core Principles
Why Agile? Origin and Evolution
How is Agile done? Popular Methods
When should Agile be used and Who should use it? Implementation Options Considerations
Q&A with Gary, Jim and Jeff
4
WHAT IS AGILE?
“It is in the admission of ignorance and the admission of uncertainty that there is a hope for the continuous motion of human beings in some direction that doesn't get confined, permanently blocked, as it has so many times before in various periods in the history of man.”
Richard P. Feynman
5
WHAT IS AGILE?Merriam-Webster Definition
1: marked by ready ability to move with quick easy grace <an agile dancer>
2: having a quick,resourceful and adaptable character <an agile mind>
6
WHAT IS AGILE?Definition of Agile Software
DevelopmentAgile software development is a
group of software development methodologies based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross functional teams.
7
WHAT IS AGILE? Agile Values (Manifesto for Agile Software
Development) We are uncovering better ways of developing
software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over process and
tools Working software over comprehensive
documentation Customer collaboration over contract negotiation Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left even more
Source: www.agilemanifesto.org
8
WHAT IS AGILE?
Our highest priority is to satisfy the customer
through early and continuous deliveryof valuable software
Source: www.agilemanifesto.org
9
WHAT IS AGILE?
Welcome changing requirements, even late in development. Agile processes harness
change for the customer's competitive advantage.
Source: www.agilemanifesto.org
10
WHAT IS AGILE?
Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter timescale.
Source: www.agilemanifesto.org
11
WHAT IS AGILE?
Business people and developers must work
together daily throughout the project.
Source: www.agilemanifesto.org
12
WHAT IS AGILE?
Build projects around motivated individuals. Give them the environment and support they
need, and trust them to get the job done.
Source: www.agilemanifesto.org
13
WHAT IS AGILE?
The most efficient and effective method of conveying information to and within a
development team is face-to-face conversation.
Source: www.agilemanifesto.org
14
WHAT IS AGILE?
Working software is the primary measure of progress.
Source: www.agilemanifesto.org
15
WHAT IS AGILE?
Agile processes promote sustainable development. The sponsors, developers, and users should be
able to maintain a constant pace indefinitely.
Source: www.agilemanifesto.org
16
WHAT IS AGILE?
Continuous attention to technical excellence
and good design enhances agility.
Source: www.agilemanifesto.org
17
WHAT IS AGILE?
Simplicity--the art of maximizing the amount
of work not done--is essential.
Source: www.agilemanifesto.org
18
WHAT IS AGILE?
The best architectures, requirements, and designs
emerge from self-organizing teams.
Source: www.agilemanifesto.org
19
WHAT IS AGILE?
At regular intervals, the team reflects on how to become more effective, then tunes and
adjusts its behavior accordingly.
Source: www.agilemanifesto.org
20
WHAT AGILE IS NOT.A silver bullet for successA direct remedy for team/organizational issues
EasyA free for all
21
WHY AGILE?
“The quest for certainty blocks the search for meaning. Uncertainty is the very condition to impel man to unfold his powers.”
Erich Fromm
22
WHY AGILE? Understanding Engineering Methods
Predictive Methods
Adaptive (Empirical) Methods
23
WHY AGILE? Potential benefits of using an adaptive
method Reduced Cost Reduced time between concept and deployment Allows for system evolution Encourages engagement and builds trust with
the customer Fosters a healthy environment for developers to
work in Levels accountability
241940 1950 1960 1970 1980 1990 2000 2010 2020
Software Engineering Method Use Over Time
AdaptivePredecitve
Time
Prac
titio
ners
Predictive
WHY AGILE?
25
WHY AGILE? Summing it Up
Adaptive Methods (Agile Software Engineering) are not new
IT Capabilities during early business adoption drove the use of predictive methods (waterfall)
IT capabilities grew rapidly with the advent and proliferation of: Object-oriented design and programming The internet and communications bandwidth Personal computing
The emerging complexity of systems and software is driving business and the IT community back to adaptive methods
26
HOW IS AGILE DONE?
“Uncertainty is a sign of humility, and humility is just the ability or the willingness to learn.” Charlie Sheen
27
HOW IS AGILE DONE? Agile Methods
Extreme Programming (XP) Scrum Lean Software Development
Kanban Scaled Agile Framework Agile Modeling Adaptive Software Development Crystal Dynamic Systems Development Method (DSDM) Feature Driven Development (FDD) Unified Process (Rational or Agile) Microsoft Solutions Framework for Agile Software
Development
28
HOW IS AGILE DONE? Extreme Programming
Software Engineering Methodology & OOP practices
Values Communication Simplicity Feedback Courage Respect
29
HOW IS AGILE DONE? Extreme Programming
Practices Pair Programming Test Driven Development Refactoring Continuous Integration Small Releases Coding Standards Collective Code Ownership Simple Design
30
HOW IS AGILE DONE?
http://www.extremeprogramming.org
31
HOW IS AGILE DONE?
http://www.extremeprogramming.org
32
HOW IS AGILE DONE?
http://www.extremeprogramming.org
33
HOW IS AGILE DONE?
http://www.extremeprogramming.org
34
HOW IS AGILE DONE? Scrum
Management Methodology for Software Development
Values Collaboration Transparency Prioritization Focus Simplicity
35
HOW IS AGILE DONE? Scrum
Roles Product Owner Scrum Master Team(s)
Practices Backlog Management Release Management Sprint Planning Daily Scrum Sprint Closeout
36
HOW IS AGILE DONE?
http://www.scrumalliance.org
37
HOW IS AGILE DONE? Kanban
Management Method for Software Development Based on Just-In-Time lean manufacturing practices Values
Increase Flow Maximize resources Reduce work in progress (WIP) Process Improvement
Practices Backlog Management Kanban Board Step Limits Expedite Critical Features/Bugs Evaluation Cycles
38
HOW IS AGILE DONE?
http://www.kanbanblog.com
39
HOW IS AGILE DONE? Scaled Agile Framework (SAFe)
Organizational Framework for Agile Software Development Moving beyond agile for teams Governance Strategy
SAFe is published by Leffingwell, LLC. Leffingwell LLC owns trademarks and copywrite for the content. It is freely available at www.scaledagileframework.com
40
HOW IS AGILE DONE?
41
HOW IS AGILE DONE?
42
HOW IS AGILE DONE? Tying it all together (literally)
Extreme Programming provides a loose management wrapper with detailed development practices
Scrum is currently the most popular Agile management method
Kanban as gaining popularity due to its impact on productivity and focus on improvement
SAFe is a structured wrapper for Agile development that assists with scaling the concepts for larger organizations
The possibilities SAFe wrapped ScrumBanXP
43
WHEN SHOULD AGILE BE USED AND WHO SHOULD USE IT?
“Knowledge is an unending adventure at the edge of uncertainty.”
Jacob Bronowski
44
WHEN SHOULD AGILE BE USED AND WHO SHOULD USE IT? Reasons to Consider Agile
Need to streamline development process Need to shorten development lifecycle General process improvement Establish / Re-establish trust with business /
customer
45
WHEN SHOULD AGILE BE USED AND WHO SHOULD USE IT? Change Management Considerations
Transparency may be a shock to developers Team members need to be prepared to have
accountability and responsibility Customer / Business needs to accept and
participate in implementation Customer / Business needs to be prepared to
have accountability and responsibility Environment needs to be tolerant of failure Bad habits, practices and relationships will be
exposed
46
WHEN SHOULD AGILE BE USED AND WHO SHOULD USE IT? Implementation Steps
Get / Create an expert Understand the current state Build a business case
Includes choosing / defining the method Find a champion, or better yet, champions Define a Pilot Implementation (project,
department) No less that 4 months, no more than 9 months The expert should be directly involved in planning and
executing the pilot Training – IT Management, Team, Customer Learn and Mature through the pilot Create implementation plan for rest of
organization
47
WHEN SHOULD AGILE BE USED AND WHO SHOULD USE IT? Can Agile be implemented without business
support? Yes, but…
The expected improvements will not be as significant Iterative work cycles and related reporting can occur
without daily business involvement XP development and testing techniques can be
implemented in any iterative cycle Need to identify a Business / Customer surrogate Gains will still be found in productivity, quality and
design Herald your successes and continually try to engage
the business / customer in the process
48
WHEN SHOULD AGILE BE USED AND WHO SHOULD USE IT? How does one choose an agile method to
implement? Scrum is the most simple and straight forward
method to implement Talk to your customer to determine what is
important to them and make sure your implementation addresses those points specifically
The name of the method is least important Strive to incorporate all 12 agile disciplines At least incorporate 8 agile disciplines
49
WHEN SHOULD AGILE BE USED AND WHO SHOULD USE IT? Governance
Not formally addressed in most agile methods Need to address
Can be addressed in backlog or as part of the process Key Control Deliverables Project Tracking Configuration Management Change Control Risk & Issue Management Budget
50
WHEN SHOULD AGILE BE USED AND WHO SHOULD USE IT? Things to look out for:
Overzealous method evangelists Minimizing for the sake of minimizing Multi-tasking – waterfall wrapped in an iteration
51
THANK YOU
“Life is a series of natural and spontaneous changes. Don't resist them; that only creates sorrow. Let reality be reality. Let things flow naturally forward in whatever way they like.” Lao Tzu