AgileDevelopment on the Agenda at Gartner's Application Architecture, Developmentand Infrastructure Summit in Sydney, July 20-21, 2015.Gartner Highlights 10 Things CIOs Need to Know AboutAgile Development.
CIOs areunder pressure to support fast-evolving digital business scenarios but arefinding traditional project and development methods unsuitable, according toGartner, Inc. Enterprises are increasingly turning to agile development tospeed up projects and illustrate their value.
Speaking aheadof the Gartner Application Architecture, Development and Integration Summit inSydney next month, Nathan Wilson, research director at Gartner, said thatexecuted well, use of agile methods has the capability to transform IT-businessrelationships and have a major positive impact on IT value delivery. However,the value will be delivered only if the CIO and the entire IT management teamare dedicated to the culture change that is necessary for success.
"Donewell, agile development can be an integral part of the portfolio of methodsthat the CIO uses to deal with increasing business demand for innovation,"said Mr. Wilson. "Done badly, agile development will create a lot moreproblems than it solves."
Gartnerhas identified 10 guiding principles for agile development:
No. 1: Agile is not one thing
Agiledevelopment methodologies are a set of approaches to software development thatshare a common philosophy but are sharply distinguished in the details of theirimplementations. They therefore tend to be adapted to different sorts ofproblems. Sophisticated organizations with a lot of experience may well usemore than one of these approaches, but an organization that is getting startedshould select one approach and master it before attempting other approaches.
No. 2: Agile is not a "pick'n mix"methodology
Agilemethods are highly systematic. Every component element of the methodology iscrucial to the success of the methodology. A common mistake is for anorganization to embrace some elements of an agile methodology, such as thesprint, but to ignore or play down other elements, such as managing"technical debt." Such organizations enjoy the kudos that comes fromrapid development and release of new code, but they are storing up trouble byfailing to address technical debt.
No. 3: Embracing agile is a joint business-IT activity
The fullbenefits of agile cannot be achieved without engaging with business leaders,management and the user community. If the rest of the business does not have animmediate appetite for working in a new way, careful planning and communicationwill be needed to bring different communities of managers and users on board.
No. 4: With agile, it is important to walk before youtry running
Experiencedagile practitioners can tackle large-scale developments — the equivalent ofclimbing Mount Everest. But it takes many years to develop the necessary skillsto be able to take on such large-scale software projects. Any organization thatis starting out on the agile journey needs to start in the foothills to developthe confidence and competence to take on larger tasks.
No. 5: Embracing agile is embracing continuouslearning
Agilepractitioners must be committed to continuous improvement in quality andcost-effectiveness, which means that every development is analyzed for lessonsthat can be used to improve policies and working practices. This analysis andlearning are not the responsibility of a small number of senior practitioners;they are fundamental components of the workload of all agile practitioners.Furthermore, the learning is not just appropriate to the programmers who aredirectly involved in software development; it is also essential for all therelated skills, such as project management, architecture, quality assurance andIT budget management.
No. 6: Agile is about teams and teams of teams
The basicorganizational unit of delivery in agile development is a small team, typicallyexpressed as "seven, plus or minus two" people — both developers andquality assurance. From an HR perspective, managing agile teams involveswalking a fine line between keeping productive teams together and movingindividuals between teams to encourage cross-fertilization of ideas. If peopleare moved too frequently, the teams fail to develop into highly productiveunits; if people are not moved between teams enough, then each team starts tobecome isolated and diverges from the other teams. It is important to note thatphysical location of teams is much more important with agile methods than withconventional approaches to development.
No. 7: Documenting, managing and eliminating technicaldebt is a core concept of all agile methods
Technicaldebt is the difference between the state of a piece of software today and thestate that it needs to be in to meet appropriate and necessary requirements forquality attributes such as reliability, performance efficiency, portability,usability, maintainability and security. All development creates technicaldebt. The difference with agile methods is that technical debt is recognizedand added to the backlog, not swept under the carpet. Any organization thatseeks to embrace agile methods must put in place the necessary elements of thechosen method dedicated to ruthless refactoring and the elimination oftechnical debt.
No. 8: Working with third-party development serviceproviders on agile development demands special care and attention
Many userIT organizations have a long history of outsourcing application development tospecialist service providers. While there is a role for service providers inagile development, it is a very different commercial model and a very differentengagement model. Since colocation with business users is axiomatic to agilemethods, the opportunities for sending large amounts of work offshore are somewhatlimited, so some form of supplemental staffing is likely to be a more usefulmodel.
No. 9: The impact of agile goes well beyond thesoftware development teams
Anintegral component of the agile methodologies is the concept of"continuous delivery." Agile methodologies are predicated oncontinuous engagement with business managers and users, and lead to thedelivery of a continuous stream of new and modified software into theoperational environment. This demands significant changes in working practicesfor both business governance and relationship management and the infrastructureand operations teams.
No. 10: Other software development methodologies willstill have a place in your portfolio
In mostcommercial and public sector organizations, the application portfolio willpresent many different classes of development problems, some of which will bewell-suited to agile, while some may be better-suited to incremental, iterativedevelopment and some to a modified waterfall model. Agile is not "better";it is simply better-adapted to some problems, but not so well-adapted toothers.
Moredetailed analysis is available to Gartner clients in the report "TenThings the CIO Needs to Know About Agile Development."
Thelatest enterprise application trends, technologies and strategies, includingagile development, will be discussed at the Gartner Application Architecture,Development and Integration Summit 2015 in Sydney on Monday and Tuesday, July20 and 21. Follow #GartnerAADI on Twitter for updates.

