Gartner: 10 Things CIOs Need to Know About Agile Development
July 01, 2015

CIOs are under pressure to support fast-evolving digital business scenarios but are finding traditional project and development methods unsuitable, according to Gartner, Inc. Enterprises are increasingly turning to agile development to speed up projects and illustrate their value.

Speaking ahead of the Gartner Application Architecture, Development and Integration Summit in Sydney next month, Nathan Wilson, Research Director at Gartner, said that executed well, use of agile methods has the capability to transform IT-business relationships 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 team are dedicated to the culture change that is necessary for success.

"Done well, agile development can be an integral part of the portfolio of methods that the CIO uses to deal with increasing business demand for innovation," said Mr. Wilson. "Done badly, agile development will create a lot more problems than it solves."

Gartner has identified 10 guiding principles for agile development:

No. 1: Agile is not one thing

Agile development methodologies are a set of approaches to software development that share a common philosophy but are sharply distinguished in the details of their implementations. They therefore tend to be adapted to different sorts of problems. Sophisticated organizations with a lot of experience may well use more than one of these approaches, but an organization that is getting started should select one approach and master it before attempting other approaches.

No. 2: Agile is not a "pick'n mix" methodology

Agile methods are highly systematic. Every component element of the methodology is crucial to the success of the methodology. A common mistake is for an organization to embrace some elements of an agile methodology, such as the sprint, but to ignore or play down other elements, such as managing "technical debt." Such organizations enjoy the kudos that comes from rapid development and release of new code, but they are storing up trouble by failing to address technical debt.

No. 3: Embracing agile is a joint business-IT activity

The full benefits of agile cannot be achieved without engaging with business leaders, management and the user community. If the rest of the business does not have an immediate appetite for working in a new way, careful planning and communication will be needed to bring different communities of managers and users on board.

No. 4: With agile, it is important to walk before you try running

Experienced agile practitioners can tackle large-scale developments — the equivalent of climbing Mount Everest. But it takes many years to develop the necessary skills to be able to take on such large-scale software projects. Any organization that is starting out on the agile journey needs to start in the foothills to develop the confidence and competence to take on larger tasks.

No. 5: Embracing agile is embracing continuous learning

Agile practitioners must be committed to continuous improvement in quality and cost-effectiveness, which means that every development is analyzed for lessons that can be used to improve policies and working practices. This analysis and learning 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 are directly involved in software development; it is also essential for all the related skills, such as project management, architecture, quality assurance and IT budget management.

No. 6: Agile is about teams and teams of teams

The basic organizational unit of delivery in agile development is a small team, typically expressed as "seven, plus or minus two" people — both developers and quality assurance. From an HR perspective, managing agile teams involves walking a fine line between keeping productive teams together and moving individuals between teams to encourage cross-fertilization of ideas. If people are moved too frequently, the teams fail to develop into highly productive units; if people are not moved between teams enough, then each team starts to become isolated and diverges from the other teams. It is important to note that physical location of teams is much more important with agile methods than with conventional approaches to development.

No. 7: Documenting, managing and eliminating technical debt is a core concept of all agile methods

Technical debt is the difference between the state of a piece of software today and the state that it needs to be in to meet appropriate and necessary requirements for quality attributes such as reliability, performance efficiency, portability, usability, maintainability and security. All development creates technical debt. The difference with agile methods is that technical debt is recognized and added to the backlog, not swept under the carpet. Any organization that seeks to embrace agile methods must put in place the necessary elements of the chosen method dedicated to ruthless refactoring and the elimination of technical debt.

No. 8: Working with third-party development service providers on agile development demands special care and attention

Many user IT organizations have a long history of outsourcing application development to specialist service providers. While there is a role for service providers in agile development, it is a very different commercial model and a very different engagement model. Since colocation with business users is axiomatic to agile methods, the opportunities for sending large amounts of work offshore are somewhat limited, so some form of supplemental staffing is likely to be a more useful model.

No. 9: The impact of agile goes well beyond the software development teams

An integral component of the agile methodologies is the concept of "continuous delivery." Agile methodologies are predicated on continuous engagement with business managers and users, and lead to the delivery of a continuous stream of new and modified software into the operational environment. This demands significant changes in working practices for both business governance and relationship management and the infrastructure and operations teams.

No. 10: Other software development methodologies will still have a place in your portfolio

In most commercial and public sector organizations, the application portfolio will present many different classes of development problems, some of which will be well-suited to agile, while some may be better-suited to incremental, iterative development and some to a modified waterfall model. Agile is not "better"; it is simply better-adapted to some problems, but not so well-adapted to others.

Share this

Industry News

May 19, 2022

Jellyfish announced the launch of Jellyfish Benchmarks, a way to add context around engineering metrics and performance by introducing a method for comparison.

May 19, 2022

Solo.io announced the addition and integration of Cilium networking into its Gloo Mesh platform, providing a complete application-networking solution for companies’ cloud-native digital transformation efforts.

May 19, 2022

Aqua Security announced multiple updates to Aqua Trivy, making it a unified scanner for cloud native security.

May 18, 2022

Red Hat unveiled updates across its portfolio of developer tools designed to help organizations build and deliver applications faster and more consistently across Kubernetes-based hybrid and multicloud environments.

May 18, 2022

Armory announced public early access to their new Continuous Deployment-as-a-Service product.

May 18, 2022

DataCore Software announced DataCore Bolt, enterprise-grade container-native storage software for DevOps.

May 17, 2022

DevOps Institute, a global professional association for advancing the human elements of DevOps, announced the release of the Upskilling IT 2022 report.

May 17, 2022

Replicated announced a host of new platform features and capabilities that enable their customers to accelerate enterprise adoption of their Kubernetes applications.

May 17, 2022

Codefresh announced that its flagship continuous delivery (CD) platform will be made accessible as a fully-hosted solution for DevOps teams seeking to quickly and easily achieve frictionless, GitOps-based continuous software delivery in the cloud.

May 16, 2022

Red Hat announced new capabilities and enhancements across its portfolio of open hybrid cloud solutions aimed at accelerating enterprise adoption of edge compute architectures through the Red Hat Edge initiative.

May 16, 2022

D2iQ announced a partnership with GitLab.

May 16, 2022

Kasten by Veeam announced the new Kasten by Veeam K10 V5.0 Kubernetes data management platform.

May 12, 2022

Red Hat introduced Red Hat Enterprise Linux 9, the Linux operating system designed to drive more consistent innovation across the open hybrid cloud, from bare metal servers to cloud providers and the farthest edge of enterprise networks.

May 12, 2022

Couchbase announced version 7.1 of Couchbase Server.

May 12, 2022

Copado added Copado Robotic Testing to Copado Essentials.