Подходы к анализу и проектированию систем
На протяжении всей истории развития теории систем предлагались и применялись различные подходы к их представлению (отображению), анализу их проектирования.
Традиционный подход, применяющийся в математических исследованиях, состоит в том, чтобы определить элементы (переменные, константы) и связать их соответствующим соотношением (формулой, уравнением, системой уравнений), отображающим принцип взаимодействия элементов.
Когда задачи усложнились и такое соотношение не удавалось сразу найти, то предлагалось формировать "пространство состояний" элементов и вводить "меры близости" между элементами этого пространства. Такой подход вначале пытались применить для исследования сложных систем.
Предлагалось обследовать систему, выявить все элементы и связи между ними. Этот подход называли иногда "перечислением" системы. При обследовании применялись разные способы: 1) архивный (изучение документов и архивов предприятия); 2) опросный или анкетный (опрос сотрудников, в том числе с помощью специально разработанных вопросников – анкет).
Однако первые же попытки применить такой подход к исследованию систем управления предприятиями и организациями показали, что "перечислить" сложную систему практически невозможно. В истории разработки автоматизированных систем управления был такой случай. Разработчики написали несколько десятков томов обследования системы, но так и не смогли приступить к созданию АСУ, поскольку не могли гарантировать полноты описания. Руководитель разработки вынужден был уволиться, и впоследствии стал изучать системный подход и популяризировать его.
Учитывая трудности "перечисления" системы, с самого начала возникновения системных теорий исследователи искали подходы к ее анализу и созданию.
Основными подходами к анализу систем, предлагавшимися разными исследователями, являются следующие:
• в начальный период становления теории систем развивался бихевиористский подход, основанный на исследовании поведения (behaviour – поведение) систем; однако этот подход весьма трудоемок и не всегда реализуем;
• американский ученый М. Месарович [1] предложил подходы, которые назвал целенаправленным и терминальным (от терм – элементарная частица, интересующая исследователя);
• польский ученый Р. Куликовски [2] предложил называть аналогичные подходы декомпозицией и композицией системы;
• швейцарский астроном, венгр но происхождению Ф. Цвикки [3] предложил и развил морфологический подход, который помогает искать полезные объединения элементов путем их комбинаций;
• американская корпорация RAND [4] предложила подход к созданию сложных программ и проектов, названный "деревом целей";
• в практике проектирования сложных технических комплексов возникли термины язык моделирования, язык автоматизации проектирования, применяющиеся для отображения взаимосвязей между компонентами проекта; при разработке языков моделирования применяют математическую логику и математическую лингвистику, которые содержат удобный термин для описания структуры языка – тезаурус (см. гл. 5), и подход называют иногда лингвистическим, или тезаурусным;
• при исследовании и формировании структур были предложены следующие подходы: путем поиска связей между элементами; или, напротив, путем устранения лишних связей (см. рис. 3.10).
С учетом рассмотренных подходов в настоящее время па основе обобщения предшествующего опыта сформировалось два основных подхода к отображению систем, первоначально предложенных для формирования структур целей [5]:
1) "сверху" – методы структуризации, или декомпозиции, целевой, или целенаправленный, подход;
2) "снизу" – подход, который называют морфологическим (в широком смысле), лингвистическим, тезаурусным, терминальным, методом "языка" системы. С помощью этого подхода определяется "пространство состояний" системы и реализуется поиск взаимосвязей (мер близости) между элементами.
Подход "снизу" можно реализовать, применяя не только комбинаторные приемы (морфологический и т.п.), но и бехивиористский подход, вариант которого при автоматизации моделирования поведения объектов в настоящее время иногда называют процессным.
Подходы "сверху" и "снизу" называют также аксиологическим и каузальным соответственно [6].
Аксиологическое представление системы – отображение системы в терминах целей и целевых функционалов. Этот термин используют в тех случаях, когда необходимо выбрать подход к отображению системы на начальном этапе моделирования и противопоставить это отображение описанию системы в терминах "перечисления" элементов системы и их непосредственного влияния друг на друга, т.е. каузального представления.
Каузальное представление системы – описание системы в терминах влияния одних переменных на другие, без употребления понятий цели и средств достижения целей. Этот термин происходит от понятия "cause" – причина, т.е. подразумевает причинно-следственные отношения. При каузальном представлении будущее состояние системы определяется предыдущими состояниями и воздействиями среды. Такое представление является развитием отображения системы в виде "пространства состояний", характерного для большинства математических методов моделирования. Применяют каузальное представление в случае предварительного описания системы, когда цель сразу нс может быть сформулирована, и для отображения системы или проблемной ситуации не может быть применено аксиологическое представление.
На практике обычно эти подходы сочетают.
В 1970–1980-е гг. при проектировании организационных структур были предложены три подхода к решению этой проблемы [7]:
• нормативно-функциональный подход направлен па унификацию организационных форм управления в рамках отрасли. Разработка и внедрение типовых организационных структур явилось первым шагом на пути внедрения принципов их научно-обоснованного построения. Однако ориентация на типовую номенклатуру функций управления и структурных управленческих подразделений не позволяет учесть особенности конкретных предприятий и условия их деятельности;
• функционально-технологический подход основан на рационализации потоков информации и технологии ее обработки, на формировании и анализе организационно-технологических процедур подготовки и реализации управленческих решений. Этот подход обеспечивает возможность достаточно полно учесть особенности конкретного предприятия (организации), отличается гибкостью и универсальностью. Вместе с тем он характеризуется высокой трудоемкостью, использованием стабильной номенклатуры сложившихся функций управления, подчинением оргструктуры схеме документооборота;
• системно-целевой подход заключается в построении структуры целей, определении на ее основе функций управления и их организационном оформлением. Преимущества этого подхода заключаются в возможности учитывать особенности объекта управления и условия его деятельности, изменять и расширять состав функций, проектировать разнообразные организационно-правовые формы предприятий. Трудности в использовании подхода связаны с проблемой перехода от совокупности целей и функций к составу и подчиненности структурных звеньев, обеспечивающих их реализацию.
Применительно к исследованию и разработке ИС эти подходы можно интерпретировать следующим образом.
Обобщающий подход "сверху", называемый целевым, целенаправленным, системно-целевым, основан на структуризации или декомпозиции системы в пространстве. Этот подход позволяет расчленить исходную большую неопределенность на более обозримые и выбрать методы их анализа и проектирования, сохраняя целостность представления об исследуемой системе или решаемой проблеме на основе иерархической структуры (древовидной, стратифицированной). Подход применялся при разработке АИС и АСУ для крупных предприятий, при реструктуризации систем организационного управления.
Подход "снизу", основанный на анализе пространства состояний, поиске "мер близости" между компонентами с помощью различных, в том числе статистических методов, морфологического моделирования, отличается большой трудоемкостью. Для анализа пространства состояний в экономике разработаны методы бизнес-аналитики Data-Mining [8], реализуемые с помощью соответствующих программных продуктов (Deductor и т.п.).
В настоящее время для проектирования информационных систем широкое применение нашел подход, основанный на анализе бизнес-процессов, кратко называемый процессным.
Процессный подход (который можно считать развитием функционально-технологического подхода) основан на структуризации во времени, на представлении процессов в форме графов.
При несомненной привлекательности применение функционально-технологического подхода долгое время было практически нереализуемым из-за большой трудоемкости, отсутствия правил и средств автоматизации формирования графов, отображающих процессы в системах.
В 1990-е гг. была разработана методология SADT – (Structured Analysis and Design – структурный анализ и проектирование (предложена Дугласом Россом [9]), представляющая собой совокупность методов, правил и процедур, предназначенных для построения функциональной модели объекта какой-либо предметной области. На ее основе разработаны и стали широко применяться функционально-ориентированные и объектно-ориентированные CASE- [10] и R А [)-[11]технологии. Компьютерная реализация методологии SADT получила название IDEF (Icain Definition). Основными структурными моделями являются модели процессов IDEFO HIDEF3, модель данных IDEF1X [12]. Созданы стандарты IDEF и DFD, ориентированные на анализ процессов (в том числе бизнес-процессов). Для реализации моделей применяются автоматизированные средства – BPWin, ARIS, язык UML (Unified Modeling Language – Унифицированный язык моделирования) [13].
Популярность CASE-методологии и RAD-технологий базируется на разработке принципов и автоматизации формирования процессов, на развитии методов их формирования (на основе анализа "жизненного цикла" производства, обслуживания или других процессов, причинно-следственных связей и т.п.), что и обеспечило развитие процессного подхода, преимущества которого заключаются в возможности учитывать особенности конкретного объекта и условий его деятельности.
Более подробно опыт и возможности применения рассмотренных подходов при проектировании информационных систем будут рассмотрены в гл. 5–7 и в заключении.