A software system will reflect the organizational structure of the team developing the software. If the development team does not communicate well then the components of the software system will likely also not communicate well.