About this course
Course Overview
Many organizations are making or want to make a shift toward a modern application development and delivery model. This model, called DevOps, promises to provide streams of new features in shorter delivery windows by employing techniques such as continuous integration/continuous delivery and agile development practices. Entering the world of digital transformation requires not only a technological shift, but a cultural shift.
To help make the shift to DevOps, this collection of practices and exercises take you through a five-day, simulated-organization residency. You can expect to be exposed to practices such as event storming, social contract, and impact mapping, among many more exercises that can be found in the Open Practice Library. You will also be exposed to labs that demonstrate how we use Red Hat OpenShift Container Platform and Red Hat Ansible in conjunction with Jenkins to automate the build and deployment of a sample to-do-list application and its required infrastructure.
- Course content summary
- What is DevOps?
- Agile Practices
- Continuous Integration, Deployment, and Delivery
- Automated Testing
- Pipelines as Code
- Discovery and development practices such as Impact Mapping, Social Contracts, Everything as Code, and more
Target Audience
This course is designed for developers, architects, and product owners. If you’re a product owner with no programming experience, you will be paired with a student developer to help you through the labs.Course Objectives
Impact on the organization
Many companies are finding that their current organizational structure and software development practices will not yield the promises of digital transformation, which include shorter time to market, quick feedback loops, and A/B testing. These companies need to adopt DevOps culture and practices to be successful in their digital transformation.
This course introduces you to real-world DevOps culture principles and modern software development practices. You will develop a modern software application using Red Hat OpenShift Container Platform, Red Hat Ansible Automation, and other industry-standard DevOps software, tools, and techniques. You’ll be prepared to use DevOps principles and open source solutions to start and lead the digital transformation journey at your organization.
Red Hat has created this course in a way intended to benefit our customers, but each company and infrastructure is unique, and actual results or benefits may vary.
Impact on the individual
As a result of attending this course, you will have experienced a DevOps culture, been exposed to numerous DevOps practices, and implemented a small application using what you’ve learned. You should be able to demonstrate these skills:
- Deploy a small multi-tiered application to an OpenShift cluster.
- Work as an effective member of an agile team.
- Discover, prioritize, and document desired software features and functionality.
- Develop software using pair and mob programming styles.
Course Content
What is DevOps?
Brainstorm and explore what principles, practices, and cultural elements make up a DevOps model for software design and development.
Pairing and mobbing
Discuss and experience two foundational practices: pair programming and mob programming.
Retrospectives, information radiators, and team sentiment
Examine the value of conducting retrospectives, visualizing work, and assessing team sentiment.
Impact mapping
Discuss the impact mapping discovery practice.
Agile practices
Cover agile practices, including sprint planning, daily standup, showcase, retrospective, and backlog refinement.
Value stream and process mapping
Delve into the practices of value stream mapping and metric-based process mapping.
Continuous integration, deployment, and delivery
Explore the foundational practices of continuous integration, continuous deployment, and continuous delivery.
Event storming
Learn how to use the event storming discovery practice.
User story mapping and value slicing
Examine the user story mapping, value slicing, and empathy mapping practices.
Automated testing, part 1
Develop an understanding of the test-driven development and business-driven development foundational practices, often referred to as automated testing.
Automated testing, part 2
Complete the automated testing lab begun in part 1.
Pipelines as code
Explore continuous integration/continuous delivery pipelines using Jenkins.
Non-functional testing
Discover the merits of non-functional testing.
Build monitoring
Understand how to monitor builds and graphically represent their status as an information radiator.
Demo day
Experiment with the optimal methods of producing a showcase and bring the class to a close.
Course Prerequisites
- Have full access to your laptop
- Be able to install various software features that will be used in the hands-on labs