Practical DevOps and Continuous Delivery Course Description
DevOps and Continuous Delivery are a set of methodologies, mindset, and principles that all share a common goal; release more reliable and better software, faster. It is about bringing together the entire development organization, developers, operations, QA, and project management, to make the process of going from the concept to production as smooth and predictable as possible.
Every organization does not require 100% test coverage. In addition, it is impossible for organizations to go to production multiple times a day. Therefore, understanding automation and frequent deployment, and how they can be used to benefit development organizations of all shapes and sizes, is a key takeaway of this course.
The course explores various techniques related to automation and deployment, discusses their implementation, and includes a number of hands-on exercises to help you experience DevOps and Continuous Integration first-hand. You will have your own (or can optionally share) pre-configured server hosting a number of familiar tools. By the end of the course, you will learn how to leverage various issue tracking, source control, database, and automation tools to build a robust and flexible DevOps/Continuous Delivery workflow.
Practical DevOps and Continuous Delivery Audience
- Individuals involved in IT development, IT operations or IT service management
- IT professionals working within, or about to enter, an Agile service design environment
- The following IT roles:
- Devops engineers
- Integration specialists
- Operations managers
- System administrators
- Network administrators
- Project managers
- Business managers
- Automation architects
Practical DevOps and Continuous Delivery Learning Objectives
Individuals after going through the Practical DevOps & Continuous Delivery course will have demonstrated their understanding to:
- Explore DevOps and Continuous Delivery fundamentals.
- Explain and implement an automated build process.
- Apply the testing formula to make decisions related to testing and compare different situations to decide the test approach.
- Identify the business value offered by the automation of deployment.
- Identify the unique challenges of database changes compared to code changes.
- Outline a database deployment process suitable for continuous delivery.
- Manage application configuration files.
- Explain the software delivery as a business process.
- Diagnose the software delivery process.
- Understand the security and process controls.
- Define infrastructure automation and discuss the relationship between infrastructure and an application.
- Identify the need of implementing DevOps and Continuous Delivery (CD) with the help of real-life analogies.
- Describe the key challenges of implementing DevOps and CD.
Benefits of Taking This Course
After going through the course, you will obtain the following benefits:
- Experience DevOps tools hands-on.
- Learn how to leverage various issue tracking, source control, database, and automation tools to build a robust and flexible DevOps/Continuous Delivery workflow.
- Course Introduction
- Let’s Get to Know Each Other
- Course Rationale
- Course Learning Objectives
- Course Agenda
- Case Study or Caselets
- Course Book
- Source Control Done Right
- Source Control
- Source Control Concepts
- Unit of Work
- Source Control Patterns
- Build Automation
- Automated Build Process
- CI and Build Automation
- Testing Done Right
- Fundamentals of Testing
- Benefits and Limitations
- Methods of Handling Limitations
- Risk Tolerance
- Deployment Automation Fundamentals
- The Deployment Process
- Automated Deployment
- Environments as Workflow
- Releases and Builds
- Deployment Distribution and Delivery
- Deployment Delivery Methods
- Database Changes Done Right
- Changes in a Database
- Changing a Database
- Managing Changes Through Scripts
- Deployment Automation in Practice
- Application Configuration Files: Best Practices and Deployment Considerations
- Rollbacks: Best Practices and Considerations
- Software Delivery Process
- Introducing Software Delivery as a Business Process
- Getting Acquainted with Software Delivery Terminology
- Diagnosing the Software Delivery Process
- Controlling the Software Delivery Process
- Infrastructure Automation
- Introducing Infrastructure
- Abstracting Infrastructure
- Changing Infrastructure