Design Checklist

This checklist contains items are things that must be considered during the design phase and verified before the start of implementation.

☀️ General

The following items are general architectural checks which all microservices must meet.

Check name

Short Description

Level C

Level B

Level A

Stateless server

All persistent data is stored outside of the container.

✅️

✅️

✅️

Deploy order

Its deploy does not have strong order.

✅️

✅️

Exclusive data ownership

It is the only service that can access its data store.

✅️

✅️

✅️

🔒️ Security

If security is low, customer and company data will be stolen or fabricated (Data breaches).

Check name

Short Description

Level C

Level B

Level A

Authentication

It is protected by an authentication service.

✅️

✅️

✅️

Authorization

Access is restricted to the appropriate level. Consider who should have access to each exposed API and what they are allowed to do.

✅️

✅️

✅️

Transport Security

It uses TLS to communicate with other services over the Internet.

✅️

✅️

✅️

🍀 Sustainability

Sustainability affects long-term team/organization productivity and system availability. If sustainability is low, the system will break down often, maintainers will be changed too often. This will cause low availability. Also, the team members will be forced too much work, low-ownership. Then they will be burnout.

Check name

Short Description

Level C

Level B

Level A

No short-term transfer

Its team members are not forced to move to another team in the short term.

✅️

✅️

OnCall considered team

Its team follows OnCall practices.

✅️

Dependency SLA

Its team knows SLA of the service dependencies.

✅️

✅️

SLOs

Its SLOs and SLOs owner are defined.

✅️

✅️