Мы продолжаем курс «Анализ требований к информационным системам». В лекции 4 мы говорим о разных типах анализа и о том, как они в совместном использовании с проектированием и инженерией требований позволяют добиваться результатов в области разработки информационных систем. В прошлый раз мы постарались комплексно рассмотреть бизнес-анализ. Сегодня мы продолжим это делать, но также уделим внимание системному анализу и его аспектам. Ну что ж, давайте начнем.
История развития и современное понимание сути и назначения системного анализа очень противоречивы и неоднозначны. Существует большая методологическая путаница, возникшая с развитием этой специализации в нашей стране. С одной стороны, под системным анализом понимается вид анализа, цель которого – выявить системные взаимосвязи в рассматриваемой задаче и решить ее комплексно, то есть с нескольких точек зрения. С другой стороны, под системным анализом понимается область, которая отвечает за анализ конкретной системы или продукта, его внутреннее устройство, связи компонентов и модулей системы, за то, как они взаимодействуют между собой. Путаница вызвана не очень корректной адаптацией принципов системной инженерии к дисциплине системотехники, которая произошла в середине 60-х годов в СССР. Тогда появилось несколько исследовательских групп, пытавшихся разобраться с системным подходом в его научном, а не в инженерном виде. В те времена системный подход очень часто обсуждался в связи с кибернетикой, которая считалась чуть ли не синонимом компьютерной науки и уж точно ее обобщением. Позднее выяснилось, что кибернетика совсем не так всеобща, как может показаться, – общей науки управления в живой природе так и не возникло, а управление в неживой природе свелось к очень небольшому курсу теории автоматического регулирования в инженерных вузах. Итак, сосредоточимся на системном анализе с точки зрения его классического понимания.
Сегодня мы дадим небольшой исторический контекст возникновения системного анализа, поговорим о его истоках и о личностях, которые внесли наибольший вклад в развитие этого типа аналитической деятельности, затем дадим его краткое описание, посмотрим на структуру деятельности и зададим тренды его развития. Далее мы разберемся в сути этого типа анализа, его назначении и тех функциях, которые выполняются для достижения результата этого вида деятельности. Мы посмотрим на системный анализ с точки зрения заинтересованных в результатах ролей. Для этого разберем его артефакты, ценность, которую они дают, связь с проектированием и другими видами анализа. Ну и напоследок обсудим, как и в каком направлении можно развиваться в этом виде профессиональной деятельности. Эта лекция будет насыщена практическими деталями, которые помогут сразу начать совершенствоваться в этом виде деятельности.
Основной фокус системного анализа сконцентрирован на понятии «система». Для комплексного понимания этого понятия разберем его более подробно.
Определение фиксирует, что система представляет собой целостность или единство, состоящее из множества элементов, которые должны находиться в отношениях (связях) друг с другом. Главное – система представляет собой что-то целостное, причем элементы системы могут быть различной природы возникновения, а связи элементов имеют различные виды: статические, динамические, часть–целое, целое–целое.
Современный этап развития системного анализа в большей степени обязан трудам Л. фон Берталанфи, который первым из западных ученых разработал концепцию организма как открытой системы и сформулировал программу построения общей теории систем. Он обобщил принципы целостности, организации, эквифинальности и изоморфизма.
Система – очень широкое и комплексное понятие. Этим термином можно описать многое в реальном мире. Основное внимание при рассмотрении системного анализа уделяется системам, которые имеют следующие характеристики: целостность, структурность, иерархичность, коммуникативность, целенаправленность, устойчивость. Системный анализ формировался этапами. Его развитие происходило под влиянием различных философских воззрений, теорий о структуре познания и возможности предсказания. В результате такого развития системный анализ вышел на позиции методологической науки, и именно с этого момента началось его формирование в качестве практического вида деятельности, который может приносить определенный результат за счет комплексного взгляда на объекты или события окружающего нас мира.
Системный анализ тесно связан с философией. Философия дает общие методы содержательного анализа, а системный анализ – общие методы формального, межпредметного анализа предметных областей. Современный этап развития системного анализа и его прикладное использование тесно связаны с информационными системами. Организация, которая развивается в этом направлении, – Международная организация по стандартизации (ISO), а основной документ – SWEBOK. Этот труд содержит все самые важные подходы к работе в системном анализе.
Международная организация по стандартизации (ISO) собирает и представляет лучший опыт системного анализа, но основная заслуга в развитии системного анализа все же принадлежит конкретным личностям. Первый, кого необходимо упомянуть, – это Л. фон Берталанфи, отец современного вида системного анализа, первооснователь обобщенной системной концепции под названием «Общая теория систем», постановщик системных задач – прежде всего, в сфере разработки математического аппарата описания типологически несходных систем. Л. фон Берталанфи – первый, кому удалось провести полную систематизацию разрозненной информации складывающегося направления системного анализа. Он является представителем академической когорты исследователей. Следующий на очереди – Рассел Акофф, американский ученый, исследователь системного подхода и организационного управления, автор и соавтор 35 книг и множества статей, которые внесли значительный вклад в развитие теории систем и научных методов управления. Рассел Акофф – известный американский ученый в областях исследования операций и теории систем, методы которых активно используются в теории организации и управления. Он является практиком, испробовавшим и доказавшим успешность методов системного анализа в повседневной деятельности.
Л. фон Берталанфи – теоретик, который заложил базу этого направления деятельности, сформулировал цели и задачи. Рассел Акофф и другие последователи показали практическую значимость системного анализа и продемонстрировали его прикладное значение для исследований в различных областях деятельности.
С 70-х годов прошлого века системный подход как основа системного анализа стал использоваться в информатике. Cybersyn – один из первых крупных проектов, который объединил методы системного анализа в целях построения масштабной и весьма амбициозной системы по управлению экономикой Сальвадора. В системе было предусмотрено четыре уровня управления: Предприятие, Отрасль, Сектор экономики, Глобальный уровень.
Разрабатываемая система должна была обладать обратной связью. Если проблема не разрешалась на более низком уровне за определенный промежуток времени, то автоматически происходила ее передача на более высокий уровень принятия решения. Проекты были прерваны после переворота Пиночета в 1973 году. Параллельно в это же время в СССР создавалась ОГАС (Общегосударственная автоматизированная система учета и обработки информации) – проект системы автоматизированного управления экономикой СССР. Проектирование и разработка ОГАС были прекращены в начале 1990-х. Сейчас в мире ведется внедрение разнообразных систем управления, использующих принципы системного анализа. Создаются автоматизированные системы управления, которые решают прикладные задачи за счет использования конкретных методов бизнес-анализа и анализа данных для профильных задач сбора данных, расширения узких звеньев производства и увеличения времени обратной связи. Описание разрабатываемой системы дает лучшее и самое практическое определение системного анализа – через взгляд на реальный мир как на иерархию соподчиненных объектов, каждый из которых представляет собой модель. Модели на разных иерархиях взаимосвязаны. Результаты деятельности моделей на одной иерархии связаны с результатами деятельности моделей на другой. Разрабатывая такую систему, надо создавать как можно более ценные модели, описывающие те факторы и аспекты реального мира, которые важны для функционирования системы в целом.
Выполнение системного анализа позволяет решать проблемы различного уровня абстракции – от высокоуровневых до крайне конкретных на соответствующих нижних уровнях. Каждый уровень абстракции предполагает работу над разными аспектами информации с разной степенью детализации. На верхнем уровне критично выявить основные системные закономерности и связи. Чем ниже уровень, тем корректнее следует фокусироваться на конкретных проблемах и задачах, которые стоят перед разными группами целевых пользователей, реализующих функции системы. Один из вариантов декомпозиции выглядит следующим образом: верхний уровень отвечает на абстрактные вопросы, которые позволяют сформулировать рамки системы, заложить ее структурное представление, уровень ниже отвечает за то, решение каких задач позволит реализовать функционал ограниченной рамками системы для достижения целевых функций, а функциональные уровни реализуют цель декомпозиции каждой задачи. Вопросы этого уровня будут обосновываться контекстом самой системы. Шаг за шагом система в целом и каждый ее элемент должны найти свое документальное отражение на профильном артефакте.
Личность, которая выбрала системный анализ в качестве своего профессионального поприща, имеет широкий базис и множество направлений развития. Можно расти в экспертизе, становясь все более компетентным и универсальным аналитиком. Связь анализа с разработкой и тестированием дает возможность профессиональной миграции в сторону тестирования и разработки – далее можно выбрать эту профессиональную вертикаль и расти в ней. Компетентность аналитика в тех или иных предметных областях делает возможным переход в сторону функционального или проектного менеджмента. Поскольку продуктовый анализ и системный анализ имеют много общего, так как сосредоточены на конкретных продуктах или системах, то являются еще одним направлением профессиональной миграции. Тут же можно сказать, что профессиональное проектирование интерфейсов – еще один аспект деятельности системного аналитика, в который можно профессионально углубиться и начать расти. А работа с прикладной бизнес-областью тоже дает возможность миграции в сторону бизнес-анализа и предметной области, на которой сосредоточен системный анализ в конкретном проекте или конкретной организации.
Системный анализ ориентирован на любой практический вид деятельности, в ходе которого возникают проблемы. Решение проблем подразумевает наличие глубоких специализированных знаний в возникшей проблеме и ее контексте. Но этого не всегда достаточно. Для выработки эффективного решения требуются подходы и методы, которые смогут сложить пазл проблемы в единую, структурированную, логичную картину, понятную всем заинтересованным в решении проблемы. Системный анализ нацелен на выявление причин сложностей, возникающих перед организациями, коллективами, и на выработку вариантов решения проблемы. Системный анализ как прикладной вид деятельности опирается на широкий круг современных средств научных исследований – моделирования, математики, информатики, наблюдений, экспериментов. Особое внимание обращено на методологию исследований и взаимодействия специалистов различных дисциплин. С практической стороны системный анализ есть теория и практика улучшающего вмешательства в проблемные ситуации. Почти все методы исследования исходят из четко сформулированной заранее задачи. Системный анализ решает вопросы, как правильно ставить задачи и какие методы исследования использовать. Главное в системном анализе – как сложное превратить в простое, как сложную проблему превратить в четкую серию задач, имеющих метод решения. Системный анализ всегда конкретен. Он имеет дело с определенным объектом и с конкретной проблемой, которая решается определенными, специализированными методами. Сила системных методов в анализе именно сложных проблем заключается в том, что они позволяют, с одной стороны, разложить слишком сложную для решения проблему на ее составляющие, вплоть до постановки конкретных, имеющих отработанные алгоритмы решения задач, а с другой – удерживать их вместе в качестве единого целого. Методы системного анализа как раз и есть методы упорядочения проблем. Системный анализ применяется для того, чтобы поначалу хотя бы слабо структуризовать неструктурированную, нечетко определенную проблему, а затем собрать новую дополнительную информацию о ней, установить взаимосвязи составляющих, дать, где это только возможно, количественные оценки, хотя бы субъективные, экспертные, и перевести проблему в разряд структурированных, к решению которых уже можно приложить аппараты моделирования и выбора оптимальных решений. Системный анализ опирается на широкий круг современных средств научных исследований – моделирования, математики, информатики, наблюдений, экспериментов. Особое внимание обращено на методологию исследований и взаимодействия специалистов различных дисциплин. Бурное развитие системного анализа связано с развитием информационных систем, которые позволяют заложить базис для объективного принятия решения в условии определенности. Определенность основана на метриках производительности, которые лежат в основе автоматизации. Системный анализ помогает соединить разные группы пользователей в единый, последовательный процесс и решить самые сложные задачи.
Элементы системы, на которых сосредоточено рассмотрение системного анализа, – это ее части, в совокупности формирующие эмерджентные свойства.
Упорядочивание образующихся связей и разделение их на части позволяет провести логичное для каждого уровня структурирование системы. Связи элементов формируют основу для развития системных функций. В совокупности организуется целостная система. Этот трансформационный процесс длится до момента связывания всех элементов в единое целое. Системный анализ как вид деятельности имеет определенную структуру, которая поддерживает проведение полного процесса декомпозиции с самого верхнего, основного компонента до элемента того уровня, который требуется для решения конкретной поставленной задачи. Процесс выполнения системного анализа определяется структурой исследуемых элементов. Понимание и умение оперировать контекстом – один из факторов, поддерживающих комплексность результата. Основная функция системного анализа – структурная декомпозиция предмета рассмотрения на соответствующем уровне с пониманием и вниманием ко всем иерархическим деталям. Функциональное рассмотрение обосновывается тем, что достижение результата возможно при наличии объекта рассмотрения, который как раз и должен быть подвергнут декомпозиции. Реализация функции объекта возможна при наличии материальной или информационной основы. В последствии, по ходу жизненного цикла, функция будет способствовать трансформации объекта рассмотрения. Анализируемая и далее проектируемая система может быть определена как комбинация компонентов, которые работают совместно для коллективного выполнения полезной функции. Структура в своем законченном представлении – конструкция системы, формирующая ее границы, которые могут быть как физическими, так и информационными. Основное назначение структуры (конструкции) – предоставить законченное представление системы определенного уровня. Конструкция как законченное представление структуры совместно с функцией формирует комплексное представление любой системы. Система определяется как иерархия холонов – холархия. Холон – это что-то, что является одновременно целым для своих частей и само является частью какого-то объемлющего целого. Система – это холон, у которого есть появляющиеся свойства, возникающие от взаимодействия его частей. Системный анализ рассматривает любую систему как объект своей деятельности. Над этой системой поэтапно могут выполняться следующие виды работ – формализация основных проблем, мешающих целевому функционированию системы, определенному стейкхолдерами, описание всех возможных внешних и внутренних влияний на систему, описание возможных неопределенностей и будущих сценариев развития реакций при воздействии на систему, измененную по определенным характеристикам, переход к описанию и представлению сложной системы как определенного «черного ящика» с ограниченным количеством входов и выходов, а также разбиение системы по структуре, компонентам и функциям. Выполнение системного анализа может приводить к необходимости повторения всех перечисленных выше работ над каждым отдельным компонентом, если он представляет собой законченную систему, функционирование которой определяется набором собственных правил. Практически структура системного анализа формируется на основе рассматриваемой системы и задач/функций, выполняемых системой. Функции системного анализа помогают в выстраивании самой конструкции автоматизированного объекта.
Мы подошли к рассмотрению основных артефактов системного анализа. Артефакты должны поддерживать и обеспечивать целевой процесс, в данном случае – процесс проведения системного анализа. Любой способ отражения информации предполагает формирование законченного рассмотрения конкретного представления системы. В такой парадигме следует помнить о том, что такое отражение является верным, но не позволяет получить законченное представление о системе. Важно собрать и формализовать «скрытые» для выбранного способа отражения закономерности, которые влияют на систему или на результат ее деятельности. Для этих целей выбирают представления системы с разных точек зрения. Рассмотрение системы с разных точек зрения является логичным продолжением и дополнением декомпозиции системы на структурные элементы. Такое рассмотрение позволяет дополнить иерархию артефактами, назначение которых – интегрировать разрозненные компоненты в единое представление, функционирующий продукт. Каждое представление само по себе представляет законченный функциональный взгляд на аспект системы. Теперь мы можем говорить о системе артефактов, которые должны поддерживать представление о рассматриваемой системе как о ее модельном отражении.
Ценность системного анализа, соответствуя сути выполняемой деятельности, комплексная и оказывает воздействие на многие виды работ и уровни функционирования организации. Системный анализ для организации упорядочивает и развивает культуру создания, поддержки и развития информационных продуктов. Для продукта системный анализ помогает развивать варианты конструирования информационных систем. Это, в свою очередь, помогает с развитием программной инженерии и подходами работы с ней. Для своего окружения системный анализ развивает подходы к работе над информационным ландшафтом, а для области информационных технологий – структурирует требования к системам. Затем он становится основой для создания баз и библиотек знаний – информационного мозга организации, – в которых будет накапливаться и развиваться собственный уникальный опыт, приносящий конкретную бизнес-ценность.
Теперь возвращаемся к слайду, с помощью которого мы проиллюстрировали развитие и эволюцию аналитической культуры. Системный анализ востребован организациями (и соответствует им), которые накопили какой-то опыт эксплуатации систем, и этот опыт необходимо развивать. Тут важно регламентировать подходы к работе над информационными системами и контролировать процесс их создания. Для того чтобы создавать прогнозируемые решения, нужно сосредоточиться и сфокусироваться на выполняемой работе, продолжать наращивать опыт и становиться повышать уровень экспертизы при применении конкретных бизнес- и технологических решений. Общая цель – получение запланированного результата. На этом уровне не будут востребованы какие-то открытия и личная инициатива – здесь строится общеорганизационная система взаимодействия IT-структур и бизнес-пользователей, и надо сделать так, чтобы она логично и качественно развивалась. Основным инструментом этого является системный анализ.
В части связи с проектированием и инженерией требования системный анализ направлен на формализацию подходов к приоритизации поступающих инициатив по развитию автоматизации. Системный анализ закладывает общий глоссарий и регламентирует критерии приемки и использования функционала. На этой стадии, как правило, появляются и начинают стремительно развиваться интеграционные решения, которые выстраивают бизнес-процессы в единую цепочку кросс-функциональных процессов, проходящих через всю организацию. Важно, чтобы системный анализ регламентировал требования к интеграционным интерфейсам и отслеживал их соблюдение.
Профессиональная траектория развития в системном анализе имеет ряд направляющих, которые, как и в ситуации с типами анализа, рассмотренными ранее, определяются профессиональным контекстом, в котором развивалась личность аналитика. Из наиболее вероятных траекторий выделяют: информационные системы, которые разрабатывались по ходу выполнения системного анализа; технологическую базу и навыки, используемые для разработки и внедрения информационных систем; технический менеджмент, управляющий деятельностью системного анализа и координацией исполнителей, разрабатывающих и поддерживающих функционирование информационных систем.
Итак, информационные системы, которые разрабатывались по ходу выполнения системного анализа. Этот тип роста обоснован в случаях, когда аналитик концентрируется на знании и освоении конкретной системы (SAP, Oracle и т. д.) или класса систем (электронного документооборота, построения сквозной бизнес-аналитики компании). В этом случае аналитик постепенно трансформируется в эксперта по выделенному инструменту. Это интересный и сложный путь, ограничивающий развитие рамками конкретной информационной системы. Это определенное преимущество и одновременно недостаток. Развитие и востребованность будут зависеть не столько от развитости профессионала, но и от востребованности платформы.
Далее идут технологическая база и навыки, которые использовались для разработки и внедрения информационных систем. При этом варианте продолжения карьеры аналитик концентрируется на технологических аспектах системы – интеграционной составляющей, интерфейсном функционале, надежном и быстром взаимодействии с базой данных, программной архитектуре приложения и т. д. Эти аспекты предполагают рост в области разработки программного обеспечения. Аналитик, вставший на этот путь, постепенно углубляется в детали производства и кодирования информационных систем.
И последняя направляющая траектории развития в системном анализе – технический менеджмент, управляющий деятельностью системного анализа и координацией исполнителей, разрабатывающих и поддерживающих функционирование информационных систем. При этом варианте аналитик постепенно удаляется от аспектов инструмента и производства и делает акцент на развитии, связанном с организацией подразделения или команд, в которых или для которых выполняется системный анализ. Переход к выполнению менеджерских функций предопределяет постепенное отдаление от аналитической функции и освоение навыков и инструментария управления персоналом и выстраивание процессов адаптации и взаимодействия аналитиков и производственных команд разработки программного обеспечения.
Профессия системного аналитика, в противовес профессиям бизнес- и продуктового аналитиков, – самая старая. Это позволило накопить и систематизировать информацию о том, как поэтапно развиваться в этой профессии. Результат – стандартизация на государственном уровне это вида деятельности. Многие страны создали и развивают такие профильные стандарты, и наша страна – не исключение. В 2014 году появился профессиональный стандарт № 809. Это структурированный и детальный документ, который начинающие и развивающиеся аналитики могут использовать в качестве профессиональной карты компетенций.
Каждое приведенное направление развития представляет собой развитый навык, который системный аналитик использует в своей работе каждый день. Степень развитости этого навыка определяется рабочим окружением и проектами, в которых участвует аналитик. Если вы определились с рабочими аспектами, которые приносят наибольшее удовольствие и в которых вы хотите развиваться, то ищите для себя окружение, способствующее профессиональному росту. Так с накоплением практического опыта будет расти уровень экспертизы и стоимость.
Мы подошли к концу. Давайте подведем итоги этого модуля и сделаем краткие выводы. Системный анализ направлен на структурирование накопленных организацией данных – в этом состоит его основная ценность. Он предлагает разбиение систем на переиспользуемые компоненты, которые могут быть востребованы более чем в одной системе. Системный анализ – ступенька на пути к повышению цифровой зрелости организации, которой нужно достичь, после чего поддерживать ее. До следующей встречи!
1. Системный анализ — это мост между хаосом и порядком. Его главная цель — структурировать неструктурированные проблемы, делая возможным их решение инженерными методами.
2. Это междисциплинарная деятельность. Системный анализ объединяет философию (методы познания), математику (моделирование) и информатику (реализация), фокусируясь на методологии взаимодействия специалистов.
3. Ключ к пониманию — иерархия. Эффективный системный анализ требует умения двигаться по уровням абстракции: от глобальных целей системы до конкретных функций её отдельных элементов.
4. Ценность измеряется зрелостью. Внедрение системного анализа повышает цифровую зрелость организации, создавая предсказуемость, контролируемость и накапливая экспертизу для дальнейшего развития.
5. Профессия предлагает широкий выбор путей. Системный аналитик может расти как технический специалист, как эксперт в предметной области или как менеджер, что делает профессию гибкой и перспективной.
1. В чем заключается основная методологическая путаница в понимании термина «системный анализ»?
2. Какой вклад внесли Л. фон Берталанфи и Р. Акофф в развитие системного анализа? Чем различались их подходы?
3. Что такое «холархия» и как это понятие связано с системным анализом?
4. Каковы основные этапы (виды работ) процесса системного анализа?
5. Почему для понимания системы недостаточно одного способа ее отражения (модели)?
6. В чем заключается практическая ценность системного анализа для организации и для IT-продукта?
7. Какие существуют основные траектории профессионального развития системного аналитика? От чего зависит выбор той или иной траектории?
8. Как системный анализ связан с проектированием и инженерией требований?
9. Что означает тезис: «Системный анализ помогает перевести неструктурированную проблему в разряд структурированных»?
10. Для чего нужен профессиональный стандарт системного аналитика (например, № 809)?