2015-01-12 TechTalk - Continuous Delivery and Release Management

27

Transcript of 2015-01-12 TechTalk - Continuous Delivery and Release Management

Source: Continuous Delivery Is Reshaping The Future Of ALM, Forrester Research, Inc., July 22, 2013

40%still release quarterly or less often!

“A working product after every check-in”

Continuous Integration

Delivery delays

Non-working/low-quality code

Incomplete solutions

Rework

Flexible Build > Deploy > Test workflows

Code quality gates & check-in policies

Release management

Cloud development and test environments

DEMOCloud Build and CI with Microsoft Azure

Cloud DevOps

Code Repository

Developers

Build Test Deploy

Monitor and Improve

Azure

“Infrastructure at your fingertips”

Environment Provisioning

Delivery delays due to hardware procurement

Cost/effort required to stand up environments

Under-/over-utilization of physical infrastructure

Cloud development and test environments

Automated infrastructure provisioning

Infrastructure as Code

Improve Quality

Deliver higher quality releases by testing your applications in a ‘production-like’ environment to understand how they will handle real-world usage.

Azure Compute Services

Speed of development and ease of maintenance

Deg

ree o

f cu

sto

miz

ab

ility

Virtual Machines

Cloud Services

Websites

Mobile Services

Directly move your

VMs to the cloud

Full control of

multi-tier apps

Deploy and scale

in seconds

Accelerate mobile

backend development

DEMOCloud Dev and Test Environments

Infrastructure as Code

PowerShell DSCBuild templates to manage configurations.

Integrate templates with Release Management to automate configuration of on-premises and cloud environments.

Parameters allow reuse of templates.

Server configuration is

managed through templates.

Parameters make the

template re-usable.

“Deploy the same code every time, everywhere, in the same way”

Release Management

Increase delivery cadence

Increase predictability and consistency when deploying

Reduce complexity when deploying to hybrid environments

Release planning

Automated environment management

Release automation workflow

“Deploy the same code every time, everywhere, in the same way”

Release Management

Visual Studio Release Management

Define Release Plans and Templates

Define groups that can create, edit and view release templates.

Define required approvals for each release stage.

Define stage types for a given environment.

Granular control for the

entire release process

Seamless integration with

Visual Studio Build process

Define a release workflow and activities for each of your applications.

Use built-in actions for deployment or create your own w/ PowerShell.

Use built-in actions or

define your own

Define release workflow and

activities per environment

Define Release Plans and Templates

Flexible ReleaseApproval Workflow

A simple way to request and provide approvals.

The approver can start, stop, approve, reject, restart, retry, abandon or reassign releases.

Simple way to request

and provide approvals

Trigger actions based

on approvals

Release Visibilityand Transparency

View release pipeline,status and issues.

Monitor the progress ofeach release.

Check the status of

your releases

Identify issues and patterns in

your application deployment

DEMOVisual Studio Release Management

Create, Update and Delete Release Pipeline Workflow

Approve stages

and sign-off on

release

Deploy to Server

No CAL

Required

Release Management Client available at no additional cost. FreeCAL waiver for a user

who just wants to

approve a stage

“Integrated and accessible Analytics”

Monitor

Production outages

Scaling issues

Unknown usage patterns

Bugs in production

System Center

Application Insights

Intellitrace in ProductionDevelopers

Testers

IT Ops

www.visualstudio.com

visualstudio.com msdn.microsoft.com