Основные определения системного анализа

Система — набор элементов и связей между ними, который рассматривают как целое ради конкретной цели. Граница системы зависит от вопроса: база данных может быть частью сервиса, а сервис — частью бизнес-процесса.

Элемент — часть системы, которую на выбранном уровне детализации уже не раскладывают.

Связь — передача данных, материала, энергии или управляющего воздействия между элементами.

Структура — устойчивый рисунок элементов и связей. Поведение — изменение состояния системы во времени.

Состояние — достаточный набор переменных, по которому можно описать систему в данный момент и спрогнозировать ближайшее изменение.

Входы поступают из среды, выходы система возвращает в среду. Ограничения задают допустимую область решений: время, деньги, производительность, законодательство, компетенции команды.

Цель описывает желаемый эффект, а критерий позволяет сравнить варианты. Формулировка «ускорить обработку» — намерение; «95-й перцентиль меньше 300 мс при 500 запросах в секунду» — проверяемый критерий.

Модель — намеренно упрощённое представление системы. Полезная модель сохраняет свойства, важные для текущего решения, а не пытается копировать всё.

Декомпозиция делит систему на части, композиция проверяет, что части снова образуют работающий контур. Локально правильные компоненты ещё не гарантируют правильное целое — см. Эмерджентность.

Рабочая запись системы

Для первичного анализа удобно записать:

где — элементы, — связи, — входы, — выходы, — ограничения, — цели.

Эта запись не является реализацией. Она заставляет явно назвать то, что иначе останется скрытым допущением.

Граница анализа

Перед моделированием отвечаю на четыре вопроса:

  1. Какое решение должна поддержать модель?
  2. Что считаю системой, а что — внешней средой?
  3. Какие показатели наблюдаемы?
  4. На каком горизонте времени выводы должны оставаться верными?

Дальше: Основные этапы системного анализа.

Самопроверка

  • Почему одна и та же система может иметь несколько корректных границ?
  • Чем структура отличается от поведения?
  • Как отличить цель от критерия её достижения?