Continuous Deployment

What Is Continuous Deployment?

Continuous Deployment is the practice of releasing frequent changes from development to production without human interaction. Starting with Continuous Integration, every successful build is deployed to all environments in a deployment pipeline, as long as the criteria to move from one pipeline stage to another has been met.

pipeline.png

Why Is Continuous Deployment Important?

The pace of change that customers expect is increasing, and having releases once or twice a year won’t allow businesses to keep up with customer demands. With Continuous Delivery, value can be delivered to customers quickly for every change that passes release criteria, and this can be a significant competitive differentiator.

After reading this, you may be thinking that Continuous Deployment sounds great but it just isn’t realistic for your company. Regardless of your situation, there are still cornerstones of the Continuous Deployment process that will deliver significant value to your business without pushing changes all the way to production in a fully automated fashion.

What Are the Benefits of Continuous Deployment?

Increased reliability – By releasing smaller and more frequent changes, you reduce the risk involved with each change and increase your uptime.
Faster time to market – With Continuous Delivery, you can release changes quickly and safely to your customers as frequently as your customers need them.

Why Serena?

Serena solutions can help with the process management and automation essential to successfully implementing Continuous Deployment. While Continuous Deployment is primarily about pushing changes from development to production without human interaction, it is always good to insert manual interactions should it ever be necessary. Serena offers this capability, and it can also be used to implement Continuous Deployment gradually, at your own pace.

It is easy to make the transition from Continuous Delivery

cdelivery-new.png

to Continuous Deployment.

cdeployment-new.png

By selecting which gate transitions are automatic or manual, companies have the capability to implement Continuous Deployment at their own pace on a per application or per environment basis.

Continuous Deployment “Serena style” is about getting changes to production in the way that suits you, and with the flexibility to change from fully automatic to manual interaction instantly, without causing any disruption.

 

Glossary

Agile Development – Agile development is a lightweight framework that aims to deliver value to customers faster by developing software in short iterations.

Change Control Board – This is the committee that assesses change requests and decides whether to accept or reject a request.

Change Management – As the process responsible for controlling the lifecycle of all changes, the primary objective of change management is to enable beneficial changes to be made with minimal disruption to IT services.

Change & Release Management – Change and Release Management represents a process-based approach that brings development and operations teams together to capture, triage, and prioritize change requests, route them to the right individuals for fulfillment, speed the deployment of these changes into production, and then notify business counterparts of the status of their requests.

Continuous Integration – Continuous Integration is the process of building source code every time code is committed to a source code repository.

Continuous Testing – Continuous Testing builds on Continuous Integration and Test Driven Development to ensure that your code is always tested when changed, shortening the time it takes to find software defects.

Continuous Deployment – This is the practice of automatically building, deploying, and testing software without human interaction. Software is deployed and tested in environments along the path to production assuming that criteria are met, allowing a release to move from one environment to another.

Definitive Media Library (DML) – DML is the location in which definitive, approved versions of software configuration items are stored.

DevOps – This is a movement by development and operations practitioners to break down silos between teams in order to bring value to customers faster.

Infrastructure as Code – Infrastructure as code is the practice of defining all of your infrastructure provisioning as scripts, which are then stored in source control just as any other code would be.

Path to Production – The path to production is how a request for a change moves from the initial request to production environments.

Release Vault – See Definitive Media Library

Revenue Apps – Revenue applications (RevApps) are an organization’s software applications that directly touch customers and/or bring in revenue. They are critical due to their impact on revenue, reputation, and customer engagement. The speed with which RevApps get enhanced directly correlates with how quickly the organization can respond to customer requests and changing market conditions.


Learn More

On Demand Webcast
DevOps Presentation and Q&A - How Eaton Vance Transformed Their Software Release Process

Video
What is DevOps? - Serena Software takes a serious, but light-hearted, look