Continuous delivery is a software engineering approach to automate the delivery of software. It aims at building, testing, and releasing software with greater speed and frequency. The approach helps reduce the cost, time, and risk of delivering changes by allowing for more incremental updates to applications in production.
Students will learn techniques, processes and tools to achieve continuous delivery by connecting and automating all phases of software delivering, including configuration management, automated acceptance testing, dependency management, database migration, and the creation and management of testing and production environments. These techniques are widely applicable to all sorts of different software projects—big, small, highly technical or short sprints to early value.
Using a practical approach, the course covers the CICD tools, strategies and concepts of Continuous Delivery. Students will be able to create their own Jenkins Pipeline to build, test and deployment jobs as well as integrate Jenkins with integration and delivering tools such as Maven, GitHub, Nexus, JMeter, Packer and Terraform.
This course is ideal for engineers, architects, and developers, who wish to learn the core strategies of Continuous Delivery.
- Introduction to Continuous Delivery
- Configuration Management
- Implementing Continuous Integration
- Testing Strategies
- Deployment Pipelines
- Deployment Installation Scripts
- Automatic Acceptance Test
- Automating Non-Functional Test
- Infrastructure Environment
- Strong understanding of Continuous Delivery Process, Techniques and CICD Tools, and their applications.
- Ability to manage source code, build scripts to the environment and application configuration required to build, deploy, test, and release applications.
- Capability to build and run automated tests against every change made to the application to ensure software is always in a working state.
- Experience with configuration, automation, and the implementation of infrastructure automation (Infrastructure as Code) with Terraform and Packer in the AWS Cloud.
- Understand acceptance tests importance to continuous delivery, and how to create a cost-effective acceptance test suite that will protect the application’s valuable functionality.
- Ability to setup the acceptance, capacity tests, and manual test within the Pipelines and configure them to run on their own environments.
- AWS account
- PDF Reader
- Open-source software (download links will be provided)
- a personal computer that can run the ubuntu app to deploy AWS resources
Course Typically Offered: Online, Winter and Summer quarter
Prerequisites: Knowledge of AWS Environment is desirable, but not required. Students should have knowledge of basic System Integration and Test methods, tools, and terms.
More information: Contact email@example.com to learn more about course offerings.
Course Number: CSE-41325
Credit: 3.00 unit(s)
+ Expand All
9/29/2020 - 11/24/2020