Welcome!

@DevOpsSummit Authors: Yeshim Deniz, Zakia Bouachraoui, Liz McMillan, Pat Romanski, Carmen Gonzalez

Related Topics: @DevOpsSummit, Linux Containers, Containers Expo Blog

@DevOpsSummit: Blog Feed Post

What Does Continuous Delivery Management Mean? By @DaliborSiroky | @DevOpsSummit #DevOps

The idea behind continuous delivery is that software doesn't have to sit around for days or weeks waiting to be tested

What Does Continuous Delivery Management Mean?
By Dalibor Siroky

Continuous Delivery is a trend that is taking the software industry by storm, and Continuous Delivery Management (CDM) is a new approach to release management that provides both transparency and a governance structure to manage continuous delivery across a large software enterprise. CDM is a developing focus area designed to apply the benefits of continuous delivery on a single project across multiple projects at once catering to the variations in release cadence and the orchestration necessary to apply this practice across an entire portfolio of software projects.

Continuous Delivery Benefits Individual Projects
The idea behind continuous delivery is that software doesn't have to sit around for days or weeks waiting to be tested and qualified before it can be published to production. Instead of waiting a continuous deployed system is sent through a series of automated tests after every single commit to a central source code repository. At this stage the system is compiled, tested, and deployed to integration servers all while tests are being executed as the system changes.

A continuous deployment and integration pipeline (CDI) consists of a continuous integration server alongside a system designed to apply automated tests in an effort to qualify a change for release to production. When an organization creates a CDI pipeline it is creating a system to qualify every change as ready to deploy to production. CDI also encompasses the creation of systems designed to automate the "last-mile" delivery to production.

No Set Standard for Continuous Delivery
When a project practices CDI it releases frequently, but there's no set rate that qualifies a system as continuous. On one end of the spectrum, some organizations practicing continuous delivery deliver software to production multiple times a day. On the other end of the spectrum, some organizations use a CDI pipeline to deploy to a staging system after every commit, but continue to conduct regular, weekly or biweekly releases to production that are more manual and which involve more traditional governance gates before code is pushed to production.

In this way continuous delivery isn't standardized across the industry. It is an established practice at media and technology-focused startups that is now becoming more prevalent in the enterprise, and there are a wide range of interpretations about the frequency of deployments that qualify a system as being "continuously deployed." Thus the need for Continuous Delivery Management.

Internal Variation in the Enterprise
The enterprise was quick to adopt continuous integration practices from both open source projects and SMBs, and continuous delivery is following a similar trajectory. As deployment automation and configuration management tools that have come to define the DevOps space continue to mature alongside tools such as Atlassian Bamboo and Jenkins the pace at which large enterprises are adopting these tools continues to accelerate.  Even as practitioners still debate the pros and cons of fully automating production deploys, big business continues to march toward continuous delivery.

In large corporations supporting systems exposed to significant risk continuous delivery pipelines have not yet made in-roads into the production release process. In these organizations a CDI pipeline is used to populate staging continuously while releases are still run by a team of release engineers. Releases for the riskiest systems are still manual.

On the other hand, even in a large enterprise it is increasingly common for isolated, greenfield development projects to conduct frequent deployments to production in an effort to improve productivity and accelerate time-to-market. While a large, multi-national corporation may still run manual releases for a back office payment processing system it may be running a continuous delivery pipeline to deploy the web site to production multiple times a day, and several teams may be conducting other continuous deployments at yet a different cadence.

In these organizations the challenge lies in supporting a diversity of approaches to Continuous Delivery Management. How does one model and plan software releases in an organization practicing both planned releases and releases on demand? And, as the industry shifts to a fully self-service, continuous delivery model how can release managers adapt to these changes and create systems to encourage good CDI governance?

Prepare the Runways: Multiple Continuous Projects Inbound
When some of your projects are delivering once a day in a continuous delivery pipeline and others are delivering once a week your challenge becomes managing and tracking change across a production system. When your overall system needs to conduct a release that may require downtime or coordinated effort, how do you corral the teams using CDI into the process while preserving some sense of agility?

When you are running a busy "airport" of software releases you need to have tools that can track and manage these continuous delivery projects as they happen so you can properly manage the runways. If you have two continuous delivery projects that can ship to production at any moment how do you predict requirements for test environments for the projects that haven't yet adopted CDI?

If you have slower-moving projects that require you to place construction signs in the path of these faster-moving projects how do you communicate this to self-service CDI projects ahead of time? All of this calls for some level of release governance.

The Need for Continuous Delivery Management Across a Portfolio
As more enterprises embrace continuous delivery more enterprises understand the complexities and nuances of running continuous delivery correctly. The path to success across a large enterprise embracing continuous delivery isn't to just point a hundred projects at the necessary tools, step back, and wait for each to develop an independent release cadence. Enterprises achieve more efficient continuous release cadences when each project operates within a framework to support agility.

There are some simple steps you can take to provide such a framework with Plutora:

1. Categorize and classify projects based on the degree to which they have adopted Continuous Delivery release patterns
Are they going to be releasing on a daily cadence? If so then you need to route other dependencies around this project and make sure that you are accounting for constant changes? Are your "continuous" projects closer to a weekly delivery cadence reserving the "continuous" portion of the deployment pipeline for staging and integration servers? If so you need to understand how the project decides when to release and you need to be able to predict when (and if) the project may transition to a more continuous approach to deployments.

2. Use a tool to give you end-to-end visibility across the portfolio
Continuous delivery is a powerful step toward more efficient and more responsible enterprise software delivery, but it's also something that management will want to understand. How are you mitigating the risks that accompany developer-driven releases? Who is ultimately responsible for a bug introduced in an upstream system? As your teams move to more continuous deployments they are likely going to need a referee watching for policy violations or decreases in quality. You are changing the rules of the game with continuous delivery, but this doesn't mean that the old rules completely disappear.

3. Set policy and standards for continuous delivery projects
If a project is moving to a continuous delivery model you need to set standards for what is and what is not production-ready. If a project just thinks that they are going to magically assume novel development practices and deliver to production every single day after conducting monthly releases for the last decade they are in for a surprise. Developing code and designing systems amenable to Continuous Delivery Management is like a new software engineering discipline, and you are going to want to provide some time for projects and teams to get comfortable with the new powers that accompany continuous delivery.

The post What Does Continuous Delivery Management Mean? appeared first on Plutora Inc.

Read the original blog entry...

More Stories By Plutora Blog

Plutora provides Enterprise Release and Test Environment Management SaaS solutions aligning process, technology, and information to solve release orchestration challenges for the enterprise.

Plutora’s SaaS solution enables organizations to model release management and test environment management activities as a bridge between agile project teams and an enterprise’s ITSM initiatives. Using Plutora, you can orchestrate parallel releases from several independent DevOps groups all while giving your executives as well as change management specialists insight into overall risk.

Supporting the largest releases for the largest organizations throughout North America, EMEA, and Asia Pacific, Plutora provides proof that large companies can adopt DevOps while managing the risks that come with wider adoption of self-service and agile software development in the enterprise. Aligning process, technology, and information to solve increasingly complex release orchestration challenges, this Gartner “Cool Vendor in IT DevOps” upgrades the enterprise release management from spreadsheets, meetings, and email to an integrated dashboard giving release managers insight and control over large software releases.

@DevOpsSummit Stories
CloudEXPO | DevOpsSUMMIT | DXWorldEXPO Silicon Valley 2019 will cover all of these tools, with the most comprehensive program and with 222 rockstar speakers throughout our industry presenting 22 Keynotes and General Sessions, 250 Breakout Sessions along 10 Tracks, as well as our signature Power Panels. Our Expo Floor will bring together the leading global 200 companies throughout the world of Cloud Computing, DevOps, IoT, Smart Cities, FinTech, Digital Transformation, and all they entail. As your enterprise creates a vision and strategy that enables you to create your own unique, long-term success, learning about all the technologies involved is essential. Companies today not only form multi-cloud and hybrid cloud architectures, but create them with built-in cognitive capabilities.
Hackers took three days to identify and exploit a known vulnerability in Equifax’s web applications. I will share new data that reveals why three days (at most) is the new normal for DevSecOps teams to move new business /security requirements from design into production. This session aims to enlighten DevOps teams, security and development professionals by sharing results from the 4th annual State of the Software Supply Chain Report -- a blend of public and proprietary data with expert research and analysis.Attendees can join this session to better understand how DevSecOps teams are applying lessons from W. Edwards Deming (circa 1982), Malcolm Goldrath (circa 1984) and Gene Kim (circa 2013) to improve their ability to respond to new business requirements and cyber risks.
DevOpsSUMMIT at CloudEXPO, to be held June 25-26, 2019 at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the world's largest enterprises – and delivering real results. Among the proven benefits, DevOps is correlated with 20% faster time-to-market, 22% improvement in quality, and 18% reduction in dev and ops costs, according to research firm Vanson-Bourne. It is changing the way IT works, how businesses interact with customers, and how organizations are buying, building, and delivering software.
The benefits of automated cloud deployments for speed, reliability and security are undeniable. The cornerstone of this approach, immutable deployment, promotes the idea of continuously rolling safe, stable images instead of trying to keep up with managing a fixed pool of virtual or physical machines. In this talk, we'll explore the immutable infrastructure pattern and how to use continuous deployment and continuous integration (CI/CD) process to build and manage server images for any platform. Then we'll show how automate deploying these images quickly and reliability with open DevOps tools like Terraform and Digital Rebar. Not only is this approach fast, it's also more secure and robust for operators. If you are running infrastructure, this talk will change how you think about your job in profound ways.
The current environment of Continuous Disruption requires companies to transform how they work and how they engineer their products. Transformations are notoriously hard to execute, yet many companies have succeeded. What can we learn from them? Can we produce a blueprint for a transformation? This presentation will cover several distinct approaches that companies take to achieve transformation. Each approach utilizes different levers and comes with its own advantages, tradeoffs, costs, risks, and outcomes.