Когда я машу рукой, то я машу всеми молекулами руки – но неправильно ведь говорить о молекулах, когда говорим о размахивании рукой? И неправильно «махать телом» (слишком большой объект). Поэтому «машу рукой» – машу системой, находящей на много системных уровней выше, чем молекулы, но всё-таки ниже уровня целого тела.
Системные уровни принципиальны, они отражают саму суть системного подхода – на каждом системном уровне в силу эмерджентности/системного эффекта появляются новые свойства, поэтому чаще всего обсуждения ведутся отдельно для отдельных системных уровней агентами, которые разбираются со свойствами, проявляемыми системами на этом системном уровне, а также свойствами надсистем, которые получаются из свойств систем текущего уровня. Грубо говоря, клетки обсуждает микробиолог, организм человека в целом – медик, коллектив людей – менеджер. Отдельное подробное обсуждение на каждом системном уровне существенно упрощает обсуждение сложных систем. Если вы обсуждаете предприятие, то обсуждайте людей, оборудование, запасы материалов, здания и сооружения, но обычно при этом не нужно обсуждать планетарную систему вокруг Солнца, частью которой является предприятие, как часть Земли, или биохимию клеток у людей, как биохимию части предприятия.
Помним, что если вы обсуждаете проблему на слишком низком системном уровне – это ошибка редукционизма, если вы обсуждаете проблему на слишком высоком системном уровне – это ошибка холизма. Правильно удерживать обсуждение на трёх уровнях:
• надсистема в её окружении и её свойства. Например, компьютер в целом, его характеристики (габариты, вес, энергопотребление, производительность по каким-то признанным тестам)
• целевая система как целое и другие системы как целое на том же системном уровне в составе надсистемы. Как совместная работа систем этого уровня влияет на состояние и свойства надсистемы. Например, центральный процессор как целевая система, память, материнская плата, блок питания, вентилятор/охлаждение, корпус.
• подсистемы целевой системы: как их совместная работа (взаимодействие) влияет на состояния и свойства целевой системы. Например, для центрального процессора – ядра с арифметико-логическими устройствами, многоуровневая кэш-память, блоки ввода-вывода. И тут же вам тест на внимание: если вы представите «настоящий» (а не из диаграммы в книжке) центральный процессор, то увидите залитый пластмассой чип (или несколько сразу «чиплетов») с выводами, а уже на чипе какие-то зоны с теми самыми ядрами с арифметико-логическими устройствами, многоуровневая кэш-память, блоки ввода-вывода.
Это легко сдвинуть на уровень вниз: рассматривать
• транзисторы (уровень подсистем) в составе какой-нибудь
• кэш-памяти в центральном процессоре (уровень целевой системы) и как характеристики этой памяти и других IP будут влиять на характеристики
• центрального процесса (надсистемы).
В любом случае, обычно обсуждают «что делаем» (целевая система), «из чего оно состоит функционально, из чего делаем конструктивно» (подсистемы), «в состав чего это войдёт» (надсистема). В любом случае, вам для обсуждения системы обычно надо не меньше трёх системных уровней, вы будете обсуждать самые разные характеристики объектов на этих уровнях, эти обсуждения будут делать самые разные роли, а на каком системном уровне будет ваше целевая система – это зависит от проекта. Что целевая система для одного проекта – надсистема для другого, подсистема для третьего.
Инженеры описание системного разбиения дают обычно через описание типов (например, «самолёт»), но в реальности этим типам объектов соответствуют подводимые под этот тип физические предметы (cамолёт с бортовым номером 128, самолёт с бортовым номером 2467 и т.д.). В то же время философы (но не мы в нашем курсе) часто обсуждают системные уровни с произвольными частями, в том числе абстрактными