· Выбор надлежащей структуры модуля является ключом к достижению целей его возможного повторного использования и расширяемости.
· Модули служат как для декомпозиции программного обеспечения (проектирование сверху вниз), так и для его композиции (снизу-вверх).
· Принципы модульности применимы как к спецификации и проектированию, так и к реализации ПО.
· Всеобъемлющее определение модульности должно объединять различные точки зрения; разные требования иногда оказываются взаимно противоречивыми, например декомпозиция (стимулирующая методы проектирования сверху-вниз) и композиция (способствующая использованию метода снизу-вверх).
· Управление количеством и формой связей между модулями является основой разработки хорошей модульной архитектуры.
· Для долгосрочной целостности структур модульной системы требуется скрытие информации, что приводит к необходимости строгого разделения интерфейса и реализации.
· Унифицированный доступ освобождает клиентов от знания выбора внутренних представлений, реализованных в модулях-поставщиках.
· Закрытым является такой модуль, который может использоваться, благодаря знанию его интерфейса, модулями-клиентами.
· Открытым является такой модуль, который еще можно расширять.
· Для эффективного руководства проектом следует поддерживать модули, являющиеся одновременно как открытыми, так и закрытыми. Но традиционные подходы к разработке и программированию не дают такой возможности.
· Принцип Единственного Выбора предписывает ограничивать распространение полной информации обо всех вариантах некоторого понятия.