Содержание курса
Инфраструктура (ландшафт) для организации проектной деятельности
Инжиниринг бизнес-процессов заказчика. 1. Применение UML Activity
Разработка логической структуры данных. 2. Паттерны проектирования применительно к структуре данных.
Мо��елирование поведения целевой системы. 1. Теория систем Часть 2
Моделирование поведения целевой системы. 2. Поведенческие диаграммы UML
Моделирование поведения целевой системы. 3. Моделирование процессов управления
Разработка требований на создание целевой ИС. 1. Правила формирования требований
Разработка требований на создание целевой ИС. 2. Формирование Спецификаций требований
После того как мы определились с перечнем основных сценариев, выявили сущности предметной области и спроектировали для них хранилище, необходимо соотнести все эти артефакты друг с другом, распределив поведение системы по ее классам.
Как обычно зададим цели на следующий этап работ: На основании выявленных сущностей и процессов, разрабатываемого целевого продукта спроектировать поведение системы, распределив ее по классам.
Добавим на диаграмме, иллюстрирующей наш процесс, новый элемент – Модель поведения, связанный, как упоминалось выше, со Сценариями и Моделью данных.

1. Теория систем. Часть 2
На шаге, выявления функции разрабатываемого продукта, мы начали рассматривать основные свойства системы, с точки зрения системного анализа, затронув статические и динамические свойства. Теперь же, когда мы моделируем поведение системы, продолжим обзор характеристик, связанных с изменчивостью, а также поговорим о синтетических свойствах.
1.1. Свойство системы Изменчивость со временем
В любой системе происходят изменения, которые надо учитывать, предусматривать и закладывать в проект будущей системы, способствовать или противодействовать им, ускоряя или замедляя их при работе в продукте. При этом внутренними изменениями называют только такие, при которых состав и структура системы фиксируемы, а изменения между частями динамичны.
Поскольку система, как мы рассмотрели ранее, обладает составом и структурой, то все изменения – это преобразования либо в составе, либо в структуре, либо в них обоих. Исходя из этого общая практика работы с реальными система позволяет разделить изменчивость на две категории:
1) Рост – качественное изменение в основном состава системы
2) Развитие – качественное изменение свойств системы.
Справедливости ради заметим, что есть и обратные процессы росту и развитию – спад и деградация. А всю историю от рождения до гибели со взлетами и падениями – называют жизненным циклом системы.
Термин | Значение |
Жизненный цикл | развитие системы, продукта, услуги, проекта или других изготовленных человеком объектов, начиная со стадии разработки концепции и заканчивая прекращением применения. |
На Жизненный цикл существования системы кардинальным образом влияют факторы и условия возникновения внутренней изменчивости. Рассмотрим аспекты форм изменчивости системы:
1) Эволюционная изменчивость
Изменения происходят постепенно, в результате накопления небольших модификаций и адаптации к изменяющимся условиям.
Характеристики:
Постепенность;
Стабильность функционирования;
Отсутствие резких скачков в поведении;
Например, Исхак Адизес представил модель жизненного цикла компании, описав последовательность этапов развития организации. Смотри рисунок ниже.

2) Революционная изменчивость
Изменения происходят резко, в результате значительных внешних или внутренних воздействий.
Характеристики:
Резкий переход к новому состоянию;
Возможна потеря части функциональности;
Высокие риски отказа системы;

Например, доставка заказов курьером-беспилотником. Еще лет 5 назад это было в новинку, а их использование сопряжено с большим количеством неудач и экспериментов.
3) Адаптивная изменчивость
Система изменяется в ответ на внешние воздействия с целью сохранения стабильности работы.
Характеристики:
Поддержание работоспособности при изменении среды;
Минимальные потери функциональности;
Автоматическая подстройка параметров;
Например, самообучающаяся антиспам-система. Система подстраивается под новые виды спама, анализируя входящие письма и пользовательские действия.
4) Деградационная изменчивость
Система постепенно теряет функциональность из-за износа или несовместимости с новыми условиями.
Характеристики:
Постепенное снижение эффективности;
Потеря части функций;
Увеличение числа сбоев и ошибок;

Вспомните мессенджер Skype.
Не вспомнили?
А вед еще совсем недавно он был одной из самых популярных коммуникационных систем.
5) Управляемая изменчивость
Система изменяется целенаправленно для повышения эффективности и функциональности.
Характеристики:
Выполнение заранее спланированных изменений;
Улучшение производительности;
Добавление новых функций;
Например, переобучение(дообучение) нейросети.
В Кибернетике есть принципы, дополняющие понимание внутренней изменчивости:
Принцип саморегуляции - фундаментальный принцип Кибернетики, согласно которому сложные системы способны поддерживать устойчивое состояние и компенсировать внешние или внутренние возмущения без вмешательства извне с помощью внутренних механизмов обратной связи. Таким образом саморегуляция основана на механизмах обратной связи (преимущественно отрицательной) и ее важной характеристикой является способность системы адаптироваться к изменениям среды, сохраняя целостность и функциональность.
Для реализации саморегуляции обычно используют механизмы:
Негативная обратная связь (отрицательная обратная связь). Система реагирует на отклонение, снижая эффект этого отклонения и возвращая систему в равновесие.
Положительная обратная связь. Система реагирует на отклонение, усиливая это отклонение до достижения нового состояния равновесия.
Адаптивная обратная связь. Система накапливает опыт и использует его для выбора оптимальных стратегий в будущем.
Дискретная обратная связь. Регулирование происходит скачкообразно по заранее заданным порогам.
Таким образом для эффективного воспроизведения принципа саморегуляции системы, ее необходимо наделить следующими ключевыми элементами:
1) Цель или эталонное состояние — состояние, к которому стремится система.
2) Входные данные — информация о состоянии системы и среды (показания датчиков, сигналы и т.д.).
3) Обратная связь — механизм получения информации о результате работы системы.
4) Оценка отклонений — сравнение текущего состояния с эталонным.
5) Коррекция поведения — автоматическое изменение параметров системы для устранения отклонений.
Принцип гомеостаза. Фундаментальный принцип Кибернетики, согласно которому любая сложная система стремится поддерживать внутреннее равновесие и стабильность в условиях внешних воздействий и изменений среды.
Суть принципа состоит в том, что система имеет устойчивое состояние (гомеостаз), которое обеспечивает её нормальное функционирование. При внешних или внутренних нарушениях система стремится вернуться к равновесию с помощью механизмов саморегуляции. Основой гомеостаза является обратная связь, заставляющая систему анализировать отклонения и корректировать своё поведение.
Например, при переломе кости руки, ткани опухают и твердеют, а боль заставляет принять меры реабилитации.
При этом важно учитывать суть второго закона термодинамики (Энтропия):
Во всех замкнутых системах со временем происходит увеличение энтропии (меры хаоса). Любая система без внешнего вмешательства стремится перейти в состояние максимальной энтропии — полного беспорядка.
Это приводит к тому, что:
Упорядоченные структуры со временем разрушаются.
Энергия системы постепенно рассеивается, становится менее доступной для выполнения работы.
Процессы самопроизвольно идут в сторону деградации и равновесия с окружающей средой.
В кибернетике принцип возрастания энтропии объясняет, почему без регулярного контроля и обратной связи сложные системы приходят в состояние хаоса. Например, без обновления и контроля программного кода сложная система становится нестабильной. Поэтому введения в управление механизмов контроля и корректировки поведения системы снижает энтропию. Пример, внедрение бизнес-правил в компании для повышения эффективности и контроль за их четким соблюдением.
В экономике энтропия проявляется в снижении конкурентоспособности компании без адаптации к рынку. Например, без инноваций и реагирования на рыночные изменения бизнес приходит в упадок.
1.2. Свойство системы Существование в изменяющейся среде
Изменяется не только данная система, но и все остальные, окружающие ее. Для данной системы это выглядит как непрерывное изменение окружающей среды.
Неизбежность существования в постоянно изменяющемся окружении имеет множество последствий для самой системы, начиная с необходимости ее приспособления к внешним переменам, чтобы не погибнуть, до различных других реакций системы.
При этом под внешней средой следует считать:
Физические факторы — температура, давление, климат, природные катаклизмы.
Социальные факторы — изменения в поведении пользователей, спросе, общественных ценностях.
Экономические факторы — колебания цен, кризисы, инфляция.
Политические факторы — изменения в законодательстве, санкции, геополитическая нестабильность.
Технологические факторы — развитие новых технологий, появление альтернативных решений.
Все эти факторы могут влиять как на элементы системы, так и на ее структуру, обосновывая рассмотренное выше свойство «Изменчивость со временем».
В Кибернетике есть принципы, дополняющие понимание о внутренней изменчивости:
Принцип адаптации. Фундаментальный принцип кибернетики, согласно которому система способна изменять своё поведение и внутреннюю структуру в ответ на изменения внешней среды для сохранения эффективности и достижения целей.
Принято рассматривать следующие механизмы адаптации:
Программная адаптация. Система использует заранее заложенные алгоритмы адаптации (например, термостат).
Обучающая адаптация. Система учится на основе накопленного опыта (например, машинное обучение).
Эволюционная адаптация. Система изменяет структуру в процессе проб и ошибок (например, биологическая эволюция).
Суть реализации принципа адаптации схожа с методами Самоорганизации системы:
1) Реакция на внешние и внутренние изменения. Система должна выявлять отклонения от нормы и изменять свою стратегию управления для возвращения к стабильности.
2) Обратная связь как основа адаптации. Система получает информацию о своих действиях и результатах через механизмы обратной связи и использует её для анализа и корректировки поведения.
3) Самообучение и улучшение алгоритмов. Продвинутые адаптивные системы могут анализировать накопленный опыт и изменять алгоритмы управления для повышения эффективности.
4) Гибкость в выборе стратегии. Система должна иметь возможность переключаться между различными способами управления в зависимости от усло��ий.
5) Поддержание устойчивости в изменяющейся среде. Адаптивная система должна сохранять работоспособность даже при значительных изменениях внешней среды.
Перейдем к синтетическим свойствам:
1.3. Свойство системы Эмерджентность
Пожалуй, это свойство более всех остальных говорит о природе систем.
Суть его в том, что объединение частей в систему порождает у системы качественно новые свойства, которых нет и не было ни у одной из ее частей. Другими словами: свойства системы не сводятся к свойствам ее частей, даже не выводятся из нее, а присущи только системе в целом. Система есть нечто большее, нежели простая совокупность частей.
Исходя из определения, за эмерджентные свойства ответственность лежит не на частях, а на структуре системы. Поэтому системные свойства прежде всего определяются из того, как действует не каждая часть, а тем, как взаимодействует каждая из них.
При этом улучшение работы части в системе, как правило, не улучшают работу самой системы (а иногда даже ухудшают).
Гради Буч привел наглядное объяснение этого свойства на примере:
«Самолет — это совокупность деталей, каждая из которых сама по себе стремится упасть на землю. Но благодаря своим непрерывным совместным усилиям они преодолевают эту тенденцию».
В отличие от других свойств эмерджентные свойства не могут быть полностью предсказаны на основе анализа отдельных компонентов системы и возникают только при сложных и динамичных взаимодействиях элементов системы. Эмерджентные свойства зависят от структуры системы и характера связей между элементами.
Поэтому рассматривая эмерджентность системы важно учитывать следующие аспекты:
Невозможность линейного анализа. Невозможно изучить систему только через анализ её элементов — важнее учитывать взаимодействия между ними.
Ограниченность контроля. Невозможно полностью управлять системой, если её поведение определяется эмерджентными свойствами.
Потенциал для инноваций. Эмерджентность открывает возможности для появления новых функций и поведения, которые невозможно спроектировать напрямую.
Риски и уязвимости. Неожиданные эмерджентные эффекты могут привести к кризисам, поломкам или социальным потрясениям.
Например, Марк Цукерберг, развивая идею социальной сети Facebook, вряд ли мог предположить, что когда число пользователей перевалит за 2 миллиарда, у нее возникнет побочное эмерджентное свойство – возможность влиять на президентские выборы в США 2020 года. Цукербергу тогда даже пришлось предстать перед судом.
1.4. Свойство системы Неразделимость на части
Это свойство является простым следствием эмерджентности, его практическая важность столь велика, а его недооценка встречается так часто, что мы обратим на него особое внимание. Если нам нужна сама система, а не что-то иное, то ее нельзя разделять на части, поскольку оставшаяся после изъятия части система – это другая система. У нее другой состав, отсюда у нее и другая структура, отсюда у нее и другие свойства (в том числе и эмерджентные).

Еще одно важное уточнение: часть, изъятая из системы – это не то же самое, что эта часть в системе.
Поэтому рассматривая неразделимость системы важно учитывать:
Потеря функциональности при разложении. Если система функционирует как единое целое, её невозможно восстановить путём простой сборки компонентов.
Сложность восстановления после разрушения. При нарушении связей между элементами часто невозможно вернуть систему в исходное состояние.
Важность поддержания структуры. Для сохранения работоспособности системы необходимо поддерживать её структуру и связи между элементами.
Невозможность локального управления. В сложных системах нельзя просто «починить» отдельный элемент, если проблема кроется в характере взаимодействия элементов.
Например, при изменении программного обеспечения недопустимо анализировать только отдельный изменяемый модуль без учёта того, как он взаимодействует с другими. Только с учетом связей между компонентами можно гарантировать стабильность и производительность системы.
1.5. Свойство системы Ингерентность
Будем говорить, что система тем более ингерентная, чем лучше она согласована, приспособлена к окружающей среде, совместима с нею по ключевым функциям. Например, если электроприбор произведен для Европы и имеет рабочее питание 220 вольт, он будет не ингерентен в США, где напряжение в розетках 110 вольт. Но ингерентность может быть восстановлена через посредника, если применить специальный переходник-адаптер.
Очень важно учитывать, что особое значение ингерентности приобретается по отношению к той функции, которую необходимо применить. Например, если сравнивать приспособленность дельфина и аквалангиста к пребыванию в воде, то представитель морской фауны явно выигрывает, а если важна функция сварки в воде, то порядок ингерентности аквалангиста резко повышается.
Рассмотрим ключевые черты ингерентности как свойства системы:
Врожденность и неизменность. Ингерентные свойства изначально заложены в структуре системы и не могут быть изменены без разрушения системы. Например, ингерентное свойство алмаза – твердость, основывается на том, что при стабильных условиях атомы углерода организуются в алмазную кристаллическую решётку.
Неразрывная связь с сущностью системы. Если ингерентное свойство исчезает, система перестаёт быть самой собой. Например, при нарушении условий (температуры или давления) алмаз может превратиться в графит — термодинамически более стабильную форму углерода при обычных условиях.
Зависимость от внутренней природы системы. Ингерентные свойства зависят от устройства системы, а не от внешних условий. Например, твердость алмаза основана на кубической (алмазной решетке): каждый атом углерода связан с четырьмя другими по тетраэдрической схеме.
Стабильность и устойчивость. Ингерентные свойства сохраняются в течение существования системы, несмотря на внешние воздействия. Например, использование алмазов для резки, сверления, шлифовки, полировки твёрдых материалов практически не снижает его свойства - твердость.
Почему ингерентность важна в системном анализе?
Невозможность устранения без разрушения системы. Ингерентные свойства нельзя изменить без нарушения работоспособности системы.
Ограничения при модернизации. При проектировании систем необходимо учитывать ингерентные ограничения, заложенные в их структуре.
Надежность и предсказуемость. Ингерентные свойства делают поведение системы стабильным и предсказуемым.
Зависимость от внутренней природы. Внешние изменения не могут повлиять на ингерентные свойства, если они заложены в самой структуре системы.
Поскольку, как было сказано выше, ингерентность не абсолютное свойство системы, а привязано к некоторой конкретной функции, то при упорядочивании разных систем по степени ингерентности, в зависимости от рассматриваемой функции, даст разный результат.

Например, в разных карточных играх одни те же комбинации дают разный выигрыш.
1.6. Свойство системы Целесообразность.
В создаваемых человеком системах подчиненность всего (и состава, и структуры) поставленной цели признана фундаментальным свойством любой искусственной системы.
Цель, ради которой создается система определяет, какое эмерджентное и ингерентное свойство будет обеспечивать реализацию цели, а это в свою очередь диктует выбор состава и структуры системы. Одно из определений системы так и гласит: система есть средство достижения цели.
В Кибернетике есть схожий принцип:
Принцип целеустремленности, один из ключевых принципов кибернетики, согласно которому любая сложная система функционирует и развивается с учётом поставленной цели. Поэтому система функционирует на принципе стремления к достижению поставленной цели. Процессы в системе настраиваются так, чтобы минимизировать отклонения от намеченной цели. В процессе достижения цели система использует обратную связь, чтобы корректировать поведение и адаптироваться к изменениям внешней среды.
Управление системой всегда осуществляется в контексте поставленной цели — без цели система либо функционирует хаотично, либо её поведение нельзя считать управляемым.
Суть принципа целеустремлённости:
1) Наличие цели. У системы должна быть чётко сформулированная цель, к которой направлено её поведение.
2) Коррекция поведения на основе обратной связи. Система постоянно получает информацию о состоянии среды и о результате своих действий, чтобы скорректировать своё поведение для достижения цели.
3) Измеримость результата. Результат достижения цели должен быть измеримым и сопоставимым с исходной задачей.
4) Стабильность при достижении цели. Система должна стремиться к устойчивому состоянию после достижения цели и избегать чрезмерных колебаний.
5) Адаптация к изменяющимся условиям. Если среда изменяется, система должна корректировать свою стратегию для сохранения курса на достижение цели.
Например, в сфере образования. Преподаватели, учебные планы, расписание, инфраструктура — все подчинено единой цели: дать студентам знания, навыки и ценности, пригодные для применения в текущих реалиях производственного сегмента. Если система (ВУЗ) теряет цель (например, администрация заботится только о формальных рейтингах и отчетах), эффективность подготовки специалистов в учебном заведении падает.
В следующей части мы перейдем к рассмотрению практических приемов моделирования поведения.
