Yesterday I’ve mentioned that architect should design wrong solutions.
This obviously has a broader context. The idea behind this statement is
that architecture should be understood by everybody.
We should discuss and reason about WHY a design looks like that. For
example why there is an async flow for a scenario. Or why a given service
is upstream and not downstream.
So the obviously wrong design should trigger the discussion. Sometimes it
is easier to start from a bad place and work out the good design during
discussions and collaboration.
But you have to make sure that an intentionally bad design doesn’t become
the final one. Clearly mark it as Work In Progress.