Detailed Course Outline
DevOps Thinking
Trends in DevOps
- Augmenting the benefits of Agile through DevOps
- Refining the definition of DevOps for better outcomes
- Asserting the core objectives of modern DevOps
DevOps culture
- Establishing the core foundations of system thinking
- Enabling communication between development and operations
- Developing a Kaizen culture for continuous improvement
Roles in DevOps
Team structure
- Growing collaborative teams
- Creating an automation culture
Governance
- Defining governance to balance agility and rigour
- Dealing with formal operation requirements
Scripting Configuration Management
Version management
- Keeping strict control through ubiquitous commits
- Designing infrastructure as code
Configuration items
- Enforcing controls through itemisation
- Computerising dependencies through configuration controls
- Leveraging tools for low-risk
Real-Time Feedback through Continuous Integration
Objectives and principles
- Developing rapid feedback loops through CI
- Aligning DevOps to the CI principles
Mastering CI practices
- Reducing risks through frequent commits
- Keeping the build healthy as a primary control of integrity
- Automating inspections and tests for better control
- Automating the build process for continuous feedback
Efficient Operations through Continuous Delivery
CD mindset
- Removing the complexity of deployment through software
- Delineating CI and CD to achieve complementary objectives
Principles of CD
- Creating a repeatable process for constant quality
- Automating end to end for hands-free operations
- Augmenting ROI through incremental improvements
Leveraging leading CD practices
- Reducing deployment time through single builds
- Ensuring consistency through a unified deployment process
Deployment pipeline
- Organising a deployment pipeline to optimise code to production time
- Gating code changes through code staging
- Reducing Risks with roll-back capabilities
- Adjusting the pipeline for on-premise, SaaS, and new deployment models
Ensuring Quality with Test Automation
DevOps involvement in Test Automation
- Ensuring the pipeline delivers on Test Automation benefits
- Influencing test automation practices through DevOps capabilities
Test types and defect management
- Automating the testing at multiple levels
- Automating test defect management for faster corrections
Optimising Infrastructure Costs
Optimising infrastructure
- Using virtual environment to maximise efficiency
- Using the cloud to lower HW dependence
- Monitoring systems for high availability
Data management
- Dealing with database level upgrades
- Managing Test Data as a configuration Item