0
Continuous delivery with
Release Management for
Visual Studio
Marcel de Vries
@marcelv
http://nl.linkedin.com/in/marcelv
Development
teams work
using agile
methodologies
IT Departments
most of the time
split in at least
two entities
Well
established
boundaries
Deliver MVP’s so we can
learn what customer
really needs
Keep machines and infra
as stable as possible
Monitor
Define
Deliver
Operate
Sprint
Define
Deliver
ComplexError-proneChaotic
Learn
Deploy
Continuous
deployment
Continuou
s
Build
Continuou
s
Test
Continuou
s
Deploy
Continuou
s Learning
DEV TEST QA PROD
FS DEV TEST QA PROD
Automates Workflow
DEV TEST QA PROD
Full Traceability
DEV TEST QA PROD
Full traceable
way of building
the deployment
package
Full traceable
way of
deploying the
software
Management
environment
TFS Drop Location
IR DesktopIR Web
QA
DEV
IR Server
Release
Deployment path
DEV TEST QA PROD
Environment
Tool / Action
Component
Release template
Deploy agents work based on a pull model
Tools for deployment also pulled to server
Proxy for dop location
Enable an
optimized
process cross
organizational
boundaries
Start the
learning loop
Optimize based
on your
learning
Lean can help
Continuous delivery with Release Management for visual Studio
Continuous delivery with Release Management for visual Studio
Continuous delivery with Release Management for visual Studio
Continuous delivery with Release Management for visual Studio
Upcoming SlideShare
Loading in...5
×

Continuous delivery with Release Management for visual Studio

1,154

Published on

Session presented for DotNed 20 feb 2014

Published in: Technology
1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total Views
1,154
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
24
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide
  • Ok your teams are agile and now you should be able to deliver a continuous flow ofvalue to your users.Unfortunately, that’s not always what happens. In many casesyour release process requires you to go through a series of gates before you actually get to production. This can take days, weeks or even months before it is completed preventing you from delivering value continuously to your users.In fact, complex and error-prone manual deployments based with untested installation scripts coupled with long approval cycles. manual deployment => error prone, delays …. Detail des troiscontraintes de releasesThe solution is to fully automate the release cycle for all stages with a common platform for both dev, qa and ops allowing the flow of value to go from development to customers in the fastest way without reducing quality delivered. That is what InRelease does.
  • InRelease does 3 main things:One- It automates deployments directly from TFS to all the environments, including production. Part of the deployment procedure may include things like taking back-ups, generating test data, provisioning Servers on Azure or executing your automated tests. Basically everything you need to start working on a given stage. Two – InRelease ensures that all deployments are done the same way from the same binaries so that by the time you deploy your application to production, your deployment procedure has been tested over and over - removing a lot of those release related risks & headachesThree- InRelease automates the approval workflow through all the environments reducing delays and coordination issues to a minimum. Testers receive a notification when a new version is ready for them they come back to InRelease to either confirm that the application meets the stage requirements or stop the release of that specific version.Along the way, InRelease will provide tracking of each attempted release.
  • InRelease does 3 main things:One- It automates deployments directly from TFS to all the environments, including production. Part of the deployment procedure may include things like taking back-ups, generating test data, provisioning Servers on Azure or executing your automated tests. Basically everything you need to start working on a given stage. Two – InRelease ensures that all deployments are done the same way from the same binaries so that by the time you deploy your application to production, your deployment procedure has been tested over and over - removing a lot of those release related risks & headachesThree- InRelease automates the approval workflow through all the environments reducing delays and coordination issues to a minimum. Testers receive a notification when a new version is ready for them they come back to InRelease to either confirm that the application meets the stage requirements or stop the release of that specific version.Along the way, InRelease will provide tracking of each attempted release.
  • InRelease does 4 main things:One- It automates deployments directly from TFS to all the environments, including production. Part of the deployment procedure may include things like taking back-ups, generating test data, provisioning Servers on Azure or executing your automated tests. Basically everything you need to start working on a given stage. InRelease ensures that all deployments are done the same way from the same binaries so that by the time you deploy your application to production, your deployment procedure has been tested over and over - removing a lot of those release related risks & headachesTwo - InRelease automates the approval workflow through all the environments reducing delays and coordination issues to a minimum. Along the way, InRelease will provide tracking of each attempted release and provide complete traceability for diagnostic and audit purposes. You can actually set simple to complex deployment procedure in InReease….
  • InRelease does 4 main things:One- It automates deployments directly from TFS to all the environments, including production. Part of the deployment procedure may include things like taking back-ups, generating test data, provisioning Servers on Azure or executing your automated tests. Basically everything you need to start working on a given stage. InRelease ensures that all deployments are done the same way from the same binaries so that by the time you deploy your application to production, your deployment procedure has been tested over and over - removing a lot of those release related risks & headachesTwo - InRelease automates the approval workflow through all the environments reducing delays and coordination issues to a minimum. Along the way, InRelease will provide tracking of each attempted release and provide complete traceability for diagnostic and audit purposes. For your release path, You can actually set simple to complex deployment procedure in InRelease….
  • InRelease does 4 main things:One- It automates deployments directly from TFS to all the environments, including production. Part of the deployment procedure may include things like taking back-ups, generating test data, provisioning Servers on Azure or executing your automated tests. Basically everything you need to start working on a given stage. InRelease ensures that all deployments are done the same way from the same binaries so that by the time you deploy your application to production, your deployment procedure has been tested over and over - removing a lot of those release related risks & headachesTwo - InRelease automates the approval workflow through all the environments reducing delays and coordination issues to a minimum. Along the way, InRelease will provide tracking of each attempted release and provide complete traceability for diagnostic and audit purposes. You can actually set simple to complex deployment procedure in InRelease….
  • InfrastructureLab ManagerInRelease – actions to trigger provisioning VMsApplicationsMS Tools – default behavior to publish to single environment, requires work to publish beyond thatTfsDeployer – can leverage Build Quality in TFS to trigger moving parts to other environments, still requires custom scriptsInRelease – can deploy applications using different approaches using built-in actions and toolsTestsMicrosoft Test Manager / Coded UI – helps define and execute automation of testsInRelease – can leverage existing tests for execution and can trigger test data creation via built-in actions and toolsApprovalInRelease – can manage governance, controls when and if deployments go into environments, notifies recipients of actions throughout the release process
  • Transcript of "Continuous delivery with Release Management for visual Studio"

    1. 1. Continuous delivery with Release Management for Visual Studio Marcel de Vries @marcelv http://nl.linkedin.com/in/marcelv
    2. 2. Development teams work using agile methodologies
    3. 3. IT Departments most of the time split in at least two entities
    4. 4. Well established boundaries
    5. 5. Deliver MVP’s so we can learn what customer really needs Keep machines and infra as stable as possible
    6. 6. Monitor Define Deliver Operate Sprint Define Deliver ComplexError-proneChaotic Learn Deploy
    7. 7. Continuous deployment Continuou s Build Continuou s Test Continuou s Deploy Continuou s Learning
    8. 8. DEV TEST QA PROD
    9. 9. FS DEV TEST QA PROD
    10. 10. Automates Workflow DEV TEST QA PROD
    11. 11. Full Traceability DEV TEST QA PROD
    12. 12. Full traceable way of building the deployment package Full traceable way of deploying the software Management environment
    13. 13. TFS Drop Location IR DesktopIR Web QA DEV IR Server
    14. 14. Release Deployment path DEV TEST QA PROD
    15. 15. Environment Tool / Action Component
    16. 16. Release template
    17. 17. Deploy agents work based on a pull model Tools for deployment also pulled to server Proxy for dop location
    18. 18. Enable an optimized process cross organizational boundaries
    19. 19. Start the learning loop
    20. 20. Optimize based on your learning Lean can help
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×