One of the biggest headaches IT leaders face today is managing cross-functional teams to develop and deploy high-quality software faster. Not only does their work have to be continuous to stay productive, but there’s the need to save the business money, time and improve end user and customer satisfaction while fixing a seemingly endless parade of bugs.
Without a robust DevOps process in place that benefits the entire organization, IT management and tech leaders often feel like they are chasing the impossible.
What is DevOps?
DevOps is a set of practices that help you plan how both development (Dev) and operations (Ops) teams can work cohesively to deliver your company’s products and services, meet customer needs and stay ahead of your competitors. In short, it is a set of tools that leverages people, processes and technology to enable safer, faster handling of any IT software delivery initiative.
Yet, according to Gartner, as of the beginning of 2022, 75% of DevOps initiatives have not met these expectations because of inefficient collaboration, lack of buy-in from employees, trying to do too much too quickly and unrealistic expectations. For a methodology that is so critical to businesses today, it’s still surrounded by uncertainty and doubt. Let’s look at how you can make DevOps work for you and why it’s so important that you do so.
Addressing Bugs
Because detecting and addressing software bugs is a major priority of any IT department, disruptions need to be handled quickly and efficiently. This can only be done through immediate action and a tried-and-testing workflow in which all departments involved can act fast. The beauty of DevOps is that the process can be continuous rather than reactive and thus improve the quality of your software when deploying new features, as DevOps allows you to make changes rapidly.
Without DevOps, productivity is slowed or even brought to a halt which leads to an often-damaging customer experience.
Improving Customer Satisfaction
A significant benefit of adopting DevOps practices is that it lowers the failure rate of new features while improving recovery time. The continuous deployment, testing and feedback loops ensure faster service delivery and happier customers. The development team can focus on creating superior products by automating the software pipeline while the operations team can improve business delivery.
Faster delivery of your products and services should not be a pipe dream. Those who understand and implement DevOps should feel confident they can stay ahead of the competition.
Improving the Security of Your Software
DevSecOps builds on the DevOps pipeline to integrate security from the very beginning of the development cycle rather than at the deployment stage when flaws and vulnerabilities are more difficult and costlier to fix. Combining development, security and operations across your products and services will improve quality, security and your ability to meet client expectations. Building security into your pipeline seamlessly means bugs and other issues can be addressed more easily and remain almost unnoticed to the end users.
DevOps and DevSecOps make this possible so that outdated security practices are not integrated into your software and don’t interfere with customer demand. So, if increasing customer satisfaction and positively impacting your bottom line by delivering high-quality, secure and effective software is on your business priority list, then implementing a DevOps process can not only save IT headaches but deliver better business outcomes.
The adoption of IT technologies has increased exponentially over the last few decades. Nowadays, the need to create quality web applications while simultaneously managing their extensive data effectively is a major concern for any organization. As such, there have been continuous efforts to come up with better approaches to software development, data analysis and data management.
In order to meet the needs of today’s internet users, technology companies have intensified their efforts and are increasingly making use of all their available resources to find progressively efficient ways to create web applications within a shorter time-space and with superior quality, and to find more effective ways to integrate data-driven decision-making.
In order to accomplish these feats when it comes to application development as well as data pipelining management, most of the larger organizations are now following a set of practices, DevOps and DataOps, respectively. Within this environment, developers must create applications that can function across various hosted providers, each with its own specific administrators and requirements.
This can only be accomplished by looking past the traditional storage capabilities. Instead, developers and organizations they work for are creating an underlying data fabric that facilitates what they’re trying to do, and any cloud provider they want to do it with.
An Introduction to DevOps and DataOps
DevOps and DataOps are a set of practices that relates to software development and data management, respectively.
These practices can be applied to a single project or can be followed at an organizational level. DevOps emphasizes the automation of the processes of the different teams (software development team, quality assurance team and IT operational team) so that they can easily complete their relative tasks (i.e., design, code, create, check, deliver, deploy, operate and monitor).
DataOps, on the other hand, can be described as DevOps that includes data analysis, which empowers businesses to create processes to meet the needs of users throughout any data usage life cycle.
DevOps emphasizes the cooperation of the software development team (including testers) with system administrators (operational teams). In a similar way, DataOps relies on the cooperation of teams of data engineers, data scientists and other data practitioners who manage data-related processes (i.e., data storage, data processing, data decision-making, data archiving or data delivery).
The concept underscores both communication and collaboration between the different teams within the same organization, ultimately removing all obstacles for seamless integration between the practices and the end product, including cross-device compatibility.
The combined team can make the project more visible and deliver faster results. It also increases the morale of the company by showing that, when it comes to project management, people will still be above processes and resources.
Benefits of DevOps
The benefits of DevOps include:
Transparency — By regular communication and coordination with the development team, the QA team and the IT operations team will be updated with the latest project details and will be more aware of the processes of other departments.
Quicker and high-quality deployment cycles — On any great DevOps platform, the pace of deployment will be improved by applying DevOps practices. The scope of the teams will be limited (i.e., for a small task/module) for a deployment period, as such their efficiencies will increase.
Faster bug fixes — Because tasks are smaller and continually distributed on the appropriate servers, the development team can receive input very easily from the QA team, allowing the development team to provide much faster resolution of any non-working components. Application stability would be a by-product of this method, because the cause behind any bug can be established very easily.
Flexibility — Because agile methodology insists on managing the raised change request, teams aligned with DevOps will be able to manage any unplanned work more effectively.
Benefits of DataOps
Now, let’s take a look at the benefits of DataOps:
Faster data processing — When different teams cooperate and interact on a daily basis and work on micro databases rather than on all at once, they not only avoid data overwhelm, they also accomplish much faster processing of data at all the different stages.
Quicker problem solution— Similarly to DevOps, businesses can benefit from DataOps in multiple ways. DataOps data is processed in batches as this helps teams to recognize issues related to a batch of data faster as the emphasis is limited.
Better data security — We can protect our data in the cloud by using a range of safety features such as two-factor authentication and virtual private networks, the best of which provide a greater level of security than is available merely through your ISP. As data security professionals are in constant communication with data integrators and data analysts in a DataOps scenario, data security at each process level is made easier.
Improved resource output — When the team conforms to the basic principles of DataOps, seamless communication and transparency between the different teams will help the performance of each team member and lead to better resource output.
The Lessons We Can Learn from eharmony
The eharmony membership pool consists of singles in the U.S. as well as more than 200 countries around the world, making up about 5 million visitors per month.
The company is continuously bringing out new features such as their most recent one-on-one video communication feature aimed at helping their members to maintain meaningful connections in the current era of social distancing. But the company has come a long way since its debut in 2000, learning very valuable lessons along the way.
Overcoming Several Challenges
eharmony is leading the online dating industry through innovation by continuously improving its two key applications — Singles and Matching. But they’ve had to make significant changes on their journey to remain at the top. Their challenges included:
The IT team needed a considerable amount of time to refresh the database, requiring the involvement of DBAs, storage specialists and network administrators.
The labor-intensive process of creating, scanning and storing database snapshots made it difficult to create test datasets for new releases. As a result, QA often carried out tests using stale data.
Database improvements triggered development freezes, which hindered the team’s ability to deliver new features and functionality.
Their data volumes were increasing constantly, with several Oracle databases requiring between 20 to 70 TB of storage.
Combining DevOps and DataOps
eharmony has also implemented a self-service data management solution called Delphix, which enables the individual teams to develop and update environments as needed.
Today, their refreshes can be completed within an hour, providing accurate and relevant information to development teams on demand.
Other solutions included:
They have saved over five thousand person-hours in just three years by automating database provisioning, refresh and rollback tasks. In the process, this has also saved the company over $3 million in operational costs.
Through compression and virtualization, eharmony has reduced their database storage footprint to a fraction of the original size, reducing their storage requirements by almost 80%.
As development teams adopt agile methods and more frequent releases, demand for non-production environments is expected to increase, further increasing storage cost savings. eharmony has also eliminated data related defects by providing accurate, up-to-date test data. Unrestricted access to test environments significantly improves the ability of QA teams to identify issues before they reach production.
Why DataOps and DevOps Are a Match Made in Heaven
It is easy to see why DataOps and DevOps go together so well. DevOps calls for continuous software monitoring, testing and deployment. DataOps are inherently modular because they are designed to execute a single function. Software that is scalable and easily fits into the DevOps framework.
Using DataOps in the DevOps process will help to fully recognize the benefits of continuous integration by validating the implementation promised by DevOps. These tools can be combined to optimize computing in a way that should be used during development whenever possible.
Chrysler Windsor – By Lars-Göran Lindgren Sweden – Own work, CC BY-SA 3.0 https://commons.wikimedia.org/w/index.php?curid=1385155
It’s the late 1940s and the automobile industry is just taking off. You run one of the product marketing teams at Chrysler. Wanting to make the best of an exploding market, your marketing team says, “You’ll drive 1,200 times as much with the new Chrysler Windsor!”
Of course, that advertising never makes it to the public, because it says nothing. So you’ll drive more, so what? It tells the customer nothing about the benefits of driving more. And some customers may make a connection between driving more and “because you want to,” but likely most won’t without context. So into the trash bin the entire ad campaign goes.
Yet, that is what happens in CI/CD every day. Every time you read a blog, pick up a book, listen to a speaker, it’s all about how many bazillion times more you’ll deploy with CI/CD in place. And I ask the same question: So you’ll deploy more. So what?
Most of those making these statements never get around to talking about how that can help with stability and user acceptance, a few get around to it roughly halfway through whatever they’re presenting, when the whole “You’ll deploy 70 billion times more!” statement is long gone. Very few drive the connected point home and make these statements show value.
Particularly if your target audience is people without a strong knowledge of the topic, talk about the benefits, not the act. I can create a script that builds my source tree just as many times as I like a day, but that adds value for no one, absent any other change.
While I’m going on about terminology, the whole “Delivery is not Deployment” topic needs to be made explicit in each and every talk/article/book. Marketing people have actually gotten better on this topic, but influencers have not. It’s time to step up the game, clarify, speak in meaningful terms.
In Short, Pique Their Interest
In the end, if you’re talking to people about CI/CD, you are doing so because you like to educate. So seek clarity. Many an enterprise IT person interested in what CI/CD tools and DevOps in general can offer their organization will be turned off by “You’ll deploy all the freaking time!” with no statement of benefit to them. And they’ll hear deploy and assume “to production.” Don’t do that. Education happens in clear and understandable terms; use them. Help those interested parties understand benefits; don’t confuse and disconcert them.
Oh, sorry, I’ve accidentally found someone’s soapbox. I’ll return it now.
The recently released fifth annual “State of DevOps Report” by Puppet has once again brought with it fresh insights into what drives high-performance teams. The report, which comes at a time when DevOps has ceased to be a buzzword, provides proof of why more and more businesses across the world are adopting DevOps to improve their organization’s performance, revenues and profitability. DevOps has truly come of age and this year’s “State of DevOps Report” clears any doubts fence-sitters may have about the effectiveness of the DevOps approach.
The 2016 report reasserts that unparalleled IT and organizational performance is a result of a team effort spanning development and operations. The report also highlights the importance of improving the entire product life cycle—from initial product planning, to quality and security assurance, to customer feedback—to speed up delivery while improving quality, security and business outcomes. You can read the full report here.
In today’s competitive business environment, DevOps has emerged as a vital solution that helps organizations meet ever-growing industry demands. The “2016 State of DevOps Report” helps us understand how the practices associated with DevOps affect IT performance and organizational performance. Let us examine the findings of the report to ascertain how DevOps can benefit your organization.
Why Does Your Organization Need DevOps?
The “2016 State of DevOps Report” makes it plain and simple that companies that incorporate DevOps practices get more done. According to the report, high-performing IT organizations deploy 200 times more frequently than low performers, with 2,555 times faster lead times. They have 24 times faster recovery times and three times lower change failure rates. High-performing IT teams spend 50 percent less time remediating security issues and they spend 22 percent less time on unplanned work and rework, the report states.
Performance
If we boil down the report findings into actual benefits of adopting DevOps, we could say that DevOps enables continuous software delivery with less complex problems to fix and faster resolution of problems. This essentially means that you can deploy faster and more effectively in more stable operating environments and add value rather than just fixing or maintaining.
DevOps can revolutionize the performance levels of organizations and allow them to deploy at a rate never seen before. It has certainly enabled organizations such as Etsy, Netflix, Facebook, Amazon, Twitter and Google deploy hundreds and thousands of code per day while delivering world-class stability, reliability and security. You can find out how different organizations have implemented DevOps to their benefit in this YouTube video.
Security
Higher performance is not the only payoff in the DevOps culture. Organizations that adopt DevOps practices are known to have better information security. The “2016 State of DevOps Report” clearly states that organizations that integrate information security objectives into daily work spend 50 percent less time remediating security issues than low performers. This has a positive impact on IT performance and security outcomes.
Any organization, irrespective of size, can employ DevOps to achieve high performance levels and meet business goals while cutting down on costs related to fixes and remediation security issues.
How DevOps Transforms Teams
Consider this scenario: In an organization that does not apply the DevOps methodology, the development team writes code and develops a product, which is then sent to the testing team that verifies if the code meets the requirements. The operations team steps in to run the product only after this process is complete. The DevOps philosophy was created to break the silos that teams operate in and effect better collaboration and performance.
The culture shift DevOps brings about in organizations is substantial, and since culture is a key factor responsible for a company’s performance, application of the DevOps philosophy provides measurable and non-measurable results. A few of them are:
Employee Engagement
DevOps is neither a method nor a tool, it’s a culture! In organizations that observe the DevOps culture, the development and operations teams work outside silos, releasing products faster, thereby increasing operational efficiency. This is made possible by the operations team giving the developers constant feedback about the code and troubleshooting problems with the user experience in mind. This continuous learning and delivery practice allows cross-functional teams collaborate as one team with one goal, thus facilitating higher performance levels. The improved organizational culture and enhanced employee engagement can help organizations not only in retaining great talent but also in recruitment.
Organizational Success
The “2016 State of DevOps Report” effectively explores the relationship between employee engagement and organizational success and goes on to show that there is a strong correlation between these two factors. The report states that employees in high-performing organizations are more than twice as likely to recommend their organization to a friend as a great place to work.
Organizations can greatly benefit from adopting the DevOps culture. The “2016 State of DevOps Report” shows that high-performing organizations are widening their lead against lower-performing organizations. This can be attributed to the increased productivity and creativity of highly engaged employees that helps them provide better experiences to customers.
Organizations can achieve great business results by reinvesting the human time, creativity and energy saved by reducing rework and downtime through DevOps. Herein lies the ROI of DevOps—the competitive advantage that organizations get by investing in a philosophy that positively affects bottom-line results!
About the Author/ Pallavi Poojary
Pallavi Poojaryis a writer with Edureka, an online learning company with more than 250,000 learners spread across the globe. She writes on hot technologies and skills that are in demand today, including DevOps, Big Data and Project Management, to name a few. She is a believer in transformation of careers through learning
Contrary to what the massive articles around digital transformation suggest, your business lines’ primary concern isn’t the amazing technology innovations that pop up every day but how well they’re going to deal with your industry’s disruption. Something is sure, your IT organization’s digital transformation cannot be narrowed to technology changes; that’s a simplistic vision which ignores the disruptive impacts on businesses, particularly on the IT function.
Howard King, writing in “What is Digital Transformation?” published in The Guardian, makes it clear, “Transformation is a whole scale change to the foundational components of a business: from its operating model to its infrastructure. What it sells, to whom and how it goes to market.” He’s right, the business-oriented vision of IT demands a transformation of your IT organization including its infrastructure, applications delivery approach and operating model, and DevOps increasingly is cited as the foundation of the new IT.
This article shares my experience and lessons learned implementing DevOps as the foundation of digital IT organizations.
Top Priority: Dealing with Your Industry Disruption
The belief that implementing a continuous delivery infrastructure is all your business need to survive digital disruptions is a marketing hype DevOps practitioners have grown accustomed to. It’s a myth that prevents you from making informed digital transformation decisions. Emphasizing the technology at the expense of your industry’s disruption forces you to make technology change prematurely; your priority actually should be to figure out how to deal with the disruptions hitting your industry.
Ask yourself this: What’s the interest in investing in scattered continuous delivery infrastructure implementations, when your favorite vendors and consultants aren’t able to clearly address these concerns:
How can you restructure your business value stream to make it lean and agile so that the right services are timely delivered to the right market segments?
How can you integrate DevOps, IT as a service, cloud, Internet of Things and big data into a coherent and consistent business capability so that the right services are timely delivered to the right market segments?
What’s the architecture of your future information system, including your virtual data center and application delivery infrastructure?
What will your role be as the CIO? How will the relationships with your business lines and vendors be managed?
Make no mistake about it, these are your business line concerns of the moment. Unless you address them, Chef, Puppet, CodeDeploy or any other software application alone won’t help to keep up the pace imposed by Uber, Apple, Google and the like. You’ll need to bring together your business and IT staff in a lean and agile capability, which demands a re-engineering of your IT structure, processes, practices and governance.
DevOps is the Foundation of Your Digital IT Organization
Let’s remove the ambiguity: Infrastructure as code isn’t DevOps. The increasing confusion of DevOps with continuous delivery infrastructure is slowly but surely killing it—it’s even disqualifying it as a competitive advantage. That vision focused on tools has nothing to do with the logic underneath DevOps.
As I’ve been making clients happy with it, DevOps is primarily an application delivery model that seeks to make businesses responsive to market opportunities through accelerating added-value applications delivery and with the goal of continuously generating value. It’s based on three principles helping businesses survive digital disruptions, then grow and prosper:
Using continuous delivering infrastructure to speed application delivery doesn’t make sense unless tangible business benefits are generated.
Applications are the means by which value is brought to customers and business benefits are brought in.
Agile principles across your software development life cycle makes your value stream lean and agile which in turn results in continuous value.
The delivery model uses three levers to implement the above principles and establish DevOps as the foundation of your digital IT, they include:
The rules of the game, which are agreed-upon principles, practices, roles and responsibilities and tools institutionalized to ensure agility and accelerated applications delivery;
The operating model, which is the lean and agile work environment resulting from the application of the rules of the game; and
The continuous delivery infrastructure, which is a platform that leverages infrastructure-as-code solutions to accelerate applications development and deployment.
The Digital IT Organization: Approach, Principles, Tools
Success in IT organization transformations often come more from a stream of small wins than from a one-time flood. That’s what I call incremental transformation, illustrated in the following digital five-stage transformation journey:
The following recommendations definitely will make you instrumental to your IT transformation and help your business meet the digital economy’s competitive challenges.
Strategize
A CIO who’s expected to help business lines survive their industry’s disruption, grow and prosper first must clarify their business objectives; estimate potential gains, losses, and risks; and create a consensus on the DevOps delivery model to implement in terms of high-level architecture and implementation timing. That’s the purpose of the Strategize stage.
Never skip this stage—it’s where the executive buy-in is obtained and the vision of the future IT capability is developed. Make sure the following is accomplished:
Creating an executive task force co-led by the CIO and a business representative;
Scheduling one to three workshops addressing your transformation business case, transformation road map, high-level blueprint of the future IT capability and the DevOps adoption plan;
Designating a project manager; and
Communication by task force members regarding the whys and wherefores of the transformation initiative.
Plan
Digital transformation involves many functions within your business in the form of a cross-functional team: the concerned business and IT staff. Your responsibility as the CIO is to bring the voice of the business across the transformation journey, from business objectives clarification, to design and implementation, to pilot experiment, to deployment.
Again, do not overlook this stage—it’s about translating the effort into team structure, implementation schedules and operational and strategic reviews. It’s where the risks likely to hamper projected objectives are anticipated. Make sure workshops involving the business and IT are set up to address the following:
Team structure and roles and responsibilities;
Transformation road map steps translated into operational timelines associated along with expected outcomes; and
The project’s operational and strategic reviews, including a risk management plan.
Design and Implementation
The third stage is when the three dimensions of the digital IT organization are designed and implemented. They include the DevOps rules of the game, the operating model and the continuous delivery infrastructure.
Never improvise this stage—use a proven approach to address the dimensions. Favor a collaborative approach that includes workshops or brainstorming sessions with the concerned business and IT staff.
In the rules of the game brainstorming sessions, make sure the following is addressed:
Organization and operational dysfunctions preventing cross-functional collaboration, rapid problem-solving and decision-making;
Recommendations to the dysfunctions in terms of agile processes, practices, roles and responsibilities and tools;
Recommendations mapping to the appropriate DevOps principles, practices, roles and responsibilities and governance structure; and
The IT organization’s DevOps charter, thought to accelerate the rules of the game and the operating model adoption.
In the continuous delivery infrastructure workshops make sure the following is addressed:
A delivery pipeline, including steps and for each of them what follows:
Required staff, skills and background
Implementation, testing and deployment agile processes and practices
Implementation, testing and deployment tools, such as Chef, Jenkins or CodePipeline
Experiment
For this stage, set up a pilot experiment involving, in a small-scale real-business setting, a panel of business and IT staff to evaluate the likelihood of the project benefits.
Neither skip nor overlook that step, it’s where improvements are identified. Throughout the pilot project, make sure the following is in place:
Executive task force monitoring the pilot project through bi-weekly reviews;
Concerned business lines and IT business lines are involved;
Training campaigns are organized around the DevOps charter, the operating model and the continuous delivery infrastructure;
Strategic management tools, such as balanced scorecards to monitor progress, risks and achievements; and
Measurement of the impacts of the operating model and the continuous delivery infrastructure against the projected benefits.
Deploy
This final stage is a Go-No-Go milestone in which your task force, based on the pilot’s outcome, decides whether to deploy your digital IT capability at the scale of the company. Throughout the deployment:
Capitalize on the benefits generated by the pilot experiment to launch an information campaign emphasizing the benefits for the company and for the staff; and
Train business and IT staff on the DevOps charter, the operating model and the continuous delivery infrastructure.
Wrapping up
Today’s DevOps practices focused on continuous delivery infrastructure aren’t likely to help businesses grow and prosper in the digital economy. Thought leader Joe McKendrick in, “The road to digital bliss is paved with service thinking and DevOps,” confirms that fact.
The approach discussed in this article are detailed in my recent book, written to help make IT leaders instrumental to their business digital transformation:
If you’re considering a DevOps-focused IT transformation, what will be your first steps? I’d love to hear your thoughts, let’s meet @TheFutureOfYourIT.
Not all automation scales. One of the chief impediments of delivering an enterprise-class DevOps service is the decentralization of tooling choices—or worse, the methodologies within the tool for delivering CI/CD. If the methods used to deliver automation are as varied as the last engineer who created them, the spaghetti that ensues will not scale much farther than previous methods did.
The trick to scalability is not so much tooling-dependent as it is approach-dependent. Templates or frameworks (or any word you would use) to describe a relatively preformatted approach to automating a particular kind of technology component are the key to achieving scale.
Ideally, your highest-skilled engineers create the basic template or framework that other, lesser-skilled engineers will use to create the actual automation for each system as they move forward. Using a single way to automate a particular kind of technology enables you to manage large numbers of systems utilizing that technology from a single point of administration. For example, a standardized template used to create the automation to deploy a MySQL-type database could be altered over time to include new testing requirements detected from results found later in the QA process.
Once the new testing is incorporated into the standardized template, the resulting automation is fixed once for every instance of that kind of database in every system that uses it. Otherwise, you’ll need to remember to update every script for every instance of a system that uses this kind of database. Those updates likely will be implemented differently across the applications by different engineers, which may negatively impact testing results (thus defeating the purpose of testing consistency, and actually generating more unnecessary work to locate the variations).
Templates or frameworks (or pick the synonym that suits you) can reduce variability in “how” the automation continuously delivers and integrates. Once variability is killed (or nearly killed), predictability can emerge. Predictability throughout the entire SDLC lowers overall costs, as finding and fixing bugs becomes more systemic. What’s more, there are fewer bugs, thanks to battle-tested processes that produce consistent behavior. If the tooling is sophisticated enough to offer visibility, the costs of quality are reduced even further, and the speed to deliver is radically increased.
DevOps promises that combination of reduced failure rates with increased speed of delivery. However, embracing unstructured variability in creating the automation can kill it. The Ops side of the DevOps equation is all about doing things systemically and predictably, as that is the only way to maintain stability while changes whiz through their world. Getting Ops to buy into DevOps is much easier when they have complete visibility into a predictable, repeatable, process for delivering change. Avoiding that 3 a.m. phone call is something everyone has in common, and reducing variability by focusing automation through the lens of templating or frameworks is an excellent way to achieve it.
Proponents of adopting a complete DevOps approach to application delivery and deployment often note that DevOps includes a change in culture. And not just a change in lateral change in culture—improvements in the way teams across (and within) silos communicate and collaborate—but also horizontal change that permeates every aspect of the organization, from the top down.
That change means more than sharing information, it means sharing the right information. And in the case of convincing business stakeholders and even executive leadership that DevOps is the right approach to succeeding in this fast-paced, API and app economy, that means communicating its impact as it relates to their primary concerns.
Surveys such as Puppet Labs’ State of DevOps has done an excellent job of providing insight into the operational impact of DevOps. We’ve seen improved mean time to recovery (MTTR) and shorter lead times required. If you’re familiar with these measurements, then said improvements no doubt provide an excellent reason to at least begin adopting DevOps.
But what about executive and business leadership? They’re likely no more impressed by an improved MTTR than you are by a 10 percent reduction in average handle time or improved call resolution rate. To get buy-in from business and executive IT stakeholders, we have to provide proof of positive impact in their metrics. CA Technologies illustrated this divide in its DevOps Jigsaw survey, in which 86 percent of respondents consider “business stakeholder education” important, and yet only 33 percent have completed.
Communicating the benefits of DevOps in a meaningful way to non-technical people is an important part of that educational process. That could mean translating MTTR to dollars saved by reducing downtime, or improvements in app performance (response times) translated into productivity increases or reduced abandonment rates. That means focusing as much on measurement after delivery as it does measurement of delivery. It means crossing the chasm (and I know it’s a big chasm, trust me) between marketing and IT to understand abandonment and conversion rates and how they relate to performance and availability. It means making connections between IT metrics and business impacts and being able to connect the two and educate business leaders on how DevOps will or can make a difference.
It means, at a minimum, showing a direct and positive correlation between DevOps and a more agile IT environment and the metrics that consume the lives (and dashboards) of executives and business stakeholders. You don’t have to necessarily do the math for them (though that would be nice if you could), but being able to connect the dots between operational and business metrics should be considered minimum viable effort. And it’s a good place to start the process of affecting the cultural transformation required to sustain the benefits of a DevOps approach.
You’re done with missed release deadlines, long release cycles and risky releases. If your objectives are continuous application delivery to achieve fast feedback loops and reduced waste, DevOps practices provide the means to reach them.
DevOps is all about agile transformation, which reaches beyond agile development into production to achieve continuous delivery. DevOps practices provide help for the necessary next step after agile development to leverage the full potential of agile and avoid massive post-delivery changes through the development teams, but before they are ready to go into production.
The challenge is to navigate that DevOps transformation—and make it happen faster and at less risk. The speed and direction of that transformation depends on individual circumstances—for example, the type of technology you have deployed, the shape of your organization structure and processes, and what your overriding business and IT requirements are.
Beginning the Transformation Journey
Only once you have assessed your organization’s current DevOps maturity and orientation can you begin to scale your DevOps implementation—and move faster on the transformative journey toward continuous delivery. In other words, to know where you’re going, you need to know where you are now.
By measuring your status across each of these dimensions on a scale of Level 0 and Level 4 (see diagram), you can benchmark where you are today and derive recommendations and measures for future improvements.
Culture and Strategy: DevOps requires a strong vision and strategy and its success will depend on the awareness, knowledge, skills and motivation of your employees. This pillar addresses the effectiveness and alignment of your awareness-building and enablement programs as well as your incentivation system with regard to agility in all involved units, dev and ops. It also includes a snapshot of the sentiment and motivation of people to make such a change reality.
Automation: This pillar addresses the maturity of your organization in terms of IT automation as an important prerequisite for continuous delivery. Both the application architecture and the DevOps automation tool chain are assessed. Relevant automation capabilities in application configuration, provisioning, deployment, test, infrastructure and application monitoring are included in the assessment. The maturity is assessed across the tree layers infrastructure, platform and application, and by technology stack—for example, your SAP platform, .NET or Java stacks—and then combined into a single level.
Structure and Processes: The current organizational structure and methodologies and processes in use within all involved units are assessed with regard to their effectiveness for continuous delivery. This focuses on their agile fit and maturity. Governance and how agile teams and processes are embedded into the broader organization are part of the assessment scope as well.
Collaboration and Sharing: Collaboration and sharing between development, operations, infrastructure and middleware teams are crucial to accelerate the delivery process and make it leaner. The assessment looks at particular sharing vs. redundancy of tools (e.g., tools used for deployment), information (e.g., the status of a package in the delivery pipeline), processes (e.g., an ITIL release process and a development release process) and functions (e.g., a release engineer in development and a deployment expert in production).
Now you have the facts at your fingertips. The DevOps Maturity Assessment Service presents all of this as documented findings, to include a series of recommendations on how you can scale and mature your DevOps activity.
DevOps is not a new concept, but it is still maturing.
In the seven years since the first “DevOps Day” took place in Europe, DevOps’ influence has spread to every corner of the world. Many organizations have embraced the concept, and it’s changed the way business is done. These companies have benefited from removing the gulf between development and operation teams—we have seen companies consistently churn out better software, in shorter time periods, to achieve new levels of efficiency.
However, this success has not been replicated for all sectors. Federal agencies, for example, have been slow to adapt to DevOps. For other companies, a rush to implement DevOps has led to ongoing issues that prevent them from realizing the true benefits of DevOps.
Building a DevOps Culture
Many companies are moving in the right direction to implement DevOps successfully, but critical barriers still remain in developing the perfect culture. Here are three ways you can make the vision of DevOps a reality:
1: End the Culture of Fear
Much like previous aversions to cloud, the biggest barrier to implementing DevOps is the fear of change. This is a common problem across sectors, because trying something new can be daunting. This is true for federal agencies protecting national security or private companies attempting an ambitious new project. Successful DevOps begins with buy-in from the highest levels of management—but how do you get them on board?
The best approach is to start small by moving forward with a low-risk, high-reward pilot program. This is an opportunity to get the development and operations teams in the same room and allow them to work together toward a common goal. Once executives see the positive results—reduced time-to-value, efficiency gains and cost savings—they’ll be more apt to double down on establishing a companywide DevOps culture.
2: Find and Establish Talent
A DevOps culture is different and requires a shift in mentality. It also requires talented people with unique skills and experience. Since DevOps is still a relatively new concept—even by technology standards—talented people are scarce and in high demand. But companies can bridge the talent gap through a targeted strategy that incorporates both recruiting and training.
We are starting to see more companies provide educational support programs to develop talent. That must continue if companies want to build the next generation of DevOps leaders. These programs allow employees to grow their skills to better meet the needs of DevOps, which will fuel their career growth while helping their company improve its efficiency.
In parallel with training, companies must aggressively recruit tech talent from top universities that have DevOps classes. Recruitment of tech talent has rarely been more fierce, and it will only intensify as more federal agencies implement DevOps and compete for talent. The commitment from federal agencies to emerging IT strategies, including DevOps and agile development, will make them far more attractive to the best STEM talent.
3: Measure, Measure, Then Measure Again
The ability to deliver impactful ROI metrics is one of the best aspects of DevOps, because it removes all the guesswork whether it is making an impact. The numbers will tell you daily.
The first step is to measure your current metrics, whether you’re struggling to make DevOps work or implementing it for the first time. Companies must know how efficient—or inefficient—existing software development processes are before beginning to change. With the right talent in place with the right frame of mind, it’s time to track the improvement.
Also, understand what results to expect and plan accordingly. Based on our experience, deployment should be eight to 10 times faster with 50 percent uplift in quality (measuring reduction of incidents and incident duration), while software builds should be three to four times quicker.
If you properly set up the perfect DevOps culture, the results can be astounding. We’ve seen a company institute a DevOps structure and reduce release windows from two days to two hours, simply through repeatability and scalability.
The Goal: Break Down Barriers
Despite DevOps rapidly growing in importance, questions remain from those skeptical about its effectiveness. It reminds me of a line I hear frequently at conferences and shows that always gets a laugh: “To err is human. To err on 10,000 servers in 10 minutes is DevOps.”
The truth, however, is that DevOps is a very simple concept about working together and working smarter. It is the realization of a more efficient, more productive organizational model. It’s time for all companies to break down barriers, create a modern culture, and deliver better software in shorter cycles.
About the Author/Raj Ananthanpillai
Mr. Ananthanpillai is the Chairman, CEO and President of InfoZen and has been with the company since January 2004. Previously, he served as the Chief Strategy Officer of ePlus, a business process automation and financial services company, responsible for technology, marketing, analyst relations and business strategy. Prior to that, he was the president and CEO of NetBalance, a venture capital-backed multimillion-dollar software company, which was successfully sold in 2000. You can connect with Raj on twitter or on linkedin.