A project may examine component responsibilities, API contracts, permissions, deployment and error handling. It is important to establish which system owns each piece of data and what happens when an external service fails or changes.
The right solution is not always the most complex. A modular application may be sufficient; separate services are worthwhile only when there are clear reasons. The scope of diagrams, documented decisions and implementation is agreed per project.