Recent surveys into software development show increasing numbers of companies have started down the path of 'continuous delivery'.
So what is it? Why is it growing so fast, and what do companies need to be aware of and plan for? Version management and document collaboration expert Perforce Software examines the facts and offers insight into this booming sector.
We speak with Mark Warren, the company's European Marketing Director, about the new norm for software development - continuous delivery.
TechRadar Pro: What is continuous delivery?
Mark Warren: Continuous delivery is an emerging software development methodology that automates and improves software delivery.
By building the capability to rapidly, reliably, and repeatedly push out enhancements and bug fixes to customers at low risk and with minimal manual overhead, software development organisations can respond to business needs faster and improve satisfaction for business stakeholders and end-users alike.
Clearly, the potential benefits are huge - software can be built faster with less effort and stress, but without compromising the quality.
Problems are dealt with more quickly, and the development process becomes broader and more scalable. In other words, it effectively removes the brakes from many projects.
Continuous delivery is rapidly becoming the new norm for software development and adoption rates are soaring.
A recent in-depth Evans Data survey of 600 software development professionals (undertaken in the UK and US on behalf of Perforce in September 2013) shows that they have a firm grasp of the key concepts, but exact definitions vary.
Some respondents view continuous delivery as automation related, while others see it as related to continuity, time, or process.
TRP: What is the adoption rate of continuous delivery?
MW: Almost two-thirds (65%) of software developers, managers, and executives report that their organisations practice continuous delivery for at least some projects, with 28% saying they practice it across all their projects.
These rates are much higher than anticipated, and higher than previous industry reports, although it must be noted that more than half of the reported adoption in the survey is not organisation-wide. Furthermore, only 3% of respondents say they have no plans to adopt continuous delivery.
TRP: Is it just being driven by SaaS companies?
MW: Market perception, and the view of many industry analysts, is that only Software-as-a-Service (SaaS) companies are currently practicing continuous delivery. So have things moved on? Indeed, more than 80% of SaaS companies report adoption, with 47% reporting use across all projects.
However, the survey does show cross-industry uptake among non-SaaS companies, including boxed/on-premise software, hardware/embedded components, industrial goods and services, and consumer goods and services. Within these sectors, 18% of respondents report adoption across all projects and 33% across some projects.
TRP: What's driving the move to CD?
MW: To find out specifically why continuous delivery is becoming so popular, we asked survey participants to rank the top five benefits. Time to market and better quality product came out on top, followed by competitive advantage, higher customer satisfaction, and reduced cost of development.
Respondents who anticipate a longer adoption time view continuous delivery as a large undertaking with a huge payoff. Therefore, understandably, people who think it will take their organisations more than three years to adopt it rank faster time to market much higher than those who think it will take less than two years.
Interestingly, almost half of respondents (46%) think their competitors have already adopted continuous delivery. This perception - especially compared to the 28% of respondents who have fully adopted continuous delivery - highlights the role of competitive pressure in adopting proven development systems.
TRP: What are the barriers to adoption?
MW: In a bid to discover why all companies aren't making the move, respondents were also asked to rank the top five barriers to adopting continuous delivery.
Integrating automation technologies (version control, automated testing, etc.) proved to be the largest issue. A close second was lack of skilled people. The third-ranked barrier is lack of collaboration – or not having the right platform in place to implement continuous delivery.
SaaS companies see a lack of skilled people as their biggest barrier to starting continuous delivery. While non-SaaS companies think the biggest barrier is getting automation technologies to integrate.
TRP: How long does it take to move over to CD?
MW: More than half (53%) of respondents in the survey say it would take their organisation less than 12 months; 85% say it would take less than two years.
Furthermore, three quarters of respondents whose organisations have already begun adopting continuous delivery say they can move in less than one year, compared with only 41% of respondents who have not yet started their adoption.
These perceptions differ significantly from the views of some industry analysts, who see continuous delivery as a substantial change from most software development organisations' current practices.
Levels of optimism appear to vary by job role. Executives are more optimistic than developers about how quickly their organisations can change; they are more likely to think that they can move to continuous delivery in less than one year.
Among the more experienced software professionals, there is a big drop in the number who share the belief that the road to continuous delivery is only a year long – from 65% of those with less than 10 years of experience to 45% among respondents with more than 10 years of experience.
TRP: What kinds of systems need to be in place to support CD?
MW: Nearly all respondents recognise the role of their collaboration platforms as important in achieving Continuous Delivery. 71% view it as very or extremely important. Among respondents from SaaS companies, which have higher rates of adoption, 83% view their collaboration platform as very or extremely important.