Структура программного обеспечения: важные аспекты и принципы