Skip Navigation LinksCD

​​Continuous Delivery

​Course Overview

Learn how to implement and deploy Continuous Delivery strategies into your current workflow. Incorporate best practices to achieve better code quality, better maintenance, and speed to delivery.

​Type:                     Course
Level:                    200
Technology:         C#, Java, TFS, Git, Jenkins, Maven, Chef, Puppet
Length:                 4 days
Language             English 

Audience:

  • Software Developers
  • Project Managers
  • Quality Assurance
  • Product Owners
  • Infrastructure Engineers
  • Development Team
  • Operations Team

By the end of this course, students will be able to:

  • Define and demonstrate the value of Continuous Delivery
  • Recognize the relationship between Continuous Integration and Continuous Delivery
  • Set up, Navigate, and manage a Continuous delivery environment
  • Execute Releases in test environments
  • Identify the most effective tools for quick release & reliable maintenance
  • Integrate Continuous Delivery methods & techniques into current workflow

This 4-day instructor led Workshop will teach the technical practices, necessary tools, and customized application of Continuous Deliver.  Students will learn about workflow integration through hands on labs, class demos, class participation exercises, video tutorials, and traditional power point presentations. This is an interactive class, and individuals will be expected to participate fully in all exercises to retain maximum benefit of the course.

Module 1: What is Continuous Delivery?

This module will review the definition of Continuation Delivery, and why it is an essential part of high quality software design. For teams that incorporate an Agile programming approach to software development, Continuous Delivery be an integral part of the process.

  • Introduction to Continuous Delivery.
  • Where does Continuous Delivery fit in the DevOps Landscape?
  • How Does Continuous Delivery Work?
  • What are the benefits of using Continuous Delivery?
  • Anti-patterns

Module 2: Agile Development

This Module is a high level overview of the Agile Development Methodology and how it fits into Continuous Delivery and the DevOps LandScape

  • What is Agile Development
  • The Agile Manifesto
  • Integrated Development Environment
  • Source Control and Versioning
  • Test Driven Development
  • Pair Programming
  • User Stories
  • Developer Tasks
  • Sprints

Module 3: Continuous Integration

This Module focuses on the definition of Continuous Integration, its relationship to Continuous Delivery, and why it is so important.

  • What is Continuous Integration?
  • Where does Continuous Integration fit in the DevOps Landscape
  • How does Continuous Integration work?
  • Continuous Integration Essentials
  • Common Continuous Integration Practices
  • Benefits of Continuous Integration
  • Continuous Integration to Continuous Delivery 

Module 4: Configuration and Implementation

This Module discusses the pre-requisites of Continuous Delivery, and how mastering the process translates into higher quality, and lower cost.

  • Version Control
  • Automated Builds
  • Automated Testing
  • Automated Acceptance Testing
  • Package Repository
  • Managing Dependencies
  • Managing Environments
  • Configuration Principles

Module 5: Deployment Pipeline and Scripting

In this Module, we will take a deep dive into the implementation, best practices, and environment of a Deployment Pipeline and Scripting Deployment.

  • What is a Deployment Pipeline?
  • Committing Code
  • Gated Acceptance Testing
  • Automating Deployment
  • Testing Stages
  • Implementing a Deployment Pipeline
  • Build Tools Overview
  • Deployment Scripting
  • Build Scripting
  • Automating Tests 

Module 6: Automated Testing

In this Module we will review necessary components of acceptance testing that affect Developers, Project Managers, and Testers

  • Creating Acceptance Tests
  • Automating Acceptance Tests
  • Creating Unit Tests
  • Automating Unit Tests
  • Automating Capacity Testing
  • Parallel Testing
  • Refactoring

Module 7: Delivery vs. Deployment

This Module covers the differences between Continuous Delivery & Continuous Deployment, and the relationship that exists between them.

  • Releasing an Application
  • Deploying an Application
  • Continuous Delivery
  • Continuous Deployment
  • Virtual Environments
  • Roll back a Deployment

Module 8: Effective Continuous Delivery Environments

In this Module, students will learn how to apply Continuous Delivery to their current environment, and the maintenance that will be necessary to sustain it.

  • Infrastructure Management
  • Communicating with the Operations Team
  • Configuration Management
  • Infrastructure in the Cloud
  • Infrastructure Maintenance 

Module 9: Managing Implementation

This module deals with components, dependencies, and versioning issues in Continuous Deployment

  • Managing Components
  • Managing Dependencies
  • Version Control
  • Version Control Options
  • Mainline Development
  • Merging and Branching

Module 10: Managing Continuous Delivery

This module demonstrates the importance maintenance & how it affects each release. It is important that project managers, developers, testers, and clients have a system which enables them to stay communicative and on the same page. 

  • Risk Management
  • Delivery lifecycle
  • Common Pitfalls
  • Documentation is crucial!
  • Maintaining your Configuration  ​