Post History
I have a highly flexible software product consisting of a series of loosely coupled microservices. Each component is effective at a single job, but may be dependent on inputs from other services. I...
#3: Attribution notice added
Source: https://writers.stackexchange.com/q/33513 License name: CC BY-SA 3.0 License URL: https://creativecommons.org/licenses/by-sa/3.0/
#2: Initial revision
I have a **highly flexible** software product consisting of a series of loosely coupled [microservices](https://en.wikipedia.org/wiki/Microservices). Each component is effective at a single job, but may be dependent on inputs from other services. It is expected that additional services will be added later. The overall product could be considered to be something like the game [Mousetrap](https://www.youtube.com/watch?v=sy840XvnQRA). A practical use case for the whole product could be a complex combination of services. Maybe I have a _ball-rolling-down-stairs_ component, but just documenting the inputs and outputs seems incomplete as only once I combine it with the _kicking-foot_ component and the _dropping-cage_ component does **one possible** overall use case of the product (catching mice) get satisfied. What is the best way to document such dependent services? To clarify I'm not just interested in **what** to document. I'd also like opinions on how to split up and structure the documentation, especially as the product gets more complex.