So far this year, things are shaping up pretty well for DevOps, and we've put together some highlights for the technology trends that DevOps is heavily impacting. First, we are expecting more clearly defined DevOps principles and practices to emerge. In fact, J. Paul Reed, Managing Partner at Release Engineering Approaches, has declared that, "2017 will be the year that DevOps is finally declared '1.0' stable." This post talks about the emergence of DevOps 1.0 and how that might look. Next, we will explore the impact of DevOps on IT and the movement towards programmable infrastructure and how DevOps will continue to transform software development and Application Lifecycle Management (ALM). Finally, we will dig into the multiple security challenges that persist for businesses adopting DevOps, how DevOps fits into Big Data and the challenges of Big Data infrastructure for IT, all the while giving a prediction of how we think this year will shape up for DevOps technology trends.
A Clear Definition of DevOps Will Emerge
In spite of the DevOps community's high resistance to formal definition, one is likely to emerge, drawn from the most widely adopted principles and processes used in DevOps. One of the main criticisms of DevOps has been its lack of a clear definition, causing confusion for businesses because they don't understand how it works, and what to expect from it. It doesn't help that in some cases, companies such as Netflix and Target have software development chains that are clearly based on DevOps, even though nobody calls it that internally. With a clear definition, businesses will find it easier to determine if DevOps is the right fit and how to go about adopting its principles and practices.
DevOps and Application Lifecycle Management (ALM)
DevOps is becoming the new ALM. Whereas ALM has been mostly defined by its processes, DevOps presents a new definition of ALM that not only embodies its processes, but gives them a cultural context that dramatically improves the speed and efficiency with which new app features and functionality are developed. Through close collaboration between the software development teams and the customer, DevOps ultimately delivers a high-quality software product that genuinely meets the client's needs. This translates directly to high customer satisfaction which in turn increases customer lifetime value at a much lower cost than possible with conventional software development practices.
Programmable Infrastructure and the DevOps Impact
Programmable infrastructure is made up of components as services that can be configured to meet business and customer needs. Iterative software development processes have made it necessary for businesses to develop IT infrastructure that provides a flexible, secure, highly adaptable pipeline for the fast development of sophisticated apps. Outdated, inefficient legacy infrastructure lacks the architecture and resources necessary to keep up with changing client, security, governance, and compliance needs. Furthermore, legacy IT infrastructure lacks the robust security requirements of business today, leaving a business vulnerable to hacks, data breaches, and malware infections. DevOps is changing the way we approach IT infrastructure and how security, compliance and big data are managed.
DevOps will continue disruptive cultural change
Nearly half of existing businesses have adopted DevOps, according to this post by Pete Goldin at DevOps Digest. He goes on to state that there is 59% rate of adoption of DevOps at companies that employ over 10,000 employees. This widespread adoption signals that DevOps has entered the mainstream and will be key to businesses that want to maintain a competitive edge. However, the main obstacles to adoption tend to be finding the resources to invest in DevOps, the lack of talent with DevOps experience, and difficulty understanding what DevOps is and the business problems it solves. Adobe Systems embraced DevOps when it transitioned from packaged software to offering its software as cloud-based services. Sachin Garg and Kevin Patterson at Adobe had this to say: "The radical transformation of our development practices required replacement of disparate, legacy services and custom tools." DevOps facilitates the creation of a highly efficient software chain through its use of programmable infrastructure and process automation.
DevOps Technology Trends in Security and Continuous Compliance
Security and Continuous Compliance (CC) will become more automated. Anders Wallgren, CTO at Electric Cloud, says "Many of the practices that come with DevOps -- such as automation, emphasis on testing, fast feedback loops, improved visibility, collaboration, consistent release practices, and more -- are fertile ground for integrating security and auditability as a built-in component of your DevOps processes." In practice, this means that security and CC can be integrated directly into IT infrastructure from the very beginning, which will allow developers to focus on developing and deploying software instead of getting bogged down by onerous security requirements. Wallgren also asserts that a key to getting security and DevOps on the same page is "by using tools that are shared across the different functions, or an end-to-end DevOps Automation platform that spans Development, Testing, Ops, and Security." To sum it up, creating an IT infrastructure that integrates and automates security and continuous compliance from the very beginning will produce software that is secure and compliant, eliminating the need for 'tacking on' security and CC at the end of the development cycle.
DevOps and Big Data
Over the last few years, Big Data has become so complex that terms like 'data pipeline' are being used to describe Big Data processing. Big Data is comprised of large data sets that can be analyzed to reveal patterns that inform decision making and are used to shape business goals. Data Scientists are responsible for creating the algorithms for sorting through massive amounts of data, while Data Engineers create and maintain Big Data infrastructure. Some companies have adapted Agile methodologies to fit the needs of their data pipeline, producing custom data visualization solutions tailored to their business goals.
The development stack for Big Data is often complex and distributed, with components that include (distributed) data resources, data clusters, data processing and analytics, and a data client that visualizes analyzed data as charts and graphs. This is new territory for IT departments, and one that may prove difficult to navigate. IT departments that are to be responsible for Big Data infrastructure will need to know about distributed computing, how to create and manage data clusters, how Big Data is processed and analyzed, and how to automate all of it. Finally, developers will have to know how to create the data client software needed for end users to interact with and interpret the data.
DevOps replaces poorly coordinated teams with a highly collaborative culture that has individuals and teams working toward shared data visualization goals. DevOps transforms complex, inefficient infrastructure into the high-performance infrastructure Big Data needs in order to collect, process, and deliver meaningful data in real time. Such an infrastructure would be able to provide the most current data available to manage business decisions concerning product development, marketing, and business growth.
DevOps is on track to become the new model for ALM, having proved itself highly effective at delivering high-quality software much more quickly than siloed teams can deliver. By the end of this year, we're betting that DevOps will have more clearly defined principles and practices, making it easier for businesses to determine if DevOps is a good fit and, if so, how to create an effective adoption strategy. Big Data will benefit from DevOps by creating the highly collaborative environment necessary for fast development of the tools and functionality necessary to deliver Big Data visualization in real time. DevOps may come to be seen as the way to get things done by bringing people together across departments through shared goals and strong collaboration.