One of the major reasons companies eschew older software development methodologies for Agile is to make the process faster, more nimble, and ultimately better able to meet the constantly shifting needs of the business. The “holy grail” of this effort is usually continuous deployment or continuous integration, where software updates typically happen on an hourly basis. In a competitive business world, this kind of transformation is sometimes necessary for survival.
Embracing state of the art innovations like containers and automation also remain part of the process, but let’s take a closer look at the current struggle for enterprises to achieve continuous integration. Maybe these insights help your own company undergo a similar evolution in software engineering.
A recent study by Dimension Data, and reported on in Information Week, looked at the adoption of Agile and continuous integration at the modern business. Over 700 industry professionals responded to the study; working at companies of all sizes from the enterprise to the SMB. The survey noted the wide popularity of Agile throughout the technology world, and while continuous integration is a worthy goal, a relatively smaller number of organizations have yet to achieve it.
About one-third of the respondents reported a full engagement with Agile among all their software development teams, while 94 percent noted at least part of their organization’s software engineering process used Agile. The other six percent either didn’t use Agile at all or were experimenting with the methodology on a pilot project.
For the purposes of the study, continuous integration is considered to be the ability to deploy software updates on an hourly basis. 28 percent of the surveyed organizations consider that level of CI to be their ultimate goal with Agile, while only half of those firms achieve it today. Dimension Data noted that 18 percent of last year’s survey respondents had CI as a goal, showing a notable increase on the current survey.
Even if companies don’t reach that final goal of hourly software updates, they are still reaping the benefits of Agile, according to the survey. 35 percent of the respondents integrate updates on a daily basis, while 17 percent are able to do so every week. Another 20 percent update their systems on a less than weekly basis, but still faster than with older methodologies, like the Waterfall.
Naturally, bug fixes also happen more quickly when using Agile – likely with other software development innovations contributing to the higher efficiency. These speed improvements were relatively minor – a few percentage points – probably due to software enhancements being more important than anything but critical fixes. Around 20 percent of the respondents use test-driven development and are seeing fewer defects as a result.
87 percent of those surveyed embrace some form of automated testing, with either Selenium and/or Appium being used by 70 percent. The use of DevOps is also emerging with 88 percent of the respondents either considering it or already leveraging some of its practices.
The bottom line remains simple: If your organization is interested in a faster development process, obviously Agile needs to be on your radar if it isn’t already. You may never reach continuous integration, but benefits are able to be achieved throughout your journey.
Stay tuned to the Betica Blog for additional dispatches from the world of software development.