DevOps - Step By Step Learning : Part 2 (12 Factor Apps, DevOps 3 P's, 6 Pillars, 8 Phases)
Saiful Islam Rasel
Senior Engineer, SDE @ bKash | Ex: AsthaIT | Sports Programmer | Problem Solver | FinTech | Microservice | Java | Spring-boot | C# | .NET | PostgreSQL | DynamoDB | JavaScript | TypeScript | React.js | Next.js | Angular
Story:
You should already know about the situation and struggle that Rasel faced in the beginning of his job from the previous part. After basic exploration about DevOps, Rasel started digging deep into how the people involved, processes, and tools can change the game. He studied the famous 12-factor app best practices that received worldwide attention.
So first of all, he decided to convince the management about the primary concern of tasks/bugs and their solution, which is codebase management. And study the 12-factor app best practices and some DevOps fundamental terms so that this knowledge can be used as a reference point. So Rasel was going to solve or raise the concern about the following 2 things first:
12 Factor Apps:
For more details please go through in this official link.
DevOps 3 P's:
The 3 P’s stand for the core elements of DevOps:
1. People
2. Process
3. Products (Tools)
? In short: DevOps = People + Process + Products (Tools)
DevOps 6 Pillars:
These six pillars support DevOps implementation:
1. Culture & Collaboration
2. Automation
3. Lean & Agile
4. Measurement & Monitoring
5. Security (DevSecOps)
6. Continuous Improvement
? In short: DevOps is built on Culture, Automation, Agile, Monitoring, Security, and Continuous Improvement
DevOps 8 Phases:
The DevOps lifecycle consists of 8 phases, forming a loop of continuous improvement:
Plan
Develop
Build
Test
Release
Deploy
Operate
Monitor
? In short: DevOps follows a continuous loop: Plan -> Develop -> Build -> Test -> Release -> Deploy -> Operate -> Monitor
Summary:
After all, with the reference Rasel was able to convince the management and they were start using the Jira for project management and Git + Github for codebase and version control. All the team along with Rasel's tried to understand and followed the best practices for development and project management. They got visible improvement and outcome but not fully as the other part means deployment hassle was still exist there.