Разработка программного продукта – дорогостоящий процесс, требующий привлечения высококвалифицированных специалистов и значительных затрат временных и трудовых ресурсов. Для сокращения затрат на процесс разработки достаточно разбить программное обеспечение на модули, каждый из которых отвечает за определенный функционал.