An architectural layer is an abstraction that A) describes a role in a pattern of components and their communication, B) identifies a set of components that play this role in a concrete architecture. So is C4 restricted? Because it doesn't seem to allow to integrate other abstractions?
Assuming that the microservice's database (schema) (shared by the server instances of the microservice) is hosted on a shared database service (DBMS). How could the database (schema) then be considered a (top level) container in itself? The database server is a container (on the infrastructure dimension). The database (schema) is rather a component of the microservice (on the organisational dimension), although it could be considered as a sub-container of the DBMS on the infrastructure dimension.
32:08 IMO that is overstretching the "system" concept. I mean, when the capabilities boundaries being to spread out across multiple systems. Not good.
19:42 this is a weak excuse. c4 really lacks composability on the system level.
Why risking to introduce misinterpretations with these abstractions, when you can literally just visualize your actual codebase?
@mikestaub