You are on page 1of 37

Iterating Toward Agility and Scaling for

Business Success
Sponsored by MKS

Speakers:

Mike Cohn, Founder of Mountain Goat Software and Author of Succeeding with Agile: Software
Development using Scrum

Colin Doyle, Senior Product Manager of MKS


ADAPTing to Enterprise Agile

Mike Cohn
Mountain Goat Software

Copyright 2009, Mountain Goat Software


Some challenges you’ll face
• Mixing agile and traditional processes
• Compliance issues
– CMMI, SOX, ISO9001
• Large scale coordination and strategic
reuse within product lines
• Distributed teams
• Waterfallacies, agile phobias, and other
individual resistance
Copyright 2009, Mountain Goat Software
Copyright 2009, Mountain Goat Software
Awareness that the current approach isn’t
A working.

D Desire to change.

A Ability to work in an agile manner.

Promote early successes to build


P momentum and get others to follow.

Transfer the impact of agile throughout


T the organization so that it sticks.

Copyright 2009, Mountain Goat Software


Tools for building…
Awareness

• Communicate that there’s a problem


• Use metrics
• Provide exposure to new people and experiences
• Focus attention on the most important reason or
two for adopting agile
Desire
• Communicate that there’s a better way
• Create a sense of urgency
• Build momentum
• Get the team to take agile for a test drive
• Align incentives (or, at least, remove disincentives)
• Address any fears
• Help people let go
• Don’t discredit the past
• Engage everyone in the transition
Copyright 2009, Mountain Goat Software
Ability

• Provide coaching and training


• Hold individuals accountable
• Share information
• Set reasonable targets
• Just do it

Promotion

• Publicize success stories


• Take an agile safari
• Attract attention

Transfer

• Transfer the effects of agile beyond the current


group
• If you don’t transfer, organizational gravity will pull
you back to the status quo

Copyright 2009, Mountain Goat Software


Why adopting agile is hard
• It’s cannot be entirely bottom-up or top-
down
• The changes are pervasive
• Best practices are dangerous
• The end state is unpredictable
• Must be able to measure and demonstrate
the benefits of agile

Copyright 2009, Mountain Goat Software


Transitioning isn’t about closing gaps

Current Desired
State State Gaps?

• There is no end state in agile


• Your influence is non-deterministic
– You don’t know how the organization will respond
• Successful adopting agile is about achieving a fit
with the environment not closing gaps

Copyright 2009, Mountain Goat Software


Iterating Toward Agility

Copyright 2009, Mountain Goat Software


Enterprise Transition Community
• Creates a culture in which passion and
desire to improve thrive
• Does not direct the transition effort
– Provides energy, resources, support and
guidance
– Removes organizational impediments to
agility
• Encourages Improvement Communities to
form

Copyright 2009, Mountain Goat Software


ETC members
• Sponsor
– From highest level at which change is
supported
– Not a checkbook-only commitment
• Others
– From any level but driven by desire to
improve
• Disbands when the “transition” part of
adopting agile is over
Copyright 2009, Mountain Goat Software
ETC responsibilities
• Articulate the reasons for adopting agile
• Stimulate conversation
• Provide resources
• Engage everyone
• Set appropriate aspirations
• Anticipate and address people issues and
other impediments
• Encourage simultaneous focus on practices
and principles

Copyright 2009, Mountain Goat Software


An ETC’s improvement backlog
Item Responsible Note
Create an “Agile Office” where Jim (CTO) to talk this up at monthly
teams can get help. development meeting. Let’s see if
there’s any interest.
Establish an internal program for How do we identify good internal
developing ScrumMasters. candidates? How do we develop
them?
Collect and disseminate Scrum SC Savannah has expressed interest in
success stories in our company. this.
Resolve dispute with facilities JS Jim to talk to Ursula in facilities about
over rearranging second floor budget for this.
cubicles.
Get more teams to do AA Arie is going to summarize metrics
continuous integration. from T-Bone project and see how
many teams he can motivate.

Copyright 2009, Mountain Goat Software


Improvement communities (ICs)
• Form around the passion of a small
number of people
– Expand from there
• Do the real work of improving how the
organization implements agile
• Focus on goals with practical relevance
• Examples:
– ScrumMaster, Testing, Product Owner,
Continuous Integration

Copyright 2009, Mountain Goat Software


Working on an IC
• An IC works with a project team
– Work is not done in an ivory tower
• Most ICs work in 2–4-week iterations
• Disband or refocus when goal has been
achieved

Copyright 2009, Mountain Goat Software


ETC Improvement Backlog

Establish an internal program
for developing ScrumMasters.
… An IC Improvement Backlog
Figure out how to identify good
candidates to become ScrumMasters (in
addition to those who ask to participate in
this program).
Not everything on Establish an internal mentoring program.
an IC’s
Develop some internal classroom
improvement
training. Which courses? Who can teach
backlog needs to them? Can we license courses?
tie back to the
Get budget for next year for external
ETC’s backlog
coaching. How many days? At what
expected daily rate?
See what we can do with local user
groups to bring in speakers.

Copyright 2009, Mountain Goat Software


For more information
• New book available on
9 November
• About getting started
with agile/Scrum
– And then getting good
at it

Sample chapters at:


www.SucceedingWithAgile.com

Copyright 2009, Mountain Goat Software


Iterating Toward Agility and
Scaling for Business Success
Considerations for Making Enterprises More Agile

• Agility is based on a set of values that can be very different from


those that plan-driven approaches embody
• Focus is on delivering business value to the customer
• Adapting to change rather than following a plan
• Short feedback loops (defer commitments, deliver quickly once
committed)
• Empowering teams to be more collaborative and proactive
• Continuously improving practices and processes to reduce waste and
adapt to the changing environment and customer needs

• The cultural changes involved with transitioning to Agile or Lean


tend to be the biggest challenges
Considerations for Making Enterprises More Agile

• Adopting an Agile or Lean approach involves taking a more holistic


view of application development
• Plan-driven methodologies tend to be phased, with discipline silos
• Agile encourages concurrency, cohesive collaboration across all
application development disciplines
• Application Lifecycle Management supports application development
as a set of concurrent, interrelated processes and practices

• An ALM approach is essential to achieving true agility in the


enterprise

• Systems and tooling can significantly help or hinder the transition


to Agile within an enterprise environment
Intelligent ALM™
Enables Agility in the Enterprise
Enterprise Environments Have Many Axes of Scalability

• Scaling in terms of users, sites,


variety of platforms and tooling
• Breadth of product line (number
of product variants, the desire
for component re-use)
• Depth of product (number of
releases, historical requirements
that still apply)
• Regulatory compliance and
oversight constraints
• Other environmental constraints
(e.g. customers who supply
complex requirements
documents)
Agile Solutions for the Enterprise Require ALM

• ALM is the coordination of collaborative lifecycle development


activities, including requirements, design, development, build,
testing and deployment
• Intelligent ALM enables agility in the Enterprise in a variety of ways:
• Support for collaborative distributed development, with real-time status and
visibility across all artifacts and activities
• Improved consistency and reduced learning curve through definition and
enforcement of practices in the ALM tool
• Reduction in waste through automation of activities that don’t require
decision making
• Automated collection and reporting of metrics for continuous improvement;
• Flexible process framework that can support both plan-driven and agile
practices as well as the incremental shift from one to the other
• Reporting on progress of sprints and releases with the ability to aggregate
results from both plan-driven and agile projects
Competence is a Necessity for Enterprise Agile

Assess Define Design Code Test Release

Requirements Management

Test Management

Configuration and Change Management

Release Management

• Coverage of key ALM Business processes is called


competence and includes:
• Requirements Management
• Configuration and Change Management
• Test Management
• Release Management

25
Agile Prescribes Coherence

• Competence alone can’t


get you there
• Integrated is NOT sufficient
• Inherently connected Reqs Config Chg Test Rel
artifacts, processes, and Mgt Mgt Mgt Mgt Mgt
roles is called Coherence
Agile Prescribes Coherence

• Competence alone can’t


get you there
• Integrated is NOT
sufficient
• Inherently connected
artifacts, processes, and
roles is called Coherence

• Coherence is achieved via a single solution that orchestrates development


lifecycle activities through:
• Enforcement of processes (process control)
• Management of relationships between development artifacts (asset control)
• Reporting on progress of the development effort as a whole (visibility)
• Sophisticated artifact versioning, branching and re-use across all ALM artifacts
Enterprise Diversity Can Be an Agile Impediment

Heterogeneous environment

Large scale
& highly distributed

Software disconnected
from the business

• Adaptability is a competent & coherent solution that


• Adapts to the environment
• Scales to the enterprise
• Integrates with core business processes, enterprise applications and
business partners
In order to provide measurable business value.
Intelligent ALM  Intelligent Agility

ALM ALM ALM


Competence X Coherence X Adaptability X
Intelligent ALM Intelligent Agility

Intelligent ALM
ALM ALM ALM
Competence X Coherence X Adaptability
Measurable Business
Value
Distributed Development Support

• Support for distributed development requires:


• Artifacts and status of activities must be accessible in real-time by all team
members
• The ability to link artifacts and activities, easily navigate between them, and
be automatically notified when events of interest occur
• That tooling encourages collaboration and provides consistent interaction
across artifacts and activities to avoid silos (either by site or by discipline)
• Tooling to support concurrency (automatic isolation of independent tasks)
and collaboration (ease identification of dependencies, integration of changes
from parallel lines of development, coordination of dependent tasks)

31
Component Re-use Support

• Traditional Agile practices do not encourage component re-use


• Story Backlogs do not support the necessary dependency and
constraint management to ensure commonality across products and
concurrent releases
• Component re-use is more than just sharing source code
• Trusted components include all artifacts, from the requirements it
implements, to test cases and results demonstrating it can be trusted
• Intelligent ALM supports re-use in a variety of ways:
• Ability to easily link related artifacts, support for component configurations as
first class containers (versioned, branched, shared)
• Consistent change & configuration management processes across all artifacts
that make up the component
• Relationship navigation and reporting that aids impact & dependency analysis
Regulatory Compliance & Status Reporting Support
• Regulatory compliance requirements must still be met:
• FDA cGMP, including 21 CFR Part 11 (electronic records & signatures)
• Sarbanes-Oxley, SAS-70, Basel II

• Intelligent ALM systems can reduce the burden on Agile


implementations in a number of ways
• Explicit definition and automated enforcement of the (lightweight) processes
that form an Agile implementation
• All relevant artifacts and activities are managed within the ALM system
(competency), ensuring a single source of truth for reporting
• Consistent application of processes and practices, regardless of the role or
activity (coherence)
• A single system with the flexibility to support both plan-driven and Agile
implementations (adaptability), simplifying aggregate reporting and providing
clear evidence of the value and benefit of Agile

33
Compliance Example – Nutraceutical

• One of the largest manufacturers of


nutritional supplements sold in health
and natural food stores in the US
• Needed support for the principles and
processes of Agile but wanted
flexibility to support other key
business practices, build, test and
deploy activities and rules for audit
and compliance (FDA regulated)
• First built workflow types for Help
Desk and then for the Scrum process
• Releases, Iterations, User Stories and
Tasks are all supported along with
Tests
More Information

• Resources:
• Solution info: www.mks.com/solutions/agile_development
• White Paper: “Agile Development Doesn’t Have to Mean Fragile
Enterprise Process.” Download: www.mks.com/agilewp

• Contact Us:
– U.S. & Canada: 1 800 613 7535 or sales@mks.com
– U.K. & Northern Europe: 44 (0) 1483 733900
– Central & Southern Europe: 49 (0) 711 351775 0
– Scandinavia: 45 (0) 4420 9831
– Japan: +03 5789 5544
– Rest of World: (1) 519 884 2251
Thank you
www.mks.com
Q&A now in session.
Have a question for our speakers? Submit it now.

You might also like