The Cathedral and the Bazaar
The modular approach has numerous advantages. If a new program (or other complex system) can be specified as N modules, N teams can work in parallel. Moreover, individual modules can subsequently be improved without touching other parts of the overall program, and they can be used in other programs.
David S. Evans • Invisible Engines: How Software Platforms Drive Innovation and Transform Industries
