Friday, September 6, 2019

Word of the Day: progressive delivery

 
Word of the Day WhatIs.com
Daily updates on the latest technology terms | September 6, 2019
progressive delivery

Progressive delivery is the process of pushing changes to a product iteratively, first to a small audience and then to increasingly larger audiences to maintain quality control (QC). The goal of progressive delivery is to improve delivery times for new product features and mitigate risk by controlling who is able to see them.

In software development, a progressive delivery approach allows new code to be deployed in production. Code changes are delivered to small, low-risk audiences first and assessed for quality assurance (QA) before they become available to larger, riskier audiences. IBM, Microsoft and Target are among the companies that use a progressive delivery approach to rolling out new code.

How progressive delivery works

Generally, the first audience to receive new features and code changes is composed of expert users or groups of people who use the product for small projects that are not time sensitive. The initial rollout to this first, low-risk group is often referred to as a canary launch and code changes are referred to as the canary.

Like the canary in a coal mine, the end user who is selected to receive new code in a canary launch is unaware they are being used to provide an early warning that something is wrong. Because the canary is only distributed to a small number of users, its impact is relatively small and changes can be reversed quickly should the new code prove to be buggy.

 

After the canary launch, the size of the audience is progressively increased as the DevOps team gains confidence in the stability and functionality of the system.

 

Progressive delivery vs. continuous delivery

Progressive delivery is very similar to continuous delivery. Both approaches involve pushing changes and updates out as soon as they are ready instead of aggregating them and waiting for the next product release.

The difference, however, is that progressive delivery provides an additional level of control through the use of feature flags. Feature flagging is a best practice that involves wrapping code change with a flag that specifies what attributes have to be met before the code will execute.

 

Feature flag management platforms, like that offered by LaunchDarkly, allow DevOps engineers to turn feature flags on or off for various subsets of users through one dashboard and conduct rollbacks at the application level. These are two important considerations for any organization that wants to roll out code through a progressive delivery model.

Advantages of progressive delivery

IT professionals that use progressive delivery encounter the following benefits:

  • The ability to plan for failure and accommodate it.
  • The ability to quality-control new features in a production environment.
  • The ability to collect feedback from canary tests and make improvements before rolling changes out to everyone.
  • The ability for non-engineering teams, such as marketing or sales, to release features to users on a just-in-time basis.

Quote of the Day

 
"For teams that have been running a continuous delivery pipeline for years, progressive delivery will feel like a natural progression. The primary distinction is progressive delivery's incorporation of a 'built-for-failure' mentality." - Jonathan Nolen

Learning Center

 

IT pros contend with the future of continuous delivery
Continuous delivery tools continue to add sophisticated automation features and encompass more phases of software delivery, but how next-generation tools will integrate with legacy IT apps and infrastructure remains an open question.

CloudBees CEO reveals plans for CI/CD tools, Google project
CloudBees CEO Sacha Labourey talks candidly about a product roadmap that combines multiple acquisitions into a comprehensive set of CI/CD tools, plans for an Anthos CI/CD project with Google, and where all that leaves Jenkins after 15 years of development.

Climb the five steps of a continuous delivery maturity model
When it comes to continuous delivery, there is a level for everyone's amount of experience with the process. There are five stages in the continuous delivery maturity model, and they detail a pathway for organizations to progress from a mostly manual base level, all the way to hourly deployments.

Understand continuous delivery and continuous deployment
To the average software user, continuous delivery and continuous deployment mean the same thing. However, there are significant differences you should know.

Adopt these continuous delivery principles organization-wide
Software pipelines change from one company to another -- even from one team to another -- because success or failure doesn't come down to the tools. It depends on universal continuous delivery principles.

Quiz Yourself

 
Successfully _______ a DevOps culture in a data center isn't easy, but it brings great rewards.
A. adapting
B. adopting

Answer

Stay in Touch

 
For feedback about any of our definitions or to suggest a new definition, please contact me at: mrouse@techtarget.com

Visit the Word of the Day Archives and catch up on what you've missed!

FOLLOW US

TwitterRSS
About This E-Newsletter
The Word of the Day is published by TechTarget, Inc., 275 Grove Street, Newton, Massachusetts, 02466 US.

Click to: Unsubscribe.

You are receiving this email because you are a member of TechTarget. When you access content from this email, your information may be shared with the sponsors or future sponsors of that content and with our Partners, see up-to-date Partners List, as described in our Privacy Policy. For additional information, please contact: webmaster@techtarget.com.

© 2019 TechTarget, Inc. all rights reserved. Designated trademarks, brands, logos, and service marks are the property of their respective owners.

Privacy Policy | Partners List
TechTarget

No comments: