DevOps Flow

Mike's Notes

Here are my working notes from day 4 of building the DevOps Engine for Pipi 9.

Resources

DevOps Flow

By: Mike Peters
26/02/2025

Mike is the inventor and architect of Pipi and the founder of Ajabbi.

The start of the roadmap

In 2024, I initially used a simple one-page Google Sheet as a roadmap to discuss the build with Alex and Chris. Then, a web page mockup with the same information was published on the Ajabbi developer website. The next step is to get a DevOps Engine to generate and use the roadmap to organise the work.

Reinventing the wheel

Unfortunately, Pipi 9 can't use existing DevOps tooling because of Pipi's novel internal architecture. Everything acts autonomously and self-organises, which affects testing. In fact, Pipi will have to build, test, and deploy itself while running live.

Immediate objective - one version of the truth

Create a simple web UI that interacts with a dedicated database to manage development, track versioning, and output a web page for the road map. The rest can come later.

Data Model

  • The initial data model for the DevOps Engine (dvp) is now completed.
  • It prioritises flow.

Constraints

  • Work in Progress (WIP) - needs to be small enough for fast flow
  • Batch Size - maybe 1
  • % Resource Busy - should be around 85%
One idea I had was to allow users to let Pipi learn to adjust the WIP limit automatically to maximise flow.
  • 1
  • 2
  • 3
  • 4
  • 5
  • Automatic

DevOps Engine

  • There can be many copies of the DevOps Engine. Each team will have its own or go with a multi-tenanted engine.
  • A DevOps Engine will be required to develop another DevOps Engine. (All engines are versioned)
  • Each DevOps Engine can be configured differently.
  • The DevOps Engine works directly on agents, not systems. Systems are emergent and configured using parameters, rules, weights, state history, boundaries, path taken, environment, Markov, Fuzzy, etc.

Other Engines

These have yet to be designed. They handle the specifics of each step or stage. The DevOps Engine will act as a wrapper around these other engines, which are not currently needed.

  • Plan
  • Code
  • Build
  • Test
  • Release
  • Deploy
  • Operate
  • Monitor
Each of these different engines could interact with even more engines.
  • Render
  • Feature Flag
  • Update
  • etc

DORA Metrics yet to be catered for

  • Deployment Frequency: Time between code deployments.
  • Mean Lead Time for Changes: Time between code commit and deployment.
  • Change Failure Rate: Percentage of deployments causing production issues.
  • Mean Time To Recovery: Time to resolve production issues.
  • Reliability (added in 2021): Measures operational performance, focusing on availability and adherence to user expectations.

No comments:

Post a Comment