release management

29
Michael Koester | Microsoft Removing Barriers between Development and Operations

Upload: microsoft-developer-network-msdn-belgium-and-luxembourg

Post on 06-May-2015

633 views

Category:

Software


1 download

TRANSCRIPT

Page 1: release management

Michael Koester | Microsoft

Removing Barriers betweenDevelopment and Operations

Page 2: release management

Enabling Continuous Value Delivery• Continuous Integration (CI)

• Continuous Deployment with Release Management

• DevOps: Integrating Operations and Development

Topics

Page 3: release management

Plan Develop Operate

BUILD | MEASURE | LEARN

BUILD | MEASURE | LEARN

Release

Build > Measure > Learn

Page 4: release management

EnablingContinuous Value Delivery

Page 5: release management

Delivery DelaysNon-Working CodeIncomplete SolutionsRework

Flexible Build > Deploy > Test WorkflowsQuality GatesDependancy ManagementTest Automation

Challenges

Features

Business AnalystsEnd UsersStakeholders

Continuous IntegrationA Working Product after every Check-In

Page 6: release management

Continuous IntegrationEarly and Often

Gated Check In

TFS Integration

Manage Builds

Page 7: release management

DEMOContinuous Integration with Windows Azure

Page 8: release management

40

%

Still release quarterly or less!

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

Continuous Delivery

Continuous Delivery is gaining traction ... but:

Page 9: release management

Why Release Management?

High Stress High RiskExpensivemulti-team Investment

Page 10: release management

Increase delivery cadenceIncrease predictability and consistency when deployingReduce complexity when deploying to hybrid environments

Release PlanningEnvironment ManagementRelease Automation

Challenges

Features

Business AnalystsEnd UsersStakeholders

Release ManagementDeploy the same code every time, everywhere, in the same way

Page 11: release management

What is Release Management?

Deploy the same code every time, everywhere, the same way.

Page 12: release management

What is Release Management?

Deploy the same code every time, everywhere, the same way.

Page 13: release management

Automated Tests

InstallApplication

ProvisionEnvironment

Create Test Data

ConfigureEnvironment

ConfigureApplication

Manual Tests

Notify Approvers

Approve Stage

Appro

val

Test

sA

pp

Infr

a

Microsoft Test Manager

Lab Manager

MS Tools

PowerShell

Custom Tools Release Management for Team Foundation

Server

Unit testing, Coded UI testing…

StageStack

Page 14: release management

Established single source of truth.

Automated deployment steps.

Dependencies defined and managed.

Release plan definition.

Release pipeline definition and environment management.

“one-click” highly automated releases.

Teams that need basic compliance and tracking. Teams with multiple releases without existing RM tools.Teams transitioning to a more agile delivery cadence.

Team Maturity

Who needs Release Management?

Page 15: release management

Features

Release PlanningWhat, when, where, who, how will be released and the ability to compare release plans vs. actual status.

Release DefinitionAuthoring of release pipeline and approval workflow.

Environment ManagementProvisioning, configuration, and teardown of physical and virtual environments.

Deployment Automation

Track status and progressRollbacks, logs, approvals and alerts.

Visual Studio Release Management Capabilities

Page 16: release management

Challenges

Features

Value

Difficult to monitor the status of each releaseToo many tools and inconsistent processes make it difficult to know the exact status of each release.

Visibility into the release pipelineGet insights into the complete release process across teams to identify issues and bottlenecks.

Increase value deliveryAccelerate delivery without introducing additional risk and chaos.

Release Visibility and Transparency

Page 17: release management

Release Visibilityand TransparencyView Release PipelineStatus and Issues

Monitor progress ofeach release

Check the status ofyour releases

Identify issues and patterns in your

application deployment

Page 18: release management

Challenges

Features

Value

Deploying applications in the same way - everywhereQuality issues due to inconsistent release processes, experience and outcomes.

Define release templates and automate manual tasksDefine a release plan for each component to ensure they will be deployed the same way, every time.

Increase quality, predictability and efficiencyMinimize outages and customer impact.

Inconsistent and chaotic releases

Page 19: release management

Define Release Plans and TemplatesDefine 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

Page 20: release management

Define Release Plans and TemplatesDefine a release workflow and its activities for each of your applications

Use built-in actions for deployment or create your own with PowerShell

Use built-in actions or define your own

Define release workflow and activities per environment

Page 21: release management

Flexible ReleaseApproval WorkflowSimple way to request and provide approvals.

The defined approval can start, stop, approve, reject, restart, retry, abandon or even reassign releases.

Simple way to request and provide

approvals

Trigger actions based on approvals

Page 22: release management

DEMOContinuous Delivery with Release Management

Page 23: release management

Release Management Infrastructure

1. Deploy Release Management

Server

2. Install Deployment Agents on

Targets

3. Configure Release Management

Server

4. Configure Release Paths &

Workflows

Page 24: release management

Create, Update and Delete Release Pipeline Workflow

Approve stages and sign-off on release

Deploy to Server

No CAL Required

Deployment Agent(Server Management License)

Release Management Client(Per User License)

Release Management Client available at no additional cost.

Each target node receiving deployment needs to be licensed through Visual Studio Deployment Standard or Visual Studio Deployment Datacenter offering.

CAL waiver for a user who just wants to approve a stage

TFS

Licensing Release Management

Page 25: release management

Production Outages Scaling IssuesUnknown Usage PatternsMemory IssuesProduction Bugs

IntelliTrace in ProductionIntelliTrace Performance IndicatorsMemory Dump AnalysisCloud Based Load Testing

Challenges

Features

DevelopersOperationsTesters

MonitorIntegrated and Accessible Analytics

Page 26: release management

System Center IntegrationIncident Alert

DevOps Collaboration

IntelliTrace

PreEmptive Analytics

Page 27: release management

IntelliTrace Performance IndicatorsPerformance Data

Event Details

Execution Tree

Jump to Code

Page 28: release management

Memory Dump AnalysisDebug Dump Files

Find Memory Leaks

Trace References

Page 29: release management

© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.