Skip to content

MarcosX/A-Microservice-Maturity-Model

Repository files navigation

A Microservices Maturity Model

The idea of this document is to provide a guide for teams adopting a SOA based on Microservices. It is divided in 5 aspects: Provisioning, Delivery, Tests, Resilience and Domain Modularity, each one containing gradual stages.

The goal for this Maturity Model is to provide guidance to teams that are already using microservices on what could be the next improvement. Every aspect contains incremental improvements, meaning that the team should look for improvements regarding stages 1 and 2 before start working on stage 3.

Feel free to contribute with comments and suggestions on what you feel is important, this stuff is not battle-proven yet but we want to have the best information we possibly can. If you feel like the order of stages is wrong, a topic should be expanded or something new should be included, just let me know! Every feedback counts :)

How to use

Each aspect has a dedicated file where you can find a brief description of each stage for that aspect. Try to evaluate where your project fits, starting at the lowest level. If you find something is missing, you just found your next area of improvement!

After the brief description there is a list of resources that may be helpful for you. Make sure you check them out and feel free to add your own references if you see something is missing there.

Gitbook

If you want a nicer UI for reading the content of this repo, check out A microservice maturity model on Gitbook.

Contributing

If you feel like there is something missing, or the order of stages isn't quite right, please open a PR and let's talk about it. This guide is a tool created by the community to the community, so feel free to speak your mind!

What are the Apects?

The guide has 5 aspects, each one containing gradual steps to show you what your next step could be if you're working with microservices. The idea of those steps is to be as concise as possible, so it's easy for people to read them. If you wanna propose a change, please remember that :)

How about the resources?

Apart from the steps, each aspect has a list of resources, if you wanna add something to the list of resources just create a new paragraph with the resource's link and a brief description of why you find it helpful. We also want this to be easy to read.

I think I have something but I'm not sure how to put it

That's great! Open a new issue and let's talk about it! If you don't think you're ready to open a new PR let's see where your idea will fit and how we can add it :)

Releases

No releases published

Packages

No packages published