Secure Agile development is a mature, iterative, collaborative methodology that splits the overall development process into smaller phases, or "sprints." A growing number of companies worldwide are adopting Agile, believing it's an efficient way to design robust applications that are resilient to cyberattacks. The best way to understand the global diffusion of Agile development is to survey development teams, consultants and trainers and highlight the key takeaways. Here's a closer look at which Agile techniques are most commonly adopted, and the related benefits.
The State of Agile
According to an InfoQ poll, the majority of firms use Agile techniques in some capacity for software development projects. But companies that have totally adopted Agile methodology for their projects "have definitely seen measurable improvements in time to market, product quality and customer satisfaction." Many companies are now looking toward scaling Agile processes for growing projects that involve a significant number of employees and external consultants. Experts noticed that firms often apply Agile to medium-sized projects, since they have considerable advantages over larger projects in terms of planning and efficiency.
The Agile approach is spreading from IT departments to other business units that can benefit from its practices and principles: The Scrum method is particularly popular with devs and managers because it accounts for the fact that customers may change their minds during a project's lifecycle — something that almost always seems to happen, especially during big and/or long-term projects.
The projects that most benefit from Agile are web technology, mobile technology and the Internet of Things. As InfoQ states, "The Internet of Things (including wearables) will impact development teams in ways they have yet not imagined. One of the biggest impacts will be in the testing community — the complexity of testing will increase by orders of magnitude and there will be a strong push to much more test automation to be able to cope."
The Impact of Agile on App Development
A VersionOne survey found the number of distributed teams that practice Agile has doubled this year, rising from 35 percent to 76 percent. The most commonly used Agile frameworks are Scrum and Scrum/XP.
According to VersionOne, the top reasons companies adopt Agile include:
- To hasten products' time to market
- To more easily and efficiently handle changing priorities
- To better align IT objectives with business objectives
- To increase overall productivity
While 15 percent of companies reported that none of their Agile-based projects had failed, those that did experience unsuccessful ventures cited reasons such as dissonance between the company philosophy/culture and core Agile values, pressure to follow traditional waterfall processes, organizational or communications problems, and a lack of experience with Agile methods.
How Agile Goes Global
Agile development has the potential to benefit almost every company, and its spread is virtually homogeneous on a global scale. One reason for this is that projects based on Agile techniques often involve development teams from different places around the world, which encourages its use across various cultures. Usually, the members of Agile teams take part in multiple projects within companies, sharing their experiences and influencing others to adopt the methodology as new projects are completed and applications are developed. As a result, there's a noticeable increase in the number of Agile products in those companies: VersionOne confirmed that nearly 57 percent of organizations have adopted Agile methodology across five or more teams.
Another reason Agile has become so popular on a global scale is the outsourcing of development projects: VersionOne notes that nearly 54 percent of companies surveyed already use (or plan to use) Agile on outsourced projects.
More and more, global companies of every size are adopting Agile. And in time, developers in those companies will see a growing number of successful projects as a result.