SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
Agility @ Scale Whitepaper
February 2010




                             Scaling Agile: An Executive Guide




                             Scott W. Ambler
                             Chief Methodologist for Agile, IBM Rational
Agility @ Scale Whitepaper
Page 2




                                            Executive summary
                   Contents                 Agile software development is a highly collaborative, quality-focused approach
                                            to software and systems delivery, which emphasizes potentially shippable
    2 Executive Summary                     working solutions produced at regular intervals for review and course
    3 Introduction                          correction. Built upon the shoulders of iterative development techniques,
    4 Defining agile                        and standing in stark contrast to traditional serial or sequential software
    5 Criteria to determine if a team is    engineering methods, agile software delivery techniques hold such promise
       agile                                that IBM has begun to adopt agile processes throughout its Software Group,
    6 Scaling agile strategies at the       an organization with over 25,000 developers. But how can practices originally
       project level                        designed for small teams (10-12) be “scaled up” for significantly larger
   11 Scaling agile across your entire IT   operations? The answer is what IBM calls “agility@scale.”
       department
   13 The relationship between Agile and    There are two primary aspects of scaling agile techniques that you need to
       Lean                                 consider. First is scaling agile techniques at the project level to address the
   15 What improvements should you          unique challenges individual project teams face. This is the focus of the Agile
       realistically expect?                Scaling Model (ASM). Second is scaling your agile strategy across your entire
   17 Using an accelerated approach         IT department, as appropriate. It is fairly straightforward to apply agile on a
   18 What challenges should you            handful of projects, but it can be very difficult to evolve your organizational
       expect?                              culture and structure to fully adopt the agile way of working.
   19 Parting Thoughts
   20 Acknowledgements                      The Agile Scaling Model (ASM) defines a roadmap for effective adoption and
   20 About the Author                      tailoring of agile strategies to meet the unique challenges faced by a software
                                            and systems delivery team. Teams must first adopt a disciplined delivery
                                            lifecycle that scales mainstream agile construction techniques to address the
                                            full delivery process, from project initiation to deployment into production.
                                            Then teams must determine which scaling factors – team size, geographical
                                            distribution, regulatory compliance, domain complexity, organizational
                                            distribution, technical complexity, organizational complexity, or enterprise
                                            discipline, if any — are applicable to a project team and then tailor their
                                            adopted strategies accordingly to address their specific range of complexities.


                                            When scaling agile strategies across your entire IT organization you must
                                            effectively address five strategic categories — the Five Ps: People, principles,
                                            practices, process, and products (i.e., technology and tooling). Depending
                                            on your organizational environment the level of focus on each area will vary.
                                            What we are finding within many organizations, including IBM, is that the
                                            primary gating factor for scaling agile across your entire organization is your
                                            organization’s ability to absorb change.
Agility @ Scale Whitepaper
Page 3




                                               Introduction
                  Highlights                   Agile software development is an evolutionary, highly collaborative, disciplined,
                                               quality-focused approach to software development and delivery, whereby poten-
                                               tially shippable working software is produced at regular intervals for review
                                               and course correction. Agile software development processes1 include Scrum,
                                               Extreme Programming (XP), Open Unified Process (OpenUP), agile instantia-
                                               tions of Rational Unified Process (RUP), and Agile Modeling (AM), to name a
   In the IBM Rational organization,           few. In the IBM Rational organization, we’ve used agile and iterative techniques
   we've used agile and iterativeIn the        internally for many years, and the IBM Global Services and Rational organizations
   IBM Rational organization, we've            have been working together to help many of our customers apply these techniques
   used agile and iterative techniques         within their own environments, often under complex conditions at scale. Agile
   internally for many years, and the          techniques held such promise that beginning in mid-2006 an explicit program
   IBM Global Services and Rational            was put in place to adopt these processes on a wide-scale basis throughout IBM
   organizations have been working             Software Group, an organization with over 25,000 developers.
   together to help many of our
   customers apply these techniques            Agile software development techniques have taken the industry by storm, with 76%
   within their own environments.              of organizations reporting in 2009 that they had adopted agile techniques, and that
                                               on average 44% of the project teams within those organizations had adopted one
                                               or more techniques [1]. Agile development is becoming widespread because it
                                               works well – organizations are finding that agile and iterative project teams, when
                                               compared to traditional project teams, enjoy higher success rates, deliver higher
                                               quality, have greater levels of stakeholder satisfaction, provide better return on
                                               investment (ROI), and deliver systems to market sooner [2]. By following quality
                                               techniques such as refactoring and developer regression testing throughout the
                                               lifecycle, agilists are able to progress safely and surely, increasing their productivity.
                                               By working closely with stakeholders in an iterative manner they have a better
                                               understanding of what stakeholders actually need and are more likely to deliver
                                               solutions that people actually want to use for their business purposes. By working
   Agile approaches are being used in a        in priority order, agile teams are able to provide the greatest return on investment
   wide range of situations, not just the      as defined by their stakeholders. In short, agile teams work smarter, not harder, and
   small, co-located team environments         thereby achieve better results.
   that dominate the early agile literature.
                                               As you will learn later in this paper, agile approaches are being used in a wide
                                               range of situations, not just the small, co-located team environments that domi-
                                               nate the early agile literature.2 Agile strategies are being applied throughout the
                                               entire software delivery lifecycle, not just the construction (software coding and
                                               compiling) phase, and very often in very complex environments that require far
                                               more than a small, co-located team armed with a white board or a stack of index
Agility @ Scale Whitepaper
Page 4




                                          cards. Every project team finds itself in a unique situation, with its own goals,
                 Highlights               abilities, and challenges. What they have in common is the need to adopt, and
                                          then tailor, agile methods, practices, and tools to address those unique situations.

                                          This paper looks at our experiences gained while applying agile/iterative
                                          strategies and techniques in organizations around the world, often at a
                                          scale far larger than the techniques were pioneered for. It begins with our
                                          definition of what it means to be agile; it summarizes the Agile Scaling
                                          Model (ASM) and explores the scaling factors which your project teams often
                                          face; it provides advice for how to adopt agile strategies across your entire IT
                                          department; and ends with a discussion of the types of benefits which you
                                          may expect to achieve by doing so.



                                          Defining agile
                                          Many people point to the value statements of the Agile Manifesto3 as a
                                          definition for agile development. Although these values are very good
                                          foundational philosophies, they were never really meant to be a definition. In
                                          fact, the agile community has never really settled on a definition nor does it
                                          appear that they will do so any time soon. The Rational organization has its
                                          own description for what we call “disciplined agile delivery”:
   Disciplined agile delivery is
   performed in a highly collaborative,     Disciplined agile delivery is an evolutionary (iterative and incremental)
   disciplined, and self-organizing         approach that regularly produces high-quality solutions in a cost-effective
   manner within an appropriate             and timely manner via a risk and value-driven lifecycle. It is performed in
   governance framework, with active        a highly collaborative, disciplined, and self-organizing manner within an
   stakeholder participation.               appropriate governance framework, with active stakeholder participation
                                            to ensure that the team understands and addresses the changing needs of its
                                            stakeholders. Disciplined agile delivery teams provide repeatable results by
                                            adopting just the right amount of ceremony for the situation which they face.


                                          Here is a more concise though less robust definition:


                                            Disciplined agile delivery is a highly collaborative, evolutionary, self
                                            organizing, and governed approach that regularly produces high-quality
                                            solutions in a cost-effective and timely manner via a risk and value driven
                                            lifecycle.


                                          I’ll return to the elements of this definition a bit later.
Agility @ Scale Whitepaper
Page 5




                                              Criteria to determine if a team is agile
                  Highlights                  A common problem in many organizations is that undisciplined “ad-hoc” teams
                                              often claim to be agile, because they’ve read an article or two about agile devel-
                                              opment, and interpret agility to mean any cool, liberated form of undocumented
                                              software creativity. These ad-hoc teams often run into trouble, and give actual
                                              agile teams a bad name. IBM Rational defines the following five criteria to deter-
   Undisciplined "ad-hoc" teams often         mine if a team is truly agile:
   run into trouble, and give actual agile
   teams a bad name.                          1.   Working software - Agile teams produce working software on a regular basis,
                                                   typically in the context of short, stable, time-boxed iterations.
                                              2.   Active stakeholder participation - Agile teams work closely with their stake-
                                                   holders, ideally on a daily basis.
                                              3.   Regression testing - Agile teams do, at a minimum, continuous developer
                                                   regression testing.4 Disciplined agile teams take a Test-Driven Development
                                                   (TDD) approach.
                                              4.   Organization - Agile teams are self-organizing, and disciplined agile teams
                                                   work within an appropriate governance framework at a sustainable pace.
                                                   Agile teams are also cross-functional “whole teams,” with enough people with
                                                   the appropriate skills to address the goals of the team.
   Because every team finds itself in a       5.   Improvement - Agile teams regularly reflect on5, and disciplined teams also
   unique situation, they must be flexible         measure, how they work together and then act to improve on their findings
   in the way that they assess their agil-         in a timely manner.
   ity. The real goal is to be as effective
   as possible given the situation.           An important aspect of these criteria is that they are flexible. Note the terms
                                              used in the description of the criteria – regular basis, closely, continuous, appro-
                                              priately, regularly, timely; they are all situational in nature. For example, for some
                                              teams “regular basis” might be once every week, for other teams in more complex
                                              situations once every six weeks. Because every team finds itself in a unique situ-
                                              ation, they must be flexible in the way that they assess their agility. The real goal
                                              is to be as effective as possible given the situation.
Agility @ Scale Whitepaper
Page 6




                                         Scaling agile strategies at the project level
                  Highlights             The Agile Scaling Model (ASM) [3] is a contextual framework for effective
                                         adoption and tailoring of agile practices to meet the unique challenges faced by
                                         a system delivery team of any size. Figure 1 overviews the ASM, depicting how
   Whether you are on a mainframe        the ASM distinguishes between three scaling categories: Core agile development,
   team writing COBOL code for a         disciplined agile delivery, and agility at Scale. IBM Rational advocates disciplined
   bank, software running on millions    agile delivery as the minimum that your organization should consider if it wants
   of mobile phones, or e-commerce       to succeed with agile techniques – whether you are on a mainframe team writ-
   code running on the Web, your team    ing COBOL code for a bank, software running on millions of mobile phones,
   should still follow a full delivery   or e-commerce code running on the Web, your team should still follow a full
   lifecycle in a disciplined manner.    delivery lifecycle in a disciplined manner. You may not be there yet, still in the
                                         learning stages. But our experience is that you will quickly discover how one or
                                         more of the scaling factors is applicable, and as a result need to change the way
                                         you work.




                                         Fig 1. Overview of the Agile Scaling Model (ASM)   6
Agility @ Scale Whitepaper
Page 7




                                            The first step in scaling agile approaches is to move from partial methods
                  Highlights                to a full-fledged, disciplined agile delivery process. This is a theme echoed
                                            by the Software Engineering Institute (SEI) in their work on applying agile
                                            and Capability Maturity Model Integration (CMMI) together [20]. Main-
                                            stream agile development processes and practices, of which there are many,
                                            have certainly garnered a lot of attention in recent years. They’ve motivated
                                            the IT community to pause and consider new ways of working, and many
                                            organizations have adopted and been successful with them. However, these
   The first step in scaling agile          mainstream strategies (such as Extreme Programming (XP) or Scrum, which
   approaches is to move from partial       the ASM refers to as core agile development strategies) are never sufficient on
   methods to a full-fledged, disciplined   their own.
   agile delivery process. Mainstream
   strategies (such as Extreme              To recognize why this is so, compare the Scrum lifecycle of Figure 2 with
   Programming (XP) or Scrum, which         the disciplined agile delivery lifecycle [4] of Figure 3. In addition to using
   the ASM refers to as core agile          sensible terminology (for example, nobody “sprints” through a 10 kilometer
   development strategies) are never        race), the disciplined agile delivery lifecycle expands upon the Scrum life-
   sufficient on their own.                 cycle in three important ways:


                                            1.   It has explicit project phases, recognizing that agile delivery is really
                                                 iterative in the small and serial in the large [5] – Figure 3 explicitly
                                                 recognizes that there is additional effort to coordinate teams at incep-
                                                 tion and additional effort to package/transition and release the product
                                                 to production which the Scrum lifecycle of Figure 2 doesn’t take into
                                                 account.
                                            2.   It specifies practices as well as the project management framework.
                                                 Scrum components/aspects of the project management framework and
                                                 leaves practice selection to the teams. Disciplined agile includes ini-
                                                 tial requirements and architecture envisioning at the beginning of the
                                                 project to increase the chance of building the right product in the right
                                                 manner as well as system release practices.
                                            3.   It includes more robust practices. The lifecycle of Figure 3 explicitly
                                                 reworks the product backlog of Figure 2 into the more accurate con-
                                                 cept of a ranked work item list. Not only do delivery teams implement
                                                 functional requirements, they must also fix defects (found through
                                                 independent testing or by users of existing versions in production), pro-
                                                 vide feedback on work from other teams, take training courses, and so
                                                 on. Instead of leaving these issues up to the development teams to work
                                                 through, disciplined teams start with a strategy which addresses them
                                                 from the very beginning.
Agility @ Scale Whitepaper
Page 8




                             Fig 2. Scrum construction lifecycle




                             Fig 3.Agile system delivery lifecycle
Agility @ Scale Whitepaper
Page 9




                                             Many organizations will develop their own disciplined agile delivery process(es)
                 Highlights                  by combining Scrum, practices from XP, and (sometimes unknowingly) practices
                                             from other processes such as Agile Modeling. This strategy works, although it can
                                             be expensive and time consuming compared to starting with a full disciplined
                                             agile delivery process. Many teams I’ve worked with would have greatly benefited
                                             by starting with an existing, more disciplined process such as the Open Unified
                                             Process (OpenUP), Dynamic System Development Method (DSDM), or the Eclipse
                                             Way, all widely available methodologies for team-based software delivery.

   In the early days, projects managed       The second step to scaling agile is to assess the degree of complexity your team
   via agile techniques were small in        faces. In the early days, projects managed via agile techniques were small in
   scope and relatively straightforward.     scope and relatively straightforward. Small, co-located teams using mainstream
   Today, the picture has changed            processes still get the job done in these situations. Today, the picture has changed
   significantly, and larger organizations   significantly, and larger organizations want to apply agile development to a broader
   want to apply agile development to a      set of projects. They require large teams; they want to leverage a distributed work
   broader set of projects.                  force; they want to partner with other organizations; they need to comply with
                                             regulations and industry standards; they have significant technical or cultural
                                             environmental issues to overcome; and they want to go beyond the single-system
                                             mindset and truly consider cross-system enterprise issues effectively. Not every
                                             project team faces all of these scaling factors to the same extent, but these are the
                                             primary factors that add complexity to your situation. That’s why your disciplined
                                             agile delivery process needs to adapt.


                                             In addition to scaling your lifecycle to address the full range of needs for solu-
                                             tion delivery, there are eight more scaling factors that may be applicable, as
                                             shown in Figure 4. Each factor represents a range of possibilities, from simple to
                                             complex. For each factor the simplest situation is on the left-hand side and the
                                             most complex situation on the right-hand side. When a project team finds that all
                                             eight factors are close to the left (simple), then their project can be managed in a
                                             disciplined agile delivery mode. But when one or more scaling factors moves to
                                             the right, they are in an agility at scale situation. To address these scaling factors
                                             you will need to tailor your disciplined agile delivery practices and in some situa-
                                             tions adopt a handful of new practices to address the additional risks that you face
                                             at scale.
Agility @ Scale Whitepaper
Page 10




                             Fig 4.Potential scaling factors for disciplined agile delivery


                             Within the range of complexities shown in Figure 4, teams will need to tailor
                             practices and tools to reflect their situation. The first four scaling factors
                             listed – team size, geographical distribution, regulatory compliance, and
                             organizational distribution – are relatively straightforward to address via dis-
                             ciplined work, adoption of appropriate technology, and tailoring of practices
                             to reflect the realities of each scaling factor. The other four scaling factors
                             – domain complexity, technical complexity, organizational complexity, and
                             enterprise discipline – are more difficult to address because environmental
                             complexity often reflects systemic challenges within your organization and
                             enterprise discipline requires a level of maturity that many organizations
                             struggle to achieve (although most desire such discipline).
Agility @ Scale Whitepaper
Page 11




                                               Scaling agile across your entire IT department
                  Highlights                   While it may be tempting to begin adopting agile techniques via a small pilot
                                               project or two, Walker Royce, Chief Software Economist at IBM Rational
                                               offers a bold suggestion: The best way to ensure success is to assign a crack
                                               team with a mission critical project using agile/iterative techniques. Perhaps
   While it may be tempting to begin           this explains much of the success of disciplined agile teams. However, suc-
   adopting agile techniques via a small       cessful process improvement across all or most of an IT entire organization
   pilot project or two, the best way to       can prove difficult in practice, often because casting a wider net draws a
   ensure success is to assign a crack         wider range of challenges.7
   team with a mission critical project
   using agile/iterative techniques.           I’ve found that to be successful scaling agile techniques across your entire IT
                                               department that you must address five areas, what I call the “5 Ps” of IT: people,
                                               principles, practices, products, and processes.8 Here they are, in order of impor-
                                               tance:
                                               1. People - People and the way they work together have a greater effect on the
                                                     outcomes of a project than the processes they’re following or the products
                                                     (tools and technologies) that they’re using.
                                               2. Principles - An effective set of principles, some organizations use the term
                                                     philosophies, provides a foundation to help you keep things together even
                                                     when the environment is shifting underneath you.
                                               3. Practices- A practice is a self-contained, deployable component of a process
                                                     [14]. Examples of agile practices include test-driven development (TDD),
                                                     daily stand-up meetings, requirements envisioning, database refactoring,
                                                     continuous integration, shared vision, and user-story driven development
                                                     to name a few. The prevailing strategy within the agile community is for
                                                     project teams to adopt and then tailor these small, cohesive practices to meet
                                                     the unique needs which their project team finds themselves in.
   I’ve found that to be successful scal-      4. Products - The IBM Jazz platform (www.jazz.net) provides a tailorable tooling
   ing agile techniques across your                  eco-system which reflects the realities of agility at scale. Although simple,
   entire IT department that you must                point-specific products work well in the straightforward situations faced by
   address five areas, what I call the “5            disciplined agile delivery teams, such teams working at scale quickly find
   Ps” of IT: people, principles, practices,         that they need integrated tools which support collaboration and which are
   products, and processes.                          instrumented to support automated reporting (to support appropriate govern-
                                                     ance).
                                               5. Processes - The previous 4Ps do not exist in a vacuum, we need some sort
                                                     of glue to help piece all of this together. Minimally this glue is a lifecycle,
                                                     such as the one in Figure 3, although more often than not it is a process or
                                                     method.
Agility @ Scale Whitepaper
Page 12




                                            Understanding the five Ps of IT, and being prepared to address them is a good
                  Highlights                start, but note that any medium to large organization is doing many things in
                                            parallel, making planning and coordination difficult. IBM Rational takes a meas-
                                            ured improvement approach to help organizations improve their system delivery
                                            effectiveness. This strategy typically includes an initial “health check” assessment
                                            called which helps you to navigate and select the right subset of practices, define
                                            your current capability (an “as-is” measure), a target capability improvement
                                            (a “to-be” measure), and a roadmap for you to get from where you are today to
   We help the organization make            your target improvement with measurable feedback all along the route. We then
   the appropriate improvements by          help the organization make the appropriate improvements by leveraging training
   leveraging training materials, process   materials, process definitions, and tooling guidance, all of which can be tailored
   definitions, and tooling guidance, all   to the unique needs of an organization to give them a head start on their process
   of which can be tailored to the unique   improvement efforts. The measured improvement approach is intended to resolve
   needs of an organization to give         the two predominant failure patterns of past process improvement initiatives,
   them a head start on their process       either self-inflicting too much process (rather than a subset of incremental prac-
   improvement efforts.                     tices) or employing subjective rather than objective measures of progress.


                                            You must also explicitly manage your process improvement efforts. It’s fairly easy
                                            to succeed at a handful of pilot projects; it’s a bit more difficult to permanently
                                            adopt meaningful process improvements across your IT organization. A common
                                            strategy is for a team to regularly reflect on their approach to identify potential
                                            improvements, and then hopefully act on those improvements. Within IBM, we’ve
                                            found that teams who explicitly track their progress at adopting improvements
                                            are more successful than those who don’t. We’ve developed tooling called IBM
   Within IBM, we’ve found that teams       Rational SelfCheck which helps teams do exactly this [15]. Reflections/retrospec-
   who explicitly track their progress at   tives at the team level work well in practice, but you need more at the IT depart-
   adopting improvements are more suc-      ment level. You also need a funded, continuous improvement program across your
   cessful than those who don’t.            delivery organization that leverages a mix of iteration reflections and practitioner
                                            input to constantly improve your baseline agile delivery process. Without that,
                                            agile teams in various lines of business may re-invent the wheel and go through
                                            unnecessary pain.
Agility @ Scale Whitepaper
Page 13




                                          The relationship between Agile and Lean
                 Highlights               As I discussed earlier, you want to adopt a set of principles that reflect your
                                          unique situation to provide a guiding foundation for your delivery efforts. Many
                                          organizations are starting with lean principles to provide such guidance. In
                                          Implementing Lean Software Development [10], Mary and Tom Poppendieck
                                          show how the seven principles of Lean Manufacturing can be applied to optimize
                                          the whole IT value stream. These principles are:

   Many organizations are starting with   1.   Eliminate waste - Lean thinking advocates regard any activity that does
   lean principles to provide a guiding        not directly add value to the finished product as waste. The three biggest
   foundation for delivery efforts.            sources of waste in software development are the addition of unrequired
                                               features, project churn and crossing organizational boundaries (particularly
                                               between stakeholders and development teams). To reduce waste it is critical
                                               that development teams be allowed to self organize and operate in a manner
                                               that reflects the work they’re trying to accomplish. Walker Royce argues in
                                               “Improving Software Economics” [21] that the primary benefit of modern
                                               iterative/agile techniques is the reduction of scrap and rework late in the
                                               lifecycle.
                                          2.   Build in quality - Your process should not allow defects to occur in the first
                                               place, but when this isn’t possible you should work in such a way that you
                                               do a bit of work, validate it, fix any issues that you find, and then iterate.
                                               Inspecting after the fact, and queuing up defects to be fixed at some time
                                               in the future, isn’t as effective. Agile practices which build quality into your
                                               process include test driven development (TDD) and non-solo development
                                               practices such as pair programming and modeling with others.
                                          3.   Create knowledge- Planning is useful, but learning is essential. You want to
                                               promote strategies, such as iterative development, that help teams discover
                                               what stakeholders really want and act on that knowledge. It’s also important
                                               for a team to regularly reflect on what they’re doing and then act to improve
                                               their approach.
                                          4.   Defer commitment - It’s not necessary to start software development by defin-
                                               ing a complete specification, and in fact that appears to be a questionable
                                               strategy at best [11]. You can support the business effectively through flexible
                                               architectures that are change tolerant and by scheduling irreversible deci-
                                               sions to the last possible moment. Frequently, deferring commitment requires
                                               the ability to closely couple end-to-end business scenarios to capabilities
                                               developed in multiple applications by multiple projects.
Agility @ Scale Whitepaper
Page 14




                                           5.   Deliver quickly - It is possible to deliver high-quality systems quickly. By
                  Highlights                    limiting the work of a team to its capacity, which is reflected by the team’s
                                                velocity,9 you can establish a reliable and repeatable flow of work. An effec-
                                                tive organization doesn’t demand teams do more than they are capable of, but
                                                instead asks them to self-organize and determine what they can accomplish.
                                                Constraining these teams to delivering potentially shippable solutions on a
                                                regular basis motivates them to stay focused on continuously adding value.
                                           6.   Respect people - The Poppendiecks also observe that sustainable advantage
                                                is gained from engaged, thinking people. The implication is that you need a
                                                governance strategy that focuses on motivating and enabling IT teams—not
                                                on controlling them [12].
                                           7.   Optimize the whole - If you want to be effective at a solution you must look at
                                                the bigger picture. You need to understand the high-level business processes
                                                that individual projects support—processes that often cross multiple systems.
                                                You need to manage programs of interrelated systems so you can deliver a
                                                complete product to your stakeholders. Measurements should address how
                                                well you’re delivering business value, because that is the sole reason for your
                                                IT department.


                                           Lean thinking is important to agility in several ways. First, lean provides an
   Agile Modeling's practices of           explanation for why many of the agile practices work. For example, Agile Mod-
   light weight, initial requirements      eling’s practices of light weight, initial requirements envisioning followed by itera-
   envisioning followed by iteration       tion modeling and just-in-time (JIT) model storming work because they reflect
   modeling and just-in-time (JIT) model   deferment of commitment regarding what needs to be built until it’s actually
   storming work because they reflect      needed, and the practices help eliminate waste because you’re only modeling what
   deferment of commitment regarding       needs to be built. Second, these principles offer insight into strategies for improv-
   what needs to be built until it's       ing your software process. For example, by understanding the source of waste in
   actually needed.                        IT you can begin to identify it and then eliminate it. Third, these principles pro-
                                           vide a philosophical foundation for scaling agile approaches. Fourth, value stream
                                           mapping – a technique common within the lean community whereby you model
                                           a process and then identify how much time is spent on value-added work versus
                                           wait time – helps calculate overall time efficiency of what you’re doing. Value
                                           stream maps are a straightforward way to illuminate your IT processes, providing
                                           insight into where significant problems exist.10
Agility @ Scale Whitepaper
Page 15




                                            What improvements should you realistically expect?
                 Highlights                 I am often asked what kind of benefits to expect from adopting agile approaches.
                                            While the surveys11 I have conducted over the years consistently show that agile
                                            and iterative approaches provide better quality, greater stakeholder satisfaction,
                                            better return on investment, and better time to value than traditional techniques,
                                            [2] I am invariably asked: “How much better?” and “How much will we ben-
                                            efit?” As you may suspect, I can’t provide exact answers to these questions, but
                                            I can provide a framework for understanding the potential benefits of adopting
                                            agile across your IT organization.


                                            You’ve probably heard some “wild claims” in agile case studies of productivity
                                            improvements of 50%, 75%, 100%, and sometimes more. If in your organization
                                            you see lower productivity improvements than this, don’t worry; this doesn’t sug-
                                            gest failure. Although I have no doubt that many of these claims are reasonably
   It is best for teams actually involved   correct (I myself have seen some impressive improvements at organizations that
   with the details of project progress     I’ve work with), it is best for teams actually involved with the details of project
   to measure key improvement factors       progress to measure key improvement factors and not simply rely on gut feel (and
   and not simply rely on gut feel (and     not rely on outside consultants hired to achieve the benefits!).
   not rely on outside consultants hired
   to achieve the benefits!)                Both IBM Rational and the Accelerated Solution Delivery Practice12 within IBM
                                            Global Services have been helping organizations improve their internal IT proc-
                                            esses for years, in particular based on iterative and/or agile strategies. Depend-
                                            ing on the situation which the client finds itself in, we may recommend either
                                            a continuous process improvement strategy, which IBM Rational focuses on; an
                                            accelerated improvement strategy, which the ASD practice focuses on; or a com-
                                            bination of both approaches as part of a broader initiative. First, with the continu-
                                            ous strategy you adopt a few techniques at a time, absorb them, learn from your
                                            experiences, and then iterate. Table 2 summarizes what we believe to be realistic
                                            expectations by taking this approach, based on our actual experiences helping our
                                            customers.
Agility @ Scale Whitepaper
Page 16




                                        Table 2. Realistic improvements when adopting agile widely
              Highlights
                                         Success Criteria               Year 1                 Year 2        Year 3
                                         Quality                        3-5% fewer             3-5% fewer    3-5% fewer
                                                                        defects                defects       defects
                                         Labor costs                    2-3% improvement       4-5%          4-5%
                                                                                               improvement   improvement
                                         Time to Value                  5% faster              10% faster    5% faster     —
                                         Delivered Fiunctionality       5% improved            5% improved   5% improved
                                                                        accuracy               accuracy      accuracy


                                        There are several important points that I need to make about the numbers shown
                                        in Table 2:
                                        1. They are for large-scale agile adoption across most or all of an IT organiza-
                                            tion. Not everyone is going to be the highly skilled, highly motivated people
                                            you put on your pilot projects.
                                        2. They are very conservative, as I’m a firm believer in under promising and
                                            over delivering. We’ve had several customers who have done much better
                                            than this using an aggressive adoption approach which received significant
                                            support from all aspects of the organization. So, as the agile community likes
                                            to say, “your mileage may vary” (YMMV).
                                        3. The results are for year on year. For example, you should hopefully see a
                                            3-to-5% improvement in quality the first year, another 3-to-5% improvement
                                            the next year, and so on. The most last process improvement occurs gradu-
The primary determinant of success          ally over time, in small increments, a Japanese concept called kaizen.
is your leadership. Whatever your
current situation, you need to choose   The primary determinant of success is your leadership. Whatever your current
to make the often difficult changes     situation, you need to choose to make the often difficult changes that enable your
that enable your organization to        organization to improve. Change is uncomfortable, the implication being that
improve.                                not everyone is going to be happy with moving to agile. You will not achieve even
                                        these conservative benefits unless you’re willing to make them happen. Further-
                                        more, you will need to parameterize and measure the impact of the changes. As
                                        the process change moves forward, one of the keys will be the ability to prove
                                        “that the gain is worth the pain.”
Agility @ Scale Whitepaper
Page 17




                                         Table 3 presents a complementary view to Table 2 by examining four potential
                Highlights               improvement strategies (which could be combined). As with Table 2, the figures
                                         in Table 3 reflect the experiences of IBM Rational consultants helping organiza-
                                         tions to improve their approach to IT [21]. Improving automation, collaboration,
                                         and improving your process are all relatively short term endeavors with modest,
                                         although not unsubstantial, potential for productivity increase. The strategy with
                                         greatest potential — increasing the flexibility in your approach to IT and the
                                         way in which you make IT investments — has the greatest cultural impact on
                                         your organization because it often requires a paradigm shift in how the business
                                         perceives IT.
The strategy with greatest potential
— increasing the flexibility in your     Table 3. Comparing potential improvement strategies

approach to IT and the way in which
you make IT investments — has the         Improvement              Cost to          Potential     Timeframe   Cultural
greatest cultural impact on your          Strategy                 implement        Improvement               Impact
organization because it often requires
a paradigm shift in how the business      Improve Automation       <5%              5-25%         Weeks       Very Low
perceives IT.                             Improve                  5-10%            15-35%        Months      Low
                                          Collaboration
                                          Improve Process          10-35%           25-100%       Quarters    Some


                                          Increase Flexibility     25-50%           2x-10x        Years       High
                                          and Investment
                                          Value


                                         Using an accelerated approach
                                         The ASD practice has been delivering a mix of rapid/agile/lean development
                                         services with clients for over ten years, including high-performance agile delivery
                                         centers, turn-key project delivery, and assessments of troubled client implementa-
                                         tions. They’ve frequently used an accelerated approach, where you adopt a larger
                                         number of agile practices at once and support this adoption by bringing mentors
                                         to help guide agile delivery and transfer skills to the staff. This leads to much
                                         higher productivity improvements, but it requires you to partner closely with the
                                         ASD mentors at all levels within your organization and commit to a more aggres-
                                         sive accelerated program – in other words, there’s quicker gain from greater focus.
                                         Their analysis over hundreds of agile projects that they’ve been involved with is
                                         that the more agile techniques you use, the better the aggregate results.
Agility @ Scale Whitepaper
Page 18




                                                IBM Rational and the ASD practice have been working together to optimize our
                    Highlights                  collective assets, and jointly engage where the client desires a mix of practice
                                                improvement, tooling and want to take a more aggressive approach to optimiza-
                                                tion.


                                                Table 2 addresses the factors which you may want to consider when calculat-
                                                ing productivity. If your organization supports a domain where delivery time is
   Look at What’s Changing: A Lesson            paramount, then your calculation of productivity improvement would be highly
   from Physics                                 weighted towards the time-to-value statistics and your process improvement
   The best indicators in software are          efforts would be similarly skewed towards techniques for reducing overall delivery
   measurements of what’s changing. For         time. If all of these factors are equally important, then your productivity improve-
   example, an easy way to determine the        ment in the first year could potentially be 19% 13 – we’ve seen more than double
   productivity improvement of an agile         this on pilot projects, for the reasons discussed earlier, although across an entire
   team is to calculate its acceleration,       IT department the average seems to be 6 to 8% per annum. The critical observa-
   the change in its velocity over time         tion is that the way you calculate productivity improvement is situational.
   [16]. Agile teams already calculate
   their velocity, the number of points of      Part of being a leader is that sometimes you need to take a leap of faith that your
   functionality that they can deliver each     vision — in this case, your move to adopt the scaling of agile techniques across
   iteration, for estimation and planning       your IT department — is a good one. There are no easy fixes, no “silver bullets”
   purposes, and acceleration is simple         to slay the IT productivity werewolf, regardless of what some of the agile market-
   calculation based on that information.       ers may imply. Slow and steady wins the process improvement race.
   Acceleration doesn’t tell you the exact
   levels of productivity, something that
   is expensive to calculate, but it is a       What challenges should you expect?
   virtually free estimate of the change in     As I discussed earlier, the adoption of agile approaches within most organiza-
   productivity. Better yet, the acceleration   tions, including IBM, typically begins with a grass roots movement. The people
   across your entire department can be         involved self select themselves, they’re often highly motivated to try new things
   easily calculated as a weighted average      and learn from their experiences, and more often than not they’re often amongst
   and then monetized by multiplying the        your most highly skilled people. Then, when you “officially” start supporting
   number of people involved by their fully     agile adoption you often choose straightforward pilot projects, put together teams
   burdened cost.                               of these motivated and skilled people, and give them the support that they need
                                                to succeed. And succeed they do. But soon the situation changes. Suddenly, the
                                                projects aren’t so straightforward, and you’re trying to roll out agile approaches to
                                                people who may not be highly skilled or motivated to change.


                                                Our experience is that changing your organizational culture is the primary
                                                challenge when adopting agile techniques at scale [17], just like it’s the primary
                                                challenge with other type of process improvements. The difficulty is your organi-
Agility @ Scale Whitepaper
Page 19




                                        zational culture reflects the people, your organizational goals, the way that people
              Highlights                are organized, and the ways that they prefer to work – all of these issues are
                                        near and dear to the hearts of the people involved. A common refrain heard
                                        from groups that prefer the status quo is “Yes, agile is wonderful, but to allow
                                        us to address X they must still continue to produce Y just like other teams.” For
                                        example, the quality assurance group may still want to be responsible for compre-
                                        hensive testing at the end of the lifecycle and therefore require a detailed require-
                                        ment speculation [18], not realizing that agile delivery teams do much of the
                                        testing themselves much earlier in the project. Or the data management group
                                        may insist that they produce a detailed logical data model and physical data model
                                        during the analysis and design phases of the agile project to ensure that corporate
                                        standards are followed and existing data sources leveraged appropriately, not real-
                                        izing that analysis and design are so important to agile teams that they do these
                                        activities all the way through the lifecycle — in an evolutionary manner — and
                                        would rather have someone knowledgeable about data issues involved throughout
Clearly your traditional teams have     the entire project as an agile team member. These requests are not unreason-
performed for years. But on the agile   able; clearly your traditional teams have performed this way for years. But on the
landscape, traditional methods can      agile landscape, these methods can hamper a team’s ability to actually achieve the
hamper a team's ability to actually     promised benefits. Instead of giving in to these requests, in other words taking
achieve the promised benefits.          the easy road to mediocrity, you must instead choose the “hard road” and work
                                        with those tradionally minded teams to help them also become agile. It will be
                                        better for everyone involved in the long run.


                                        Parting thoughts
                                        Although many organizations have succeeded with agile approaches to system
                                        delivery, that doesn’t make agile a silver bullet with which you can easily slay the
                                        IT productivity lycanthrope. I have described how to scale agile approaches on
                                        two fronts: for individual project teams and for adopting it across your IT organi-
                                        zation. To succeed at scaling agile for project teams you must first recognize the
                                        need to apply agile throughout the entire delivery lifecycle, not just construction.
                                        Then, depending on the situation that the team finds itself in, you may need to
                                        tailor the agile practices which you have adopted for applicable scaling factors
                                        – team size, geographical distribution, regulatory compliance, domain complex-
                                        ity, organizational distribution, technical complexity, organizational complexity,
                                        or enterprise discipline. Disciplined agile teams focus on producing repeatable
                                        results, not on the bureaucratic façade of following repeatable practices. To suc-
                                        ceed at scaling agile strategies across your IT organization you must address the
                                        following five areas: People, principles, practices, process, and products (technol-
                                        ogy and tooling).
Agility @ Scale Whitepaper
Page 20




                             Nobody gets a gold star for being agile; the goal is to get better, not to become
             Highlights      agile. Considering that the focus of this paper, I realize this sounds contradictory.
                             But if your team can succeed with agile techniques, you will certainly become
                             more effective at software and systems delivery.


                             Acknowledgements
                             I’d like to thank Alan W. Brown, Paul Gorans, David Lubanko, Mike Perrow,
                             Walker Royce, Rick Weaver, and Elizabeth Woodward for their feedback,
                             which was incorporated into this white paper.



                             About the Author
                             Scott W. Ambler is Chief Methodologist/Agile with IBM Rational and he
                             works with IBM customers around the world to improve their software pro-
                             cesses. He is the founder of the Agile Modeling (AM), Agile Data (AD), Agile
                             Unified Process (AUP), and Enterprise Unified Process (EUP) methodologies.
                             Scott is the (co-)author of 19 books, including Refactoring Databases, Agile
                             Modeling, Agile Database Techniques, The Object Primer 3rd Edition, and
                             The Enterprise Unified Process. Scott is a senior contributing editor with
                             Information Week. His personal home page is www.ibm.com/software/ratio-
                             nal/leadership/leaders/#scott and his Agile at Scale blog is www.ibm.com/
                             developerworks/blogs/page/ambler.
Agility @ Scale Whitepaper
Page 21




                             Endnotes

                             1
                               Throughout this paper the term process shall also include the terms “method” and “methodology.”
                             These terms are used interchangeably within the IT industry and for the sake of simplicity I have chosen
                             to use the term “process.”

                             2
                                This difference is discussed in, for example, Stober, T. and Hansmann, W. (2010). Agile Software
                             Development: Best Practices for Large Software Development Projects. New York: Springer Publishing,
                             and in Larman, C. and Vodde, B. (2009). Scaling Lean & Agile Development: Thinking and Organiza-
                             tional Tools for Large-Scale Scrum. Upper Saddle River, NJ: Addison Wesley.

                             3
                              For a more detailed discussion of the Agile Manifesto, see “Examining the Agile Manifesto” at www.
                             ambysoft.com/essays/agileManifesto.html

                             4
                              Regression testing, essentially, tests whether changes to existing software have introduced new
                             problems.

                             5
                                 A common strategy to do so via retrospectives, see www.retrospectives.com

                             6
                              The ASM is described in detail in the white paper “The Agile Scaling Model (ASM): Adapting Agile
                             Methods for Complex Environments” which can be downloaded at ftp://ftp.software.ibm.com/common/
                             ssi/sa/wh/n/raw14204usen/RAW14204USEN.PDF

                             7
                              My follow-up whitepaper to this one, entitled “Agility@Scale: Disciplined Strategies for Scaling Agile
                             Delivery”, will go into the details of scaling across your organization and tailoring agile practices to
                             reflect the realities of various scaling factors. It will be available in the first quarter of 2010 at www.ibm.
                             com

                             8
                                 This shouldn’t be confused with the 5Ps of marketing: product, price, place, promotion, and people.

                             9
                                 This is the number of “points” of functionality which a team delivers each iteration.

                             10
                               I’ve created value stream maps with several customers around the world where we analyzed their
                             existing processes which some of their more traditional staff believed worked well only to discover they
                             had efficiency ratings of 20-30%. You can’t fix problems which you are blind to.

                             11
                                My surveys are performed in a completely open manner. The original questions as they were asked,
                             the source data (without identifying information), and summary slide decks are available free of charge
                             from www.ambysoft.com/surveys/ so that you can analyze the results for yourself.

                             12
                                  See http://www.ibm.com/services/us/index.wss/offering/gbs/a1029597

                             13
                               Calculated as 1.05*1.03*1.05*1.05. This assumes that you focus on all four success criteria and that
                             they are all weighted equally as important in your organization.
© Copyright IBM Corporation 2010
References
                                                                                                           IBM Corporation

1.    Dr. Dobb’s Journal’s July 2009 State of the IT Union Survey - www.ambysoft.com/surveys/stateOfI-     Software Group
      TUnion200907.html
                                                                                                           Route 100
2.    Dr. Dobb’s Journal’s 2008 Project Success Survey - www.ambysoft.com/surveys/success2008.html
3.    Ambler, S.W. (2009). The Agile Scaling Model (ASM): Adapting Agile Methods for Complex Envi-         Somers, NY 10589
      ronments - ftp://ftp.software.ibm.com/common/ssi/sa/wh/n/raw14204usen/RAW14204USEN.PDF
                                                                                                           U.S.A.
4.    Ambler, S.W. (2005). The Agile System Development Life Cycle (SDLC) - www.ambysoft.com/
      essays/agileLifecycle.html
5.    Ambler, S.W. (2004). The Object Primer 3rd Edition: Agile Model Driven Development with UML
                                                                                                           Produced in the United States of America
      2.0. New York: Cambridge University Press.
6.    Kruchten, P. (2009). The context of software development. pkruchten.wordpress.com/2009/07/22/        March 2010
      the-context-of-software-development/
                                                                                                           All Rights Reserved
7.    Dr. Dobb’s Journal November 2009 State of the IT Union Survey. www.ambysoft.com/surveys/state-
      OfITUnion200911.html
8.    Ambler, S.W. (2004). Agile Database Techniques: Effective Strategies for the Agile Development.
                                                                                                           IBM, the IBM logo, ibm.com and Rational are
      New York: Wiley Publishing.
9.    Ambler, S.W., Nalbone, J., and Vizdos, M. (2004). The Enterprise Unified Process: Enhancing the      trademarks or registered trademarks of International
      Rational Unified Process. Boston: Addison Wesley.
                                                                                                           Business Machines Corporation in the United States,
10.   Poppendieck, M. and Poppendieck, T. (2006). Implementing Lean Software Development: From
      Concept to Cash. Boston: Addison Wesley.                                                             other countries, or both. Other company, product, or
11.   Ambler, S.W. (2003). Examining the “Big Requirements Up Front (BRUF) Approach”. www.agilem-
                                                                                                           service names may be trademarks of IBM or other
      odeling.com/essays/examiningBRUF.htm
12.   Ambler, S.W. & Kroll, P. (2007). Lean Development Governance. www.software.ibm.com/webapp/           companies.
      iwm/web/preLogin.do?lang=en_US&source=swg-ldg
13.   Agile Manifesto, www.agilemanifesto.org
14.   IBM Practices home page. www.ibm.com/developerworks/rational/practices/index.html                    A current list of IBM trademarks is available on the
15.   Kroll, P. and Krebs, W. (2008). Introducing IBM Rational Self Check for Software Teams.
                                                                                                           Web at “Copyright and trademark information” at
      www.ibm.com/developerworks/rational/library/edge/08/may08/kroll_krebs/index.html
16.   Ambler, S.W. (2009). Examining Acceleration. https://www.ibm.com/developerworks/mydeveloper-         www.ibm.com/legal/copytrade.shtml
      works/blogs/ambler/entry/metric_acceleration_examined
17.   Ambler, S.W. (2009). Not Agile Yet? Exploring the Excuses. www.ddj.com/architect/222002704
18.   Ambler, S.W. (2009). The Danger of Detailed Speculations. https://www.ibm.com/developerworks/        The information contained in this document is
      mydeveloperworks/blogs/ambler/entry/detailed_speculations
                                                                                                           provided for informational purposes only. While
19.   Measured Capability Improvement Framework Home Page. www.ibm.com/software/rational/mcif/
20.   Glazer, H., Dalton, J., Anderson, D.J., Konrad, M.D., and Shrum, S. (2008). CMMI or Agile: Why Not   efforts were made to verify the completeness
      Embrace Both! www.sei.cmu.edu/reports/08tn003.pdf
                                                                                                           and accuracy of the information contained in this
21.   Royce, W. (2009). “Improving Software Economics: Top 10 Principles of Achieving Agility at
      Scale.” download.boulder.ibm.com/ibmdl/pub/software/rational/web/whitepapers/Royce_Soft-             documentation, it is provided “as is” without warranty
      wareEconomics_whitepaper3.pdf
                                                                                                           of any kind, express or implied.




                                                                                                           RAW14211-USEN-00

Más contenido relacionado

La actualidad más candente

Adaptive leadership wp us single pages
Adaptive leadership wp us single pagesAdaptive leadership wp us single pages
Adaptive leadership wp us single pagesdrewz lin
 
Critical Success Factors for Contract Management Automation_IACCM
Critical Success Factors for Contract Management Automation_IACCMCritical Success Factors for Contract Management Automation_IACCM
Critical Success Factors for Contract Management Automation_IACCMZycus
 
Refactoring the Organization Design (LESS2010)
Refactoring the Organization Design (LESS2010)Refactoring the Organization Design (LESS2010)
Refactoring the Organization Design (LESS2010)Ken Power
 
“Como Escalar Práticas Ágeis em Equipes de Desenvolvimento Médias e Grandes”
“Como Escalar Práticas Ágeis em Equipes de Desenvolvimento Médias e Grandes”“Como Escalar Práticas Ágeis em Equipes de Desenvolvimento Médias e Grandes”
“Como Escalar Práticas Ágeis em Equipes de Desenvolvimento Médias e Grandes”Andrea Rodacki
 
Mapping of traditional software development methods to agile methodology
Mapping of traditional software development methods to agile methodologyMapping of traditional software development methods to agile methodology
Mapping of traditional software development methods to agile methodologycsandit
 
MAPPING OF TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO AGILE METHODOLOGY
MAPPING OF TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO AGILE METHODOLOGYMAPPING OF TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO AGILE METHODOLOGY
MAPPING OF TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO AGILE METHODOLOGYcscpconf
 
Enterprise Program Management 2 Sided
Enterprise Program Management   2 SidedEnterprise Program Management   2 Sided
Enterprise Program Management 2 Sidedrobertgk00
 
Slides seminar innovation manager - final - da
Slides seminar   innovation manager - final - daSlides seminar   innovation manager - final - da
Slides seminar innovation manager - final - daDirk Ameel
 
Lean KaiKaiku
Lean KaiKaikuLean KaiKaiku
Lean KaiKaikuRobert_
 
Fostering innovation and efficiency through collaborative change management
Fostering innovation and efficiency through collaborative change managementFostering innovation and efficiency through collaborative change management
Fostering innovation and efficiency through collaborative change managementIBM Rational software
 
Introducing agilealm
Introducing agilealmIntroducing agilealm
Introducing agilealmMatt Holitza
 
Dan Drew Resume
Dan Drew ResumeDan Drew Resume
Dan Drew Resumedrewdw
 
A study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodologyA study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodologyIAEME Publication
 
Improvement opportunity in agile methodology and a survey on the adoption rat...
Improvement opportunity in agile methodology and a survey on the adoption rat...Improvement opportunity in agile methodology and a survey on the adoption rat...
Improvement opportunity in agile methodology and a survey on the adoption rat...Alexander Decker
 
IRJET- Study on Agile Management in Construction Project using Scrumban Metho...
IRJET- Study on Agile Management in Construction Project using Scrumban Metho...IRJET- Study on Agile Management in Construction Project using Scrumban Metho...
IRJET- Study on Agile Management in Construction Project using Scrumban Metho...IRJET Journal
 
Serena Orchestrated Development Management.pdf
Serena Orchestrated Development Management.pdfSerena Orchestrated Development Management.pdf
Serena Orchestrated Development Management.pdfRodrigo Ponce
 
Introduction To Solleva Group
Introduction To Solleva GroupIntroduction To Solleva Group
Introduction To Solleva Groupevanslyke
 
Public Sector Executive Five Lessons Of Lean July August 2009 P42 44
Public Sector Executive Five Lessons Of Lean July August 2009 P42 44Public Sector Executive Five Lessons Of Lean July August 2009 P42 44
Public Sector Executive Five Lessons Of Lean July August 2009 P42 44Dermo
 

La actualidad más candente (19)

Adaptive leadership wp us single pages
Adaptive leadership wp us single pagesAdaptive leadership wp us single pages
Adaptive leadership wp us single pages
 
Critical Success Factors for Contract Management Automation_IACCM
Critical Success Factors for Contract Management Automation_IACCMCritical Success Factors for Contract Management Automation_IACCM
Critical Success Factors for Contract Management Automation_IACCM
 
Refactoring the Organization Design (LESS2010)
Refactoring the Organization Design (LESS2010)Refactoring the Organization Design (LESS2010)
Refactoring the Organization Design (LESS2010)
 
“Como Escalar Práticas Ágeis em Equipes de Desenvolvimento Médias e Grandes”
“Como Escalar Práticas Ágeis em Equipes de Desenvolvimento Médias e Grandes”“Como Escalar Práticas Ágeis em Equipes de Desenvolvimento Médias e Grandes”
“Como Escalar Práticas Ágeis em Equipes de Desenvolvimento Médias e Grandes”
 
Mapping of traditional software development methods to agile methodology
Mapping of traditional software development methods to agile methodologyMapping of traditional software development methods to agile methodology
Mapping of traditional software development methods to agile methodology
 
MAPPING OF TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO AGILE METHODOLOGY
MAPPING OF TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO AGILE METHODOLOGYMAPPING OF TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO AGILE METHODOLOGY
MAPPING OF TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO AGILE METHODOLOGY
 
Enterprise Program Management 2 Sided
Enterprise Program Management   2 SidedEnterprise Program Management   2 Sided
Enterprise Program Management 2 Sided
 
Slides seminar innovation manager - final - da
Slides seminar   innovation manager - final - daSlides seminar   innovation manager - final - da
Slides seminar innovation manager - final - da
 
Lean KaiKaiku
Lean KaiKaikuLean KaiKaiku
Lean KaiKaiku
 
Fostering innovation and efficiency through collaborative change management
Fostering innovation and efficiency through collaborative change managementFostering innovation and efficiency through collaborative change management
Fostering innovation and efficiency through collaborative change management
 
Introducing agilealm
Introducing agilealmIntroducing agilealm
Introducing agilealm
 
Dan Drew Resume
Dan Drew ResumeDan Drew Resume
Dan Drew Resume
 
A study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodologyA study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodology
 
Improvement opportunity in agile methodology and a survey on the adoption rat...
Improvement opportunity in agile methodology and a survey on the adoption rat...Improvement opportunity in agile methodology and a survey on the adoption rat...
Improvement opportunity in agile methodology and a survey on the adoption rat...
 
IRJET- Study on Agile Management in Construction Project using Scrumban Metho...
IRJET- Study on Agile Management in Construction Project using Scrumban Metho...IRJET- Study on Agile Management in Construction Project using Scrumban Metho...
IRJET- Study on Agile Management in Construction Project using Scrumban Metho...
 
Serena Orchestrated Development Management.pdf
Serena Orchestrated Development Management.pdfSerena Orchestrated Development Management.pdf
Serena Orchestrated Development Management.pdf
 
Introduction To Solleva Group
Introduction To Solleva GroupIntroduction To Solleva Group
Introduction To Solleva Group
 
Enterprise software delivery
Enterprise software deliveryEnterprise software delivery
Enterprise software delivery
 
Public Sector Executive Five Lessons Of Lean July August 2009 P42 44
Public Sector Executive Five Lessons Of Lean July August 2009 P42 44Public Sector Executive Five Lessons Of Lean July August 2009 P42 44
Public Sector Executive Five Lessons Of Lean July August 2009 P42 44
 

Destacado

What is poetry??
What is poetry??What is poetry??
What is poetry??CK Tan
 
Lego creations
Lego creationsLego creations
Lego creationssmoser3039
 
Sunrise Solutions Inc.
Sunrise Solutions Inc.Sunrise Solutions Inc.
Sunrise Solutions Inc.Jeff Pollard
 
Tafsir Al Usyr Al Akhir Dari Al Quran Al Karim_ Indonesia
Tafsir Al Usyr Al Akhir Dari Al Quran Al Karim_ IndonesiaTafsir Al Usyr Al Akhir Dari Al Quran Al Karim_ Indonesia
Tafsir Al Usyr Al Akhir Dari Al Quran Al Karim_ IndonesiaAbdullah Baspren
 
8. Evaluation of Student Performance
8. Evaluation of Student Performance8. Evaluation of Student Performance
8. Evaluation of Student PerformanceISEAL Alliance
 
100324 Jaw A Mx Tek Overview [1.0]
100324 Jaw   A Mx Tek Overview [1.0]100324 Jaw   A Mx Tek Overview [1.0]
100324 Jaw A Mx Tek Overview [1.0]Jim Walls
 
Massachusetts Rapid Response Set-Aside Program
Massachusetts Rapid Response Set-Aside ProgramMassachusetts Rapid Response Set-Aside Program
Massachusetts Rapid Response Set-Aside ProgramTimothy Theberge
 
The ISEAL Alliance: An Introduction
The ISEAL Alliance: An IntroductionThe ISEAL Alliance: An Introduction
The ISEAL Alliance: An IntroductionISEAL Alliance
 
Sneeuwklassen Terugkomdag Deel 1
Sneeuwklassen Terugkomdag Deel 1Sneeuwklassen Terugkomdag Deel 1
Sneeuwklassen Terugkomdag Deel 1sint.al.jo
 
Communication; the Science and Art of it
Communication; the Science and Art of itCommunication; the Science and Art of it
Communication; the Science and Art of itSikhar Saikia
 
2011 MAYIS-İNCİ YAMAN-GÖNÜL DOSTLARI-KONSERİ
2011 MAYIS-İNCİ YAMAN-GÖNÜL DOSTLARI-KONSERİ2011 MAYIS-İNCİ YAMAN-GÖNÜL DOSTLARI-KONSERİ
2011 MAYIS-İNCİ YAMAN-GÖNÜL DOSTLARI-KONSERİTangül Müdok
 
Sneeuwklassen 2009 Terugkomdag Vol Met Teksten2
Sneeuwklassen 2009 Terugkomdag Vol Met Teksten2Sneeuwklassen 2009 Terugkomdag Vol Met Teksten2
Sneeuwklassen 2009 Terugkomdag Vol Met Teksten2sint.al.jo
 
Trade Adjustment Assistance for Workers Reversion Primer 2013
Trade Adjustment Assistance for Workers Reversion Primer 2013Trade Adjustment Assistance for Workers Reversion Primer 2013
Trade Adjustment Assistance for Workers Reversion Primer 2013Timothy Theberge
 
Ohio Rapid Response Webinar 1
Ohio Rapid Response Webinar 1Ohio Rapid Response Webinar 1
Ohio Rapid Response Webinar 1Timothy Theberge
 
Plan de estudios matematicas 2010
Plan de estudios matematicas 2010Plan de estudios matematicas 2010
Plan de estudios matematicas 2010Nixonivan Romero
 
Knowing Our Clients Keable Stl
Knowing Our Clients Keable StlKnowing Our Clients Keable Stl
Knowing Our Clients Keable Stlkeableeb
 

Destacado (20)

What is poetry??
What is poetry??What is poetry??
What is poetry??
 
Busting agile myths_v1
Busting agile myths_v1Busting agile myths_v1
Busting agile myths_v1
 
Lego creations
Lego creationsLego creations
Lego creations
 
Sunrise Solutions Inc.
Sunrise Solutions Inc.Sunrise Solutions Inc.
Sunrise Solutions Inc.
 
Tafsir Al Usyr Al Akhir Dari Al Quran Al Karim_ Indonesia
Tafsir Al Usyr Al Akhir Dari Al Quran Al Karim_ IndonesiaTafsir Al Usyr Al Akhir Dari Al Quran Al Karim_ Indonesia
Tafsir Al Usyr Al Akhir Dari Al Quran Al Karim_ Indonesia
 
8. Evaluation of Student Performance
8. Evaluation of Student Performance8. Evaluation of Student Performance
8. Evaluation of Student Performance
 
100324 Jaw A Mx Tek Overview [1.0]
100324 Jaw   A Mx Tek Overview [1.0]100324 Jaw   A Mx Tek Overview [1.0]
100324 Jaw A Mx Tek Overview [1.0]
 
Massachusetts Rapid Response Set-Aside Program
Massachusetts Rapid Response Set-Aside ProgramMassachusetts Rapid Response Set-Aside Program
Massachusetts Rapid Response Set-Aside Program
 
The ISEAL Alliance: An Introduction
The ISEAL Alliance: An IntroductionThe ISEAL Alliance: An Introduction
The ISEAL Alliance: An Introduction
 
Bookweb
BookwebBookweb
Bookweb
 
Kalkhedon' 2010 kasim
Kalkhedon' 2010 kasimKalkhedon' 2010 kasim
Kalkhedon' 2010 kasim
 
Sneeuwklassen Terugkomdag Deel 1
Sneeuwklassen Terugkomdag Deel 1Sneeuwklassen Terugkomdag Deel 1
Sneeuwklassen Terugkomdag Deel 1
 
Communication; the Science and Art of it
Communication; the Science and Art of itCommunication; the Science and Art of it
Communication; the Science and Art of it
 
Ottawa Agm 2009 Final
Ottawa Agm 2009 FinalOttawa Agm 2009 Final
Ottawa Agm 2009 Final
 
2011 MAYIS-İNCİ YAMAN-GÖNÜL DOSTLARI-KONSERİ
2011 MAYIS-İNCİ YAMAN-GÖNÜL DOSTLARI-KONSERİ2011 MAYIS-İNCİ YAMAN-GÖNÜL DOSTLARI-KONSERİ
2011 MAYIS-İNCİ YAMAN-GÖNÜL DOSTLARI-KONSERİ
 
Sneeuwklassen 2009 Terugkomdag Vol Met Teksten2
Sneeuwklassen 2009 Terugkomdag Vol Met Teksten2Sneeuwklassen 2009 Terugkomdag Vol Met Teksten2
Sneeuwklassen 2009 Terugkomdag Vol Met Teksten2
 
Trade Adjustment Assistance for Workers Reversion Primer 2013
Trade Adjustment Assistance for Workers Reversion Primer 2013Trade Adjustment Assistance for Workers Reversion Primer 2013
Trade Adjustment Assistance for Workers Reversion Primer 2013
 
Ohio Rapid Response Webinar 1
Ohio Rapid Response Webinar 1Ohio Rapid Response Webinar 1
Ohio Rapid Response Webinar 1
 
Plan de estudios matematicas 2010
Plan de estudios matematicas 2010Plan de estudios matematicas 2010
Plan de estudios matematicas 2010
 
Knowing Our Clients Keable Stl
Knowing Our Clients Keable StlKnowing Our Clients Keable Stl
Knowing Our Clients Keable Stl
 

Similar a Scaling agile exec guide

Disciplined Agile Delivery: An Introduction
Disciplined Agile Delivery: An IntroductionDisciplined Agile Delivery: An Introduction
Disciplined Agile Delivery: An IntroductionIBM Rational software
 
Mindtree distributed agile journey and guiding principles
Mindtree distributed agile journey and guiding principlesMindtree distributed agile journey and guiding principles
Mindtree distributed agile journey and guiding principlesMindtree Ltd.
 
What is Agile Software Development?
What is Agile Software Development?What is Agile Software Development?
What is Agile Software Development?Baek Yongsun
 
Agile Methodology.docx
Agile Methodology.docxAgile Methodology.docx
Agile Methodology.docxSameerShaik43
 
The Agile Manifesto Revisited: Benefits and Challenges in Modern Software Dev...
The Agile Manifesto Revisited: Benefits and Challenges in Modern Software Dev...The Agile Manifesto Revisited: Benefits and Challenges in Modern Software Dev...
The Agile Manifesto Revisited: Benefits and Challenges in Modern Software Dev...JamesParker406701
 
Five benefits of agile practices in software intensive systems development
Five benefits of agile practices in software intensive systems developmentFive benefits of agile practices in software intensive systems development
Five benefits of agile practices in software intensive systems developmentIBM Rational software
 
Extending Agile to Suite Big Projects
Extending Agile to Suite Big ProjectsExtending Agile to Suite Big Projects
Extending Agile to Suite Big ProjectsAmin Bandeali
 
Normalizing agile and lean product development and aim
Normalizing agile and lean product development and aimNormalizing agile and lean product development and aim
Normalizing agile and lean product development and aimRussell Pannone
 
G0313036040
G0313036040G0313036040
G0313036040theijes
 
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...shailesh.bohra
 
Presentation by somdatta banerjee
Presentation by somdatta banerjeePresentation by somdatta banerjee
Presentation by somdatta banerjeePMI_IREP_TP
 
Presentation by somdatta banerjee
Presentation by somdatta banerjeePresentation by somdatta banerjee
Presentation by somdatta banerjeePMI_IREP_TP
 

Similar a Scaling agile exec guide (20)

Disciplined Agile Delivery: An Introduction
Disciplined Agile Delivery: An IntroductionDisciplined Agile Delivery: An Introduction
Disciplined Agile Delivery: An Introduction
 
Mindtree distributed agile journey and guiding principles
Mindtree distributed agile journey and guiding principlesMindtree distributed agile journey and guiding principles
Mindtree distributed agile journey and guiding principles
 
What is Agile Software Development?
What is Agile Software Development?What is Agile Software Development?
What is Agile Software Development?
 
Agile Methodology.docx
Agile Methodology.docxAgile Methodology.docx
Agile Methodology.docx
 
Agile frameworks
Agile frameworksAgile frameworks
Agile frameworks
 
The Agile Manifesto Revisited: Benefits and Challenges in Modern Software Dev...
The Agile Manifesto Revisited: Benefits and Challenges in Modern Software Dev...The Agile Manifesto Revisited: Benefits and Challenges in Modern Software Dev...
The Agile Manifesto Revisited: Benefits and Challenges in Modern Software Dev...
 
Five benefits of agile practices in software intensive systems development
Five benefits of agile practices in software intensive systems developmentFive benefits of agile practices in software intensive systems development
Five benefits of agile practices in software intensive systems development
 
Agility At Scale
Agility At ScaleAgility At Scale
Agility At Scale
 
Extending Agile to Suite Big Projects
Extending Agile to Suite Big ProjectsExtending Agile to Suite Big Projects
Extending Agile to Suite Big Projects
 
Normalizing agile and lean product development and aim
Normalizing agile and lean product development and aimNormalizing agile and lean product development and aim
Normalizing agile and lean product development and aim
 
Scrum
Scrum Scrum
Scrum
 
G0313036040
G0313036040G0313036040
G0313036040
 
Innovate session-2333
Innovate session-2333Innovate session-2333
Innovate session-2333
 
Unit2
Unit2Unit2
Unit2
 
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
 
A littlebook about agile
A littlebook about agileA littlebook about agile
A littlebook about agile
 
Presentation by somdatta banerjee
Presentation by somdatta banerjeePresentation by somdatta banerjee
Presentation by somdatta banerjee
 
Presentation by somdatta banerjee
Presentation by somdatta banerjeePresentation by somdatta banerjee
Presentation by somdatta banerjee
 
Agile software process
Agile software processAgile software process
Agile software process
 
Key Agile Methodologies.docx
Key Agile Methodologies.docxKey Agile Methodologies.docx
Key Agile Methodologies.docx
 

Más de Patrick van Abbema, PMP, CBAP, CSP

The dollars are in the details measuring the cost of requirements grb - v1.0
The dollars are in the details measuring the cost of requirements   grb - v1.0The dollars are in the details measuring the cost of requirements   grb - v1.0
The dollars are in the details measuring the cost of requirements grb - v1.0Patrick van Abbema, PMP, CBAP, CSP
 

Más de Patrick van Abbema, PMP, CBAP, CSP (20)

The dollars are in the details measuring the cost of requirements grb - v1.0
The dollars are in the details measuring the cost of requirements   grb - v1.0The dollars are in the details measuring the cost of requirements   grb - v1.0
The dollars are in the details measuring the cost of requirements grb - v1.0
 
Presentation agile with Blueprint Requirements Center
Presentation   agile with Blueprint Requirements CenterPresentation   agile with Blueprint Requirements Center
Presentation agile with Blueprint Requirements Center
 
Presentation the state of business analysis in agile projects
Presentation   the state of business analysis in agile projectsPresentation   the state of business analysis in agile projects
Presentation the state of business analysis in agile projects
 
Ccba presentation j oliver jan 2011 v4
Ccba presentation j oliver jan 2011 v4Ccba presentation j oliver jan 2011 v4
Ccba presentation j oliver jan 2011 v4
 
What is in your Business Analysis Toolkit?
What is in your Business Analysis Toolkit?What is in your Business Analysis Toolkit?
What is in your Business Analysis Toolkit?
 
Iiba april 20 presentation
Iiba april 20 presentationIiba april 20 presentation
Iiba april 20 presentation
 
Businessmodelgeneration Preview
Businessmodelgeneration PreviewBusinessmodelgeneration Preview
Businessmodelgeneration Preview
 
Business Model Canvas Poster Clients
Business Model Canvas Poster ClientsBusiness Model Canvas Poster Clients
Business Model Canvas Poster Clients
 
Visual Thinking
Visual ThinkingVisual Thinking
Visual Thinking
 
Blueprint Requirements Center 2010
Blueprint  Requirements  Center 2010Blueprint  Requirements  Center 2010
Blueprint Requirements Center 2010
 
Inte Great Detailed Presentation Full V35 2
Inte Great Detailed Presentation Full V35 2Inte Great Detailed Presentation Full V35 2
Inte Great Detailed Presentation Full V35 2
 
Business Modeling and the Business Analyst
Business Modeling and the Business AnalystBusiness Modeling and the Business Analyst
Business Modeling and the Business Analyst
 
Best practices and competencies for Enterprise Analysis
Best practices and competencies for Enterprise AnalysisBest practices and competencies for Enterprise Analysis
Best practices and competencies for Enterprise Analysis
 
How to Organize and Prioritize Requirements
How to Organize and Prioritize RequirementsHow to Organize and Prioritize Requirements
How to Organize and Prioritize Requirements
 
Understanding the CBAP Designation
Understanding the CBAP DesignationUnderstanding the CBAP Designation
Understanding the CBAP Designation
 
CBAP Presentation
CBAP PresentationCBAP Presentation
CBAP Presentation
 
Enterprise Analysis
Enterprise AnalysisEnterprise Analysis
Enterprise Analysis
 
The Rules about about Business Rules
The Rules about about Business RulesThe Rules about about Business Rules
The Rules about about Business Rules
 
Kiss the BRD Good-Bye
Kiss the BRD Good-ByeKiss the BRD Good-Bye
Kiss the BRD Good-Bye
 
BABOK v1.6 vs v2.0
BABOK v1.6 vs v2.0BABOK v1.6 vs v2.0
BABOK v1.6 vs v2.0
 

Scaling agile exec guide

  • 1. Agility @ Scale Whitepaper February 2010 Scaling Agile: An Executive Guide Scott W. Ambler Chief Methodologist for Agile, IBM Rational
  • 2. Agility @ Scale Whitepaper Page 2 Executive summary Contents Agile software development is a highly collaborative, quality-focused approach to software and systems delivery, which emphasizes potentially shippable 2 Executive Summary working solutions produced at regular intervals for review and course 3 Introduction correction. Built upon the shoulders of iterative development techniques, 4 Defining agile and standing in stark contrast to traditional serial or sequential software 5 Criteria to determine if a team is engineering methods, agile software delivery techniques hold such promise agile that IBM has begun to adopt agile processes throughout its Software Group, 6 Scaling agile strategies at the an organization with over 25,000 developers. But how can practices originally project level designed for small teams (10-12) be “scaled up” for significantly larger 11 Scaling agile across your entire IT operations? The answer is what IBM calls “agility@scale.” department 13 The relationship between Agile and There are two primary aspects of scaling agile techniques that you need to Lean consider. First is scaling agile techniques at the project level to address the 15 What improvements should you unique challenges individual project teams face. This is the focus of the Agile realistically expect? Scaling Model (ASM). Second is scaling your agile strategy across your entire 17 Using an accelerated approach IT department, as appropriate. It is fairly straightforward to apply agile on a 18 What challenges should you handful of projects, but it can be very difficult to evolve your organizational expect? culture and structure to fully adopt the agile way of working. 19 Parting Thoughts 20 Acknowledgements The Agile Scaling Model (ASM) defines a roadmap for effective adoption and 20 About the Author tailoring of agile strategies to meet the unique challenges faced by a software and systems delivery team. Teams must first adopt a disciplined delivery lifecycle that scales mainstream agile construction techniques to address the full delivery process, from project initiation to deployment into production. Then teams must determine which scaling factors – team size, geographical distribution, regulatory compliance, domain complexity, organizational distribution, technical complexity, organizational complexity, or enterprise discipline, if any — are applicable to a project team and then tailor their adopted strategies accordingly to address their specific range of complexities. When scaling agile strategies across your entire IT organization you must effectively address five strategic categories — the Five Ps: People, principles, practices, process, and products (i.e., technology and tooling). Depending on your organizational environment the level of focus on each area will vary. What we are finding within many organizations, including IBM, is that the primary gating factor for scaling agile across your entire organization is your organization’s ability to absorb change.
  • 3. Agility @ Scale Whitepaper Page 3 Introduction Highlights Agile software development is an evolutionary, highly collaborative, disciplined, quality-focused approach to software development and delivery, whereby poten- tially shippable working software is produced at regular intervals for review and course correction. Agile software development processes1 include Scrum, Extreme Programming (XP), Open Unified Process (OpenUP), agile instantia- tions of Rational Unified Process (RUP), and Agile Modeling (AM), to name a In the IBM Rational organization, few. In the IBM Rational organization, we’ve used agile and iterative techniques we've used agile and iterativeIn the internally for many years, and the IBM Global Services and Rational organizations IBM Rational organization, we've have been working together to help many of our customers apply these techniques used agile and iterative techniques within their own environments, often under complex conditions at scale. Agile internally for many years, and the techniques held such promise that beginning in mid-2006 an explicit program IBM Global Services and Rational was put in place to adopt these processes on a wide-scale basis throughout IBM organizations have been working Software Group, an organization with over 25,000 developers. together to help many of our customers apply these techniques Agile software development techniques have taken the industry by storm, with 76% within their own environments. of organizations reporting in 2009 that they had adopted agile techniques, and that on average 44% of the project teams within those organizations had adopted one or more techniques [1]. Agile development is becoming widespread because it works well – organizations are finding that agile and iterative project teams, when compared to traditional project teams, enjoy higher success rates, deliver higher quality, have greater levels of stakeholder satisfaction, provide better return on investment (ROI), and deliver systems to market sooner [2]. By following quality techniques such as refactoring and developer regression testing throughout the lifecycle, agilists are able to progress safely and surely, increasing their productivity. By working closely with stakeholders in an iterative manner they have a better understanding of what stakeholders actually need and are more likely to deliver solutions that people actually want to use for their business purposes. By working Agile approaches are being used in a in priority order, agile teams are able to provide the greatest return on investment wide range of situations, not just the as defined by their stakeholders. In short, agile teams work smarter, not harder, and small, co-located team environments thereby achieve better results. that dominate the early agile literature. As you will learn later in this paper, agile approaches are being used in a wide range of situations, not just the small, co-located team environments that domi- nate the early agile literature.2 Agile strategies are being applied throughout the entire software delivery lifecycle, not just the construction (software coding and compiling) phase, and very often in very complex environments that require far more than a small, co-located team armed with a white board or a stack of index
  • 4. Agility @ Scale Whitepaper Page 4 cards. Every project team finds itself in a unique situation, with its own goals, Highlights abilities, and challenges. What they have in common is the need to adopt, and then tailor, agile methods, practices, and tools to address those unique situations. This paper looks at our experiences gained while applying agile/iterative strategies and techniques in organizations around the world, often at a scale far larger than the techniques were pioneered for. It begins with our definition of what it means to be agile; it summarizes the Agile Scaling Model (ASM) and explores the scaling factors which your project teams often face; it provides advice for how to adopt agile strategies across your entire IT department; and ends with a discussion of the types of benefits which you may expect to achieve by doing so. Defining agile Many people point to the value statements of the Agile Manifesto3 as a definition for agile development. Although these values are very good foundational philosophies, they were never really meant to be a definition. In fact, the agile community has never really settled on a definition nor does it appear that they will do so any time soon. The Rational organization has its own description for what we call “disciplined agile delivery”: Disciplined agile delivery is performed in a highly collaborative, Disciplined agile delivery is an evolutionary (iterative and incremental) disciplined, and self-organizing approach that regularly produces high-quality solutions in a cost-effective manner within an appropriate and timely manner via a risk and value-driven lifecycle. It is performed in governance framework, with active a highly collaborative, disciplined, and self-organizing manner within an stakeholder participation. appropriate governance framework, with active stakeholder participation to ensure that the team understands and addresses the changing needs of its stakeholders. Disciplined agile delivery teams provide repeatable results by adopting just the right amount of ceremony for the situation which they face. Here is a more concise though less robust definition: Disciplined agile delivery is a highly collaborative, evolutionary, self organizing, and governed approach that regularly produces high-quality solutions in a cost-effective and timely manner via a risk and value driven lifecycle. I’ll return to the elements of this definition a bit later.
  • 5. Agility @ Scale Whitepaper Page 5 Criteria to determine if a team is agile Highlights A common problem in many organizations is that undisciplined “ad-hoc” teams often claim to be agile, because they’ve read an article or two about agile devel- opment, and interpret agility to mean any cool, liberated form of undocumented software creativity. These ad-hoc teams often run into trouble, and give actual agile teams a bad name. IBM Rational defines the following five criteria to deter- Undisciplined "ad-hoc" teams often mine if a team is truly agile: run into trouble, and give actual agile teams a bad name. 1. Working software - Agile teams produce working software on a regular basis, typically in the context of short, stable, time-boxed iterations. 2. Active stakeholder participation - Agile teams work closely with their stake- holders, ideally on a daily basis. 3. Regression testing - Agile teams do, at a minimum, continuous developer regression testing.4 Disciplined agile teams take a Test-Driven Development (TDD) approach. 4. Organization - Agile teams are self-organizing, and disciplined agile teams work within an appropriate governance framework at a sustainable pace. Agile teams are also cross-functional “whole teams,” with enough people with the appropriate skills to address the goals of the team. Because every team finds itself in a 5. Improvement - Agile teams regularly reflect on5, and disciplined teams also unique situation, they must be flexible measure, how they work together and then act to improve on their findings in the way that they assess their agil- in a timely manner. ity. The real goal is to be as effective as possible given the situation. An important aspect of these criteria is that they are flexible. Note the terms used in the description of the criteria – regular basis, closely, continuous, appro- priately, regularly, timely; they are all situational in nature. For example, for some teams “regular basis” might be once every week, for other teams in more complex situations once every six weeks. Because every team finds itself in a unique situ- ation, they must be flexible in the way that they assess their agility. The real goal is to be as effective as possible given the situation.
  • 6. Agility @ Scale Whitepaper Page 6 Scaling agile strategies at the project level Highlights The Agile Scaling Model (ASM) [3] is a contextual framework for effective adoption and tailoring of agile practices to meet the unique challenges faced by a system delivery team of any size. Figure 1 overviews the ASM, depicting how Whether you are on a mainframe the ASM distinguishes between three scaling categories: Core agile development, team writing COBOL code for a disciplined agile delivery, and agility at Scale. IBM Rational advocates disciplined bank, software running on millions agile delivery as the minimum that your organization should consider if it wants of mobile phones, or e-commerce to succeed with agile techniques – whether you are on a mainframe team writ- code running on the Web, your team ing COBOL code for a bank, software running on millions of mobile phones, should still follow a full delivery or e-commerce code running on the Web, your team should still follow a full lifecycle in a disciplined manner. delivery lifecycle in a disciplined manner. You may not be there yet, still in the learning stages. But our experience is that you will quickly discover how one or more of the scaling factors is applicable, and as a result need to change the way you work. Fig 1. Overview of the Agile Scaling Model (ASM) 6
  • 7. Agility @ Scale Whitepaper Page 7 The first step in scaling agile approaches is to move from partial methods Highlights to a full-fledged, disciplined agile delivery process. This is a theme echoed by the Software Engineering Institute (SEI) in their work on applying agile and Capability Maturity Model Integration (CMMI) together [20]. Main- stream agile development processes and practices, of which there are many, have certainly garnered a lot of attention in recent years. They’ve motivated the IT community to pause and consider new ways of working, and many organizations have adopted and been successful with them. However, these The first step in scaling agile mainstream strategies (such as Extreme Programming (XP) or Scrum, which approaches is to move from partial the ASM refers to as core agile development strategies) are never sufficient on methods to a full-fledged, disciplined their own. agile delivery process. Mainstream strategies (such as Extreme To recognize why this is so, compare the Scrum lifecycle of Figure 2 with Programming (XP) or Scrum, which the disciplined agile delivery lifecycle [4] of Figure 3. In addition to using the ASM refers to as core agile sensible terminology (for example, nobody “sprints” through a 10 kilometer development strategies) are never race), the disciplined agile delivery lifecycle expands upon the Scrum life- sufficient on their own. cycle in three important ways: 1. It has explicit project phases, recognizing that agile delivery is really iterative in the small and serial in the large [5] – Figure 3 explicitly recognizes that there is additional effort to coordinate teams at incep- tion and additional effort to package/transition and release the product to production which the Scrum lifecycle of Figure 2 doesn’t take into account. 2. It specifies practices as well as the project management framework. Scrum components/aspects of the project management framework and leaves practice selection to the teams. Disciplined agile includes ini- tial requirements and architecture envisioning at the beginning of the project to increase the chance of building the right product in the right manner as well as system release practices. 3. It includes more robust practices. The lifecycle of Figure 3 explicitly reworks the product backlog of Figure 2 into the more accurate con- cept of a ranked work item list. Not only do delivery teams implement functional requirements, they must also fix defects (found through independent testing or by users of existing versions in production), pro- vide feedback on work from other teams, take training courses, and so on. Instead of leaving these issues up to the development teams to work through, disciplined teams start with a strategy which addresses them from the very beginning.
  • 8. Agility @ Scale Whitepaper Page 8 Fig 2. Scrum construction lifecycle Fig 3.Agile system delivery lifecycle
  • 9. Agility @ Scale Whitepaper Page 9 Many organizations will develop their own disciplined agile delivery process(es) Highlights by combining Scrum, practices from XP, and (sometimes unknowingly) practices from other processes such as Agile Modeling. This strategy works, although it can be expensive and time consuming compared to starting with a full disciplined agile delivery process. Many teams I’ve worked with would have greatly benefited by starting with an existing, more disciplined process such as the Open Unified Process (OpenUP), Dynamic System Development Method (DSDM), or the Eclipse Way, all widely available methodologies for team-based software delivery. In the early days, projects managed The second step to scaling agile is to assess the degree of complexity your team via agile techniques were small in faces. In the early days, projects managed via agile techniques were small in scope and relatively straightforward. scope and relatively straightforward. Small, co-located teams using mainstream Today, the picture has changed processes still get the job done in these situations. Today, the picture has changed significantly, and larger organizations significantly, and larger organizations want to apply agile development to a broader want to apply agile development to a set of projects. They require large teams; they want to leverage a distributed work broader set of projects. force; they want to partner with other organizations; they need to comply with regulations and industry standards; they have significant technical or cultural environmental issues to overcome; and they want to go beyond the single-system mindset and truly consider cross-system enterprise issues effectively. Not every project team faces all of these scaling factors to the same extent, but these are the primary factors that add complexity to your situation. That’s why your disciplined agile delivery process needs to adapt. In addition to scaling your lifecycle to address the full range of needs for solu- tion delivery, there are eight more scaling factors that may be applicable, as shown in Figure 4. Each factor represents a range of possibilities, from simple to complex. For each factor the simplest situation is on the left-hand side and the most complex situation on the right-hand side. When a project team finds that all eight factors are close to the left (simple), then their project can be managed in a disciplined agile delivery mode. But when one or more scaling factors moves to the right, they are in an agility at scale situation. To address these scaling factors you will need to tailor your disciplined agile delivery practices and in some situa- tions adopt a handful of new practices to address the additional risks that you face at scale.
  • 10. Agility @ Scale Whitepaper Page 10 Fig 4.Potential scaling factors for disciplined agile delivery Within the range of complexities shown in Figure 4, teams will need to tailor practices and tools to reflect their situation. The first four scaling factors listed – team size, geographical distribution, regulatory compliance, and organizational distribution – are relatively straightforward to address via dis- ciplined work, adoption of appropriate technology, and tailoring of practices to reflect the realities of each scaling factor. The other four scaling factors – domain complexity, technical complexity, organizational complexity, and enterprise discipline – are more difficult to address because environmental complexity often reflects systemic challenges within your organization and enterprise discipline requires a level of maturity that many organizations struggle to achieve (although most desire such discipline).
  • 11. Agility @ Scale Whitepaper Page 11 Scaling agile across your entire IT department Highlights While it may be tempting to begin adopting agile techniques via a small pilot project or two, Walker Royce, Chief Software Economist at IBM Rational offers a bold suggestion: The best way to ensure success is to assign a crack team with a mission critical project using agile/iterative techniques. Perhaps While it may be tempting to begin this explains much of the success of disciplined agile teams. However, suc- adopting agile techniques via a small cessful process improvement across all or most of an IT entire organization pilot project or two, the best way to can prove difficult in practice, often because casting a wider net draws a ensure success is to assign a crack wider range of challenges.7 team with a mission critical project using agile/iterative techniques. I’ve found that to be successful scaling agile techniques across your entire IT department that you must address five areas, what I call the “5 Ps” of IT: people, principles, practices, products, and processes.8 Here they are, in order of impor- tance: 1. People - People and the way they work together have a greater effect on the outcomes of a project than the processes they’re following or the products (tools and technologies) that they’re using. 2. Principles - An effective set of principles, some organizations use the term philosophies, provides a foundation to help you keep things together even when the environment is shifting underneath you. 3. Practices- A practice is a self-contained, deployable component of a process [14]. Examples of agile practices include test-driven development (TDD), daily stand-up meetings, requirements envisioning, database refactoring, continuous integration, shared vision, and user-story driven development to name a few. The prevailing strategy within the agile community is for project teams to adopt and then tailor these small, cohesive practices to meet the unique needs which their project team finds themselves in. I’ve found that to be successful scal- 4. Products - The IBM Jazz platform (www.jazz.net) provides a tailorable tooling ing agile techniques across your eco-system which reflects the realities of agility at scale. Although simple, entire IT department that you must point-specific products work well in the straightforward situations faced by address five areas, what I call the “5 disciplined agile delivery teams, such teams working at scale quickly find Ps” of IT: people, principles, practices, that they need integrated tools which support collaboration and which are products, and processes. instrumented to support automated reporting (to support appropriate govern- ance). 5. Processes - The previous 4Ps do not exist in a vacuum, we need some sort of glue to help piece all of this together. Minimally this glue is a lifecycle, such as the one in Figure 3, although more often than not it is a process or method.
  • 12. Agility @ Scale Whitepaper Page 12 Understanding the five Ps of IT, and being prepared to address them is a good Highlights start, but note that any medium to large organization is doing many things in parallel, making planning and coordination difficult. IBM Rational takes a meas- ured improvement approach to help organizations improve their system delivery effectiveness. This strategy typically includes an initial “health check” assessment called which helps you to navigate and select the right subset of practices, define your current capability (an “as-is” measure), a target capability improvement (a “to-be” measure), and a roadmap for you to get from where you are today to We help the organization make your target improvement with measurable feedback all along the route. We then the appropriate improvements by help the organization make the appropriate improvements by leveraging training leveraging training materials, process materials, process definitions, and tooling guidance, all of which can be tailored definitions, and tooling guidance, all to the unique needs of an organization to give them a head start on their process of which can be tailored to the unique improvement efforts. The measured improvement approach is intended to resolve needs of an organization to give the two predominant failure patterns of past process improvement initiatives, them a head start on their process either self-inflicting too much process (rather than a subset of incremental prac- improvement efforts. tices) or employing subjective rather than objective measures of progress. You must also explicitly manage your process improvement efforts. It’s fairly easy to succeed at a handful of pilot projects; it’s a bit more difficult to permanently adopt meaningful process improvements across your IT organization. A common strategy is for a team to regularly reflect on their approach to identify potential improvements, and then hopefully act on those improvements. Within IBM, we’ve found that teams who explicitly track their progress at adopting improvements are more successful than those who don’t. We’ve developed tooling called IBM Within IBM, we’ve found that teams Rational SelfCheck which helps teams do exactly this [15]. Reflections/retrospec- who explicitly track their progress at tives at the team level work well in practice, but you need more at the IT depart- adopting improvements are more suc- ment level. You also need a funded, continuous improvement program across your cessful than those who don’t. delivery organization that leverages a mix of iteration reflections and practitioner input to constantly improve your baseline agile delivery process. Without that, agile teams in various lines of business may re-invent the wheel and go through unnecessary pain.
  • 13. Agility @ Scale Whitepaper Page 13 The relationship between Agile and Lean Highlights As I discussed earlier, you want to adopt a set of principles that reflect your unique situation to provide a guiding foundation for your delivery efforts. Many organizations are starting with lean principles to provide such guidance. In Implementing Lean Software Development [10], Mary and Tom Poppendieck show how the seven principles of Lean Manufacturing can be applied to optimize the whole IT value stream. These principles are: Many organizations are starting with 1. Eliminate waste - Lean thinking advocates regard any activity that does lean principles to provide a guiding not directly add value to the finished product as waste. The three biggest foundation for delivery efforts. sources of waste in software development are the addition of unrequired features, project churn and crossing organizational boundaries (particularly between stakeholders and development teams). To reduce waste it is critical that development teams be allowed to self organize and operate in a manner that reflects the work they’re trying to accomplish. Walker Royce argues in “Improving Software Economics” [21] that the primary benefit of modern iterative/agile techniques is the reduction of scrap and rework late in the lifecycle. 2. Build in quality - Your process should not allow defects to occur in the first place, but when this isn’t possible you should work in such a way that you do a bit of work, validate it, fix any issues that you find, and then iterate. Inspecting after the fact, and queuing up defects to be fixed at some time in the future, isn’t as effective. Agile practices which build quality into your process include test driven development (TDD) and non-solo development practices such as pair programming and modeling with others. 3. Create knowledge- Planning is useful, but learning is essential. You want to promote strategies, such as iterative development, that help teams discover what stakeholders really want and act on that knowledge. It’s also important for a team to regularly reflect on what they’re doing and then act to improve their approach. 4. Defer commitment - It’s not necessary to start software development by defin- ing a complete specification, and in fact that appears to be a questionable strategy at best [11]. You can support the business effectively through flexible architectures that are change tolerant and by scheduling irreversible deci- sions to the last possible moment. Frequently, deferring commitment requires the ability to closely couple end-to-end business scenarios to capabilities developed in multiple applications by multiple projects.
  • 14. Agility @ Scale Whitepaper Page 14 5. Deliver quickly - It is possible to deliver high-quality systems quickly. By Highlights limiting the work of a team to its capacity, which is reflected by the team’s velocity,9 you can establish a reliable and repeatable flow of work. An effec- tive organization doesn’t demand teams do more than they are capable of, but instead asks them to self-organize and determine what they can accomplish. Constraining these teams to delivering potentially shippable solutions on a regular basis motivates them to stay focused on continuously adding value. 6. Respect people - The Poppendiecks also observe that sustainable advantage is gained from engaged, thinking people. The implication is that you need a governance strategy that focuses on motivating and enabling IT teams—not on controlling them [12]. 7. Optimize the whole - If you want to be effective at a solution you must look at the bigger picture. You need to understand the high-level business processes that individual projects support—processes that often cross multiple systems. You need to manage programs of interrelated systems so you can deliver a complete product to your stakeholders. Measurements should address how well you’re delivering business value, because that is the sole reason for your IT department. Lean thinking is important to agility in several ways. First, lean provides an Agile Modeling's practices of explanation for why many of the agile practices work. For example, Agile Mod- light weight, initial requirements eling’s practices of light weight, initial requirements envisioning followed by itera- envisioning followed by iteration tion modeling and just-in-time (JIT) model storming work because they reflect modeling and just-in-time (JIT) model deferment of commitment regarding what needs to be built until it’s actually storming work because they reflect needed, and the practices help eliminate waste because you’re only modeling what deferment of commitment regarding needs to be built. Second, these principles offer insight into strategies for improv- what needs to be built until it's ing your software process. For example, by understanding the source of waste in actually needed. IT you can begin to identify it and then eliminate it. Third, these principles pro- vide a philosophical foundation for scaling agile approaches. Fourth, value stream mapping – a technique common within the lean community whereby you model a process and then identify how much time is spent on value-added work versus wait time – helps calculate overall time efficiency of what you’re doing. Value stream maps are a straightforward way to illuminate your IT processes, providing insight into where significant problems exist.10
  • 15. Agility @ Scale Whitepaper Page 15 What improvements should you realistically expect? Highlights I am often asked what kind of benefits to expect from adopting agile approaches. While the surveys11 I have conducted over the years consistently show that agile and iterative approaches provide better quality, greater stakeholder satisfaction, better return on investment, and better time to value than traditional techniques, [2] I am invariably asked: “How much better?” and “How much will we ben- efit?” As you may suspect, I can’t provide exact answers to these questions, but I can provide a framework for understanding the potential benefits of adopting agile across your IT organization. You’ve probably heard some “wild claims” in agile case studies of productivity improvements of 50%, 75%, 100%, and sometimes more. If in your organization you see lower productivity improvements than this, don’t worry; this doesn’t sug- gest failure. Although I have no doubt that many of these claims are reasonably It is best for teams actually involved correct (I myself have seen some impressive improvements at organizations that with the details of project progress I’ve work with), it is best for teams actually involved with the details of project to measure key improvement factors progress to measure key improvement factors and not simply rely on gut feel (and and not simply rely on gut feel (and not rely on outside consultants hired to achieve the benefits!). not rely on outside consultants hired to achieve the benefits!) Both IBM Rational and the Accelerated Solution Delivery Practice12 within IBM Global Services have been helping organizations improve their internal IT proc- esses for years, in particular based on iterative and/or agile strategies. Depend- ing on the situation which the client finds itself in, we may recommend either a continuous process improvement strategy, which IBM Rational focuses on; an accelerated improvement strategy, which the ASD practice focuses on; or a com- bination of both approaches as part of a broader initiative. First, with the continu- ous strategy you adopt a few techniques at a time, absorb them, learn from your experiences, and then iterate. Table 2 summarizes what we believe to be realistic expectations by taking this approach, based on our actual experiences helping our customers.
  • 16. Agility @ Scale Whitepaper Page 16 Table 2. Realistic improvements when adopting agile widely Highlights Success Criteria Year 1 Year 2 Year 3 Quality 3-5% fewer 3-5% fewer 3-5% fewer defects defects defects Labor costs 2-3% improvement 4-5% 4-5% improvement improvement Time to Value 5% faster 10% faster 5% faster — Delivered Fiunctionality 5% improved 5% improved 5% improved accuracy accuracy accuracy There are several important points that I need to make about the numbers shown in Table 2: 1. They are for large-scale agile adoption across most or all of an IT organiza- tion. Not everyone is going to be the highly skilled, highly motivated people you put on your pilot projects. 2. They are very conservative, as I’m a firm believer in under promising and over delivering. We’ve had several customers who have done much better than this using an aggressive adoption approach which received significant support from all aspects of the organization. So, as the agile community likes to say, “your mileage may vary” (YMMV). 3. The results are for year on year. For example, you should hopefully see a 3-to-5% improvement in quality the first year, another 3-to-5% improvement the next year, and so on. The most last process improvement occurs gradu- The primary determinant of success ally over time, in small increments, a Japanese concept called kaizen. is your leadership. Whatever your current situation, you need to choose The primary determinant of success is your leadership. Whatever your current to make the often difficult changes situation, you need to choose to make the often difficult changes that enable your that enable your organization to organization to improve. Change is uncomfortable, the implication being that improve. not everyone is going to be happy with moving to agile. You will not achieve even these conservative benefits unless you’re willing to make them happen. Further- more, you will need to parameterize and measure the impact of the changes. As the process change moves forward, one of the keys will be the ability to prove “that the gain is worth the pain.”
  • 17. Agility @ Scale Whitepaper Page 17 Table 3 presents a complementary view to Table 2 by examining four potential Highlights improvement strategies (which could be combined). As with Table 2, the figures in Table 3 reflect the experiences of IBM Rational consultants helping organiza- tions to improve their approach to IT [21]. Improving automation, collaboration, and improving your process are all relatively short term endeavors with modest, although not unsubstantial, potential for productivity increase. The strategy with greatest potential — increasing the flexibility in your approach to IT and the way in which you make IT investments — has the greatest cultural impact on your organization because it often requires a paradigm shift in how the business perceives IT. The strategy with greatest potential — increasing the flexibility in your Table 3. Comparing potential improvement strategies approach to IT and the way in which you make IT investments — has the Improvement Cost to Potential Timeframe Cultural greatest cultural impact on your Strategy implement Improvement Impact organization because it often requires a paradigm shift in how the business Improve Automation <5% 5-25% Weeks Very Low perceives IT. Improve 5-10% 15-35% Months Low Collaboration Improve Process 10-35% 25-100% Quarters Some Increase Flexibility 25-50% 2x-10x Years High and Investment Value Using an accelerated approach The ASD practice has been delivering a mix of rapid/agile/lean development services with clients for over ten years, including high-performance agile delivery centers, turn-key project delivery, and assessments of troubled client implementa- tions. They’ve frequently used an accelerated approach, where you adopt a larger number of agile practices at once and support this adoption by bringing mentors to help guide agile delivery and transfer skills to the staff. This leads to much higher productivity improvements, but it requires you to partner closely with the ASD mentors at all levels within your organization and commit to a more aggres- sive accelerated program – in other words, there’s quicker gain from greater focus. Their analysis over hundreds of agile projects that they’ve been involved with is that the more agile techniques you use, the better the aggregate results.
  • 18. Agility @ Scale Whitepaper Page 18 IBM Rational and the ASD practice have been working together to optimize our Highlights collective assets, and jointly engage where the client desires a mix of practice improvement, tooling and want to take a more aggressive approach to optimiza- tion. Table 2 addresses the factors which you may want to consider when calculat- ing productivity. If your organization supports a domain where delivery time is Look at What’s Changing: A Lesson paramount, then your calculation of productivity improvement would be highly from Physics weighted towards the time-to-value statistics and your process improvement The best indicators in software are efforts would be similarly skewed towards techniques for reducing overall delivery measurements of what’s changing. For time. If all of these factors are equally important, then your productivity improve- example, an easy way to determine the ment in the first year could potentially be 19% 13 – we’ve seen more than double productivity improvement of an agile this on pilot projects, for the reasons discussed earlier, although across an entire team is to calculate its acceleration, IT department the average seems to be 6 to 8% per annum. The critical observa- the change in its velocity over time tion is that the way you calculate productivity improvement is situational. [16]. Agile teams already calculate their velocity, the number of points of Part of being a leader is that sometimes you need to take a leap of faith that your functionality that they can deliver each vision — in this case, your move to adopt the scaling of agile techniques across iteration, for estimation and planning your IT department — is a good one. There are no easy fixes, no “silver bullets” purposes, and acceleration is simple to slay the IT productivity werewolf, regardless of what some of the agile market- calculation based on that information. ers may imply. Slow and steady wins the process improvement race. Acceleration doesn’t tell you the exact levels of productivity, something that is expensive to calculate, but it is a What challenges should you expect? virtually free estimate of the change in As I discussed earlier, the adoption of agile approaches within most organiza- productivity. Better yet, the acceleration tions, including IBM, typically begins with a grass roots movement. The people across your entire department can be involved self select themselves, they’re often highly motivated to try new things easily calculated as a weighted average and learn from their experiences, and more often than not they’re often amongst and then monetized by multiplying the your most highly skilled people. Then, when you “officially” start supporting number of people involved by their fully agile adoption you often choose straightforward pilot projects, put together teams burdened cost. of these motivated and skilled people, and give them the support that they need to succeed. And succeed they do. But soon the situation changes. Suddenly, the projects aren’t so straightforward, and you’re trying to roll out agile approaches to people who may not be highly skilled or motivated to change. Our experience is that changing your organizational culture is the primary challenge when adopting agile techniques at scale [17], just like it’s the primary challenge with other type of process improvements. The difficulty is your organi-
  • 19. Agility @ Scale Whitepaper Page 19 zational culture reflects the people, your organizational goals, the way that people Highlights are organized, and the ways that they prefer to work – all of these issues are near and dear to the hearts of the people involved. A common refrain heard from groups that prefer the status quo is “Yes, agile is wonderful, but to allow us to address X they must still continue to produce Y just like other teams.” For example, the quality assurance group may still want to be responsible for compre- hensive testing at the end of the lifecycle and therefore require a detailed require- ment speculation [18], not realizing that agile delivery teams do much of the testing themselves much earlier in the project. Or the data management group may insist that they produce a detailed logical data model and physical data model during the analysis and design phases of the agile project to ensure that corporate standards are followed and existing data sources leveraged appropriately, not real- izing that analysis and design are so important to agile teams that they do these activities all the way through the lifecycle — in an evolutionary manner — and would rather have someone knowledgeable about data issues involved throughout Clearly your traditional teams have the entire project as an agile team member. These requests are not unreason- performed for years. But on the agile able; clearly your traditional teams have performed this way for years. But on the landscape, traditional methods can agile landscape, these methods can hamper a team’s ability to actually achieve the hamper a team's ability to actually promised benefits. Instead of giving in to these requests, in other words taking achieve the promised benefits. the easy road to mediocrity, you must instead choose the “hard road” and work with those tradionally minded teams to help them also become agile. It will be better for everyone involved in the long run. Parting thoughts Although many organizations have succeeded with agile approaches to system delivery, that doesn’t make agile a silver bullet with which you can easily slay the IT productivity lycanthrope. I have described how to scale agile approaches on two fronts: for individual project teams and for adopting it across your IT organi- zation. To succeed at scaling agile for project teams you must first recognize the need to apply agile throughout the entire delivery lifecycle, not just construction. Then, depending on the situation that the team finds itself in, you may need to tailor the agile practices which you have adopted for applicable scaling factors – team size, geographical distribution, regulatory compliance, domain complex- ity, organizational distribution, technical complexity, organizational complexity, or enterprise discipline. Disciplined agile teams focus on producing repeatable results, not on the bureaucratic façade of following repeatable practices. To suc- ceed at scaling agile strategies across your IT organization you must address the following five areas: People, principles, practices, process, and products (technol- ogy and tooling).
  • 20. Agility @ Scale Whitepaper Page 20 Nobody gets a gold star for being agile; the goal is to get better, not to become Highlights agile. Considering that the focus of this paper, I realize this sounds contradictory. But if your team can succeed with agile techniques, you will certainly become more effective at software and systems delivery. Acknowledgements I’d like to thank Alan W. Brown, Paul Gorans, David Lubanko, Mike Perrow, Walker Royce, Rick Weaver, and Elizabeth Woodward for their feedback, which was incorporated into this white paper. About the Author Scott W. Ambler is Chief Methodologist/Agile with IBM Rational and he works with IBM customers around the world to improve their software pro- cesses. He is the founder of the Agile Modeling (AM), Agile Data (AD), Agile Unified Process (AUP), and Enterprise Unified Process (EUP) methodologies. Scott is the (co-)author of 19 books, including Refactoring Databases, Agile Modeling, Agile Database Techniques, The Object Primer 3rd Edition, and The Enterprise Unified Process. Scott is a senior contributing editor with Information Week. His personal home page is www.ibm.com/software/ratio- nal/leadership/leaders/#scott and his Agile at Scale blog is www.ibm.com/ developerworks/blogs/page/ambler.
  • 21. Agility @ Scale Whitepaper Page 21 Endnotes 1 Throughout this paper the term process shall also include the terms “method” and “methodology.” These terms are used interchangeably within the IT industry and for the sake of simplicity I have chosen to use the term “process.” 2 This difference is discussed in, for example, Stober, T. and Hansmann, W. (2010). Agile Software Development: Best Practices for Large Software Development Projects. New York: Springer Publishing, and in Larman, C. and Vodde, B. (2009). Scaling Lean & Agile Development: Thinking and Organiza- tional Tools for Large-Scale Scrum. Upper Saddle River, NJ: Addison Wesley. 3 For a more detailed discussion of the Agile Manifesto, see “Examining the Agile Manifesto” at www. ambysoft.com/essays/agileManifesto.html 4 Regression testing, essentially, tests whether changes to existing software have introduced new problems. 5 A common strategy to do so via retrospectives, see www.retrospectives.com 6 The ASM is described in detail in the white paper “The Agile Scaling Model (ASM): Adapting Agile Methods for Complex Environments” which can be downloaded at ftp://ftp.software.ibm.com/common/ ssi/sa/wh/n/raw14204usen/RAW14204USEN.PDF 7 My follow-up whitepaper to this one, entitled “Agility@Scale: Disciplined Strategies for Scaling Agile Delivery”, will go into the details of scaling across your organization and tailoring agile practices to reflect the realities of various scaling factors. It will be available in the first quarter of 2010 at www.ibm. com 8 This shouldn’t be confused with the 5Ps of marketing: product, price, place, promotion, and people. 9 This is the number of “points” of functionality which a team delivers each iteration. 10 I’ve created value stream maps with several customers around the world where we analyzed their existing processes which some of their more traditional staff believed worked well only to discover they had efficiency ratings of 20-30%. You can’t fix problems which you are blind to. 11 My surveys are performed in a completely open manner. The original questions as they were asked, the source data (without identifying information), and summary slide decks are available free of charge from www.ambysoft.com/surveys/ so that you can analyze the results for yourself. 12 See http://www.ibm.com/services/us/index.wss/offering/gbs/a1029597 13 Calculated as 1.05*1.03*1.05*1.05. This assumes that you focus on all four success criteria and that they are all weighted equally as important in your organization.
  • 22. © Copyright IBM Corporation 2010 References IBM Corporation 1. Dr. Dobb’s Journal’s July 2009 State of the IT Union Survey - www.ambysoft.com/surveys/stateOfI- Software Group TUnion200907.html Route 100 2. Dr. Dobb’s Journal’s 2008 Project Success Survey - www.ambysoft.com/surveys/success2008.html 3. Ambler, S.W. (2009). The Agile Scaling Model (ASM): Adapting Agile Methods for Complex Envi- Somers, NY 10589 ronments - ftp://ftp.software.ibm.com/common/ssi/sa/wh/n/raw14204usen/RAW14204USEN.PDF U.S.A. 4. Ambler, S.W. (2005). The Agile System Development Life Cycle (SDLC) - www.ambysoft.com/ essays/agileLifecycle.html 5. Ambler, S.W. (2004). The Object Primer 3rd Edition: Agile Model Driven Development with UML Produced in the United States of America 2.0. New York: Cambridge University Press. 6. Kruchten, P. (2009). The context of software development. pkruchten.wordpress.com/2009/07/22/ March 2010 the-context-of-software-development/ All Rights Reserved 7. Dr. Dobb’s Journal November 2009 State of the IT Union Survey. www.ambysoft.com/surveys/state- OfITUnion200911.html 8. Ambler, S.W. (2004). Agile Database Techniques: Effective Strategies for the Agile Development. IBM, the IBM logo, ibm.com and Rational are New York: Wiley Publishing. 9. Ambler, S.W., Nalbone, J., and Vizdos, M. (2004). The Enterprise Unified Process: Enhancing the trademarks or registered trademarks of International Rational Unified Process. Boston: Addison Wesley. Business Machines Corporation in the United States, 10. Poppendieck, M. and Poppendieck, T. (2006). Implementing Lean Software Development: From Concept to Cash. Boston: Addison Wesley. other countries, or both. Other company, product, or 11. Ambler, S.W. (2003). Examining the “Big Requirements Up Front (BRUF) Approach”. www.agilem- service names may be trademarks of IBM or other odeling.com/essays/examiningBRUF.htm 12. Ambler, S.W. & Kroll, P. (2007). Lean Development Governance. www.software.ibm.com/webapp/ companies. iwm/web/preLogin.do?lang=en_US&source=swg-ldg 13. Agile Manifesto, www.agilemanifesto.org 14. IBM Practices home page. www.ibm.com/developerworks/rational/practices/index.html A current list of IBM trademarks is available on the 15. Kroll, P. and Krebs, W. (2008). Introducing IBM Rational Self Check for Software Teams. Web at “Copyright and trademark information” at www.ibm.com/developerworks/rational/library/edge/08/may08/kroll_krebs/index.html 16. Ambler, S.W. (2009). Examining Acceleration. https://www.ibm.com/developerworks/mydeveloper- www.ibm.com/legal/copytrade.shtml works/blogs/ambler/entry/metric_acceleration_examined 17. Ambler, S.W. (2009). Not Agile Yet? Exploring the Excuses. www.ddj.com/architect/222002704 18. Ambler, S.W. (2009). The Danger of Detailed Speculations. https://www.ibm.com/developerworks/ The information contained in this document is mydeveloperworks/blogs/ambler/entry/detailed_speculations provided for informational purposes only. While 19. Measured Capability Improvement Framework Home Page. www.ibm.com/software/rational/mcif/ 20. Glazer, H., Dalton, J., Anderson, D.J., Konrad, M.D., and Shrum, S. (2008). CMMI or Agile: Why Not efforts were made to verify the completeness Embrace Both! www.sei.cmu.edu/reports/08tn003.pdf and accuracy of the information contained in this 21. Royce, W. (2009). “Improving Software Economics: Top 10 Principles of Achieving Agility at Scale.” download.boulder.ibm.com/ibmdl/pub/software/rational/web/whitepapers/Royce_Soft- documentation, it is provided “as is” without warranty wareEconomics_whitepaper3.pdf of any kind, express or implied. RAW14211-USEN-00