© Мороховец Ю.Е. , МЭИ
Разработка сложных информационных систем (ИС) таких, какими являются ИС административно-управленческой деятельности предприятий (организаций, учреждений и т.д.; в дальнейшем ИС предприятий), невозможна без тщательно обдуманного методологического подхода. Какие этапы необходимо пройти, какие методы и средства использовать, как организовать контроль за продвижением проекта и качеством выполнения работ - эти и другие вопросы решаются методологиями программной инженерии.
В настоящее время существует ряд общих методологий разработки ИС. Главное в них - единая дисциплина работы на всех этапах жизненного цикла системы, учет критических задач и контроль их решения, применение развитых инструментальных средств поддержки процессов анализа, проектирования и реализации ИС.
Для различных классов систем используются разные методы разработки, определяемые типом создаваемой системы и средствами реализации. Спецификации этих систем, в большинстве случаев, состоят из двух основных компонентов - функционального и информационного. По способу сочетания этих компонентов подходы к представлению информационных систем можно разбить на два основных типа - структурный и объектно-ориентированный.
В области создания систем автоматизации административно-управленческой деятельности доминируют структурные подходы, так как они максимально приспособлены для взаимодействия с пользователями (заказчиками), не являющимися специалистами в области информационных технологий. Адекватными инструментальными средствами, поддерживающими структурный подход к созданию информационных систем, являются так называемые CASE-системы автоматизации проектирования.
Данная работа посвящена обсуждению вопросов применения CASE-технологии для структурного анализа систем управления предприятий, демонстрации возможностей использования этой технологии на примере конкретной CASE-системы, а также рассмотрению проблем методического обеспечения работ по обследованию административно-управленческой деятельности предприятий и отображению полученных результатов в виде соответствующих CASE-моделей.
Основополагающая концепция состоит в построение совокупности логических моделей предметной области при помощи графических методов структурного анализа, которые дали бы возможность пользователям, аналитикам и разработчикам получить ясную общую картину проекта, а также обеспечили бы естественный переход к логической модели будущей ИС.
Объектом обсуждения данного раздела являются методы и инструментальные средства, появившиеся в результате развития дисциплины структурного системного анализа, а также преимущества, которые обеспечиваются применением указанных методов и средств.
С многих точек зрения системный анализ является наиболее трудной частью процесса создания информационных систем. Имеются в виду не только технические трудности анализа, хотя многие проекты требуют, чтобы аналитик обладал глубокими знаниями в области современной технологии обработки данных. И это не только политические трудности, возникающие при разработке больших проектов, в которых новая система будет обслуживать несколько, возможно конфликтующих, заинтересованных групп. Это не только проблемы, связанные с необходимостью общения в условиях, когда люди, обладающие разным уровнем образования и различными взглядами на мир, должны работать вместе. Именно сочетание всех этих трудностей делает системный анализ таким сложным и кропотливым делом, имея в виду еще и тот факт, что аналитик должен играть роль посредника между заказчиком-пользователем и исполнителем-разработчиком.
Пользователи интуитивно понимают свои проблемы, но не могут объяснить их, и, кроме того, имеют весьма туманное представление о том, какую пользу могут принести информационные технологии, основанные на применении компьютеров. Разработчики с энтузиазмом говорят о существующих возможностях в области построения систем обработки данных, но они не имеют информации о том, что именно является наилучшем для данного предприятия, учреждения или организации.
Аналитик должен выбрать золотую середину: выбрать, что является в настоящее время возможным с точки зрения технологии обработки данных, и что стоит делать для данного конкретного предприятия.
Осуществление такого выбора, который был бы приемлемым для всех групп и выдержал бы проверку временем, - наиболее трудноразрешимая задача на этапе системного анализа. Если выполнить эту задачу наилучшим образом, то независимо от того, насколько трудным окажется проектирование и разработка, созданная система будет удовлетворять требованиям данного предприятия. Если же задача будет выполнена неудовлетворительно, то не имеет значения насколько хорошо пройдет реализация, так как созданная система не будет являться тем, что действительно необходимо данному предприятию, и затраты превзойдут полученные преимущества.
Структурный анализ, как совокупность методов постановки задач проектирования информационных систем, в виду значительной размерности решаемых задач, сам должен опираться на мощные средства компьютерной поддержки, обеспечивающей автоматизацию труда системных аналитиков. Такими средствами являются CASE-системы.
За последние несколько лет сформировалось новое направление в программотехнике - CASE (Computer Aided System/Software Engineering). Хотя в настоящее время не существует общепринятого определения CASE, и содержание этого понятия обычно определяется перечнем решаемых задач, а также совокупностью применяемых методов и средств, грубо можно сказать, что CASE представляет собой совокупность методологий анализа, разработки и сопровождения сложных систем (в основном заказных систем программного обеспечения АСУ), поддержанную комплексом взаимосвязанных средств автоматизации. CASE - это инструментарий для системных аналитиков и программистов, позволяющий автоматизировать процессы анализа, проектирования и реализации систем.
К настоящему моменту дисциплина CASE оформилась в самостоятельное наукоемкое направление, повлекшее за собой образование мощной CASE-индустрии, объединившей сотни фирм различной ориентации. Среди них выделяются:
Основными пользователями CASE-систем являются:
Существует мнение, что CASE, наряду с системами визуального программирования, является наиболее перспективным направлением в программотехнике. С этим можно спорить, но то, что CASE - наиболее динамично развиваемое направление, является в настоящее время неоспоримым фактом. Практически не один серьезный американский или японский программный проект не осуществляется без использования CASE-средств. Известная методология структурного системного анализа SADT - Structured Analysis and Design Technique (точнее ее подмножество IDEF0) принята в качестве стандарта на разработку средств программного обеспечения Министерством обороны США. Более того, среди менеджеров и руководителей компьютерных фирм считается чуть ли не правилом хорошего тона знать основы SADT и при обсуждении каких-либо вопросов нарисовать простейшую диаграмму, поясняющую суть дела.
Архитектура большинства CASE-средств основана на парадигме "методология - метод - нотация - средство". Методология определяет критерии для оценки и выбора проекта создаваемой системы, этапы работы и их последовательность, а также правила распределения и назначения методов. Методы - это систематические процедуры, применяемые для генерации описаний подсистем и функциональных компонентов системы с использованием соответствующих нотаций. Нотации предназначены для представления проектных данных о структуре системы и способах ее функционирования, процессах, информационных потоках, накопителях и т.д. Средства - инструментарий для поддержки и усиления методов. Инструментальные средства поддерживают работу аналитиков при реализации проекта в сетевом интерактивном режиме, они способствуют организации проекта, обеспечивают управление процессами анализа и проектирования.
В основе деятельности по созданию и использованию ИС лежит понятие жизненного цикла.
Жизненный цикл - это модель создания и использования ИС, отражающая ее различные состояния, начиная с момента возникновения необходимости в данном комплексе средств и заканчивая моментом его полного выхода из употребления у пользователей.
Опыт создания и использования заказных ИС позволяет условно выделить следующие основные этапы их жизненного цикла:
Этапы разработки, тестирования и внедрения ИС обозначаются единым, объемлющим термином - реализация.
Жизненный цикл образуется в соответствии с принципом нисходящего проектирования и, как правило, носит итерационный характер: реализованные этапы, начиная с самых ранних, циклически повторяются в соответствии с изменениями требований и внешних условий, введением дополнительных ограничений и т.п.
На каждом этапе жизненного цикла порождается определенный набор технических решений и отражающих их документов, при этом для каждого этапа исходными являются документы и решения, принятые на предыдущем этапе.
Существующие модели жизненного цикла, определяют порядок исполнения этапов в процессе создания ИС, а также критерии перехода от этапа к этапу. В соответствии с этим наибольшее распространение получили три следующие модели.
Нерешенные вопросы и ошибки, допущенные на этапах анализа и проектирования ИС, порождают на последующих этапах трудные, часто неразрешимые проблемы и, в конечном счете, приводят к неуспеху всего проекта.
Главная особенность современной индустрии заказных ИС состоит в концентрации усилий на двух начальных этапах ее жизненного цикла - анализе и проектировании, при относительно невысокой сложности и трудозатратах на последующих этапах. Рассмотрим этап анализа более подробно.
Анализ является первым этапом создания ИС, на котором требования заказчика уточняются, формализуются и документируются. Фактически на этом этапе дается ответ на вопрос: "Что должна делать будущая система?". Именно здесь лежит ключ к успеху всего проекта.
Целью анализа является преобразование общих, расплывчатых знаний об исходной предметной области в точные определения и спецификации, а также генерация функционального описания системы. На этом этапе специфицируются:
Разработка перечисленных выше спецификаций при создании ИС, предназначенной для автоматизации управленческих процессов, в общем случае, проходит четыре стадии.
Структурный анализ начинается с исследования того, как организована система управления предприятием, с обследования функциональной и информационной структуры системы управления. По результатам обследования аналитик на первой стадии анализа строит обобщенную логическую модель исходной предметной области, отображающую ее функциональную структуру, особенности основной деятельности и информационное пространство, в котором эта деятельность осуществляется. Используя специальную терминологию, можно сказать, что аналитик строит модель "как есть".
Вторая стадия работы, к которой привлекаются заинтересованные представители заказчика, а при необходимости и независимые эксперты, состоит в анализе модели "как есть", выявлении ее недостатков и узких мест, определение путей совершенствования системы управления на основе выделенных критериев качества.
Третья стадия анализа, содержащая элементы проектирования, - создание усовершенствованной обобщенной логической модели, отображающей реорганизованную предметную область или ее часть, которая подлежит автоматизации. Эту модель можно назвать моделью "как надо".
Заканчивается процесс разработкой "карты автоматизации", представляющей собой модель реорганизованной предметной области, на которой обозначены "границы автоматизации".
Следует отметить, что на практике предложенную общую схему структурного анализа и проектирования, включающую стадию планирования реорганизованной деятельности предприятия, приходится встречать крайне редко. Такую работу могут выполнить для заказчиков лишь крупные, специализированные консалтинговые фирмы, способные подключить к работе специалистов-экспертов в той области деятельности, которая подлежит автоматизации. В большинстве случаев модель "как есть" улучшается системным аналитиком за счет устранения очевидных несоответствий и узких мест, а полученный таким образом вариант модели рассматривается в дальнейшем в качестве модели "как надо".
Основным документом, отражающим результаты работ первого этапа создания ИС, является техническое задание на проект (разработку), содержащее, кроме вышеперечисленных определений и спецификаций, также сведения об очередности создания системы, сведения о выделяемых ресурсах, директивных сроках проведения отдельных этапов работы, организационных процедурах и мероприятиях по приемке этапов, защите проектной информации и т.д.
В заключение раздела подчеркнем, что автоматизация систем управления, в том виде как она понимается в настоящее время, является лишь одной, наиболее продвинутой задачей структурного анализа. Другими, не менее важными и самостоятельными по характеру получаемых результатов, являются задачи спецификации и реорганизации процессов, протекающих в системах управления. Очевидно, что целенаправленное решение именно этих задач в некоторых случаях может привести к результатам, дающим ощутимый экономический эффект без значительных инвестиций в сферу автоматизации предприятия.
Анализ предметной области является важнейшим этапом среди всех этапов жизненного цикла системы. Он оказывает существенное влияние на все последующие этапы, являясь в то же время наименее изученным и понятным процессом. На этом этапе, во-первых, необходимо понять, что предполагается сделать, а во-вторых, задокументировать выдвинутые предложения, так как если проектные требования не зафиксированы и не сделаны доступными для участников разработки, то они вроде бы и не существуют вовсе. При этом язык, на котором формулируются результаты анализа, должен быть достаточно прост и понятен заказчику.
Во многих аспектах системный анализ является наиболее трудной частью процесса создания системы. Проблемы, с которыми сталкивается системный аналитик, взаимосвязаны, и это является одной из главных причин их трудноразрешимости:
Решение этих проблем может быть существенно облегчено за счет применения современных структурных методов, среди которых центральное место занимают методологии структурного анализа.
Структурным анализом принято называть метод исследования системы с помощью ее графического модельного представления, которое начинается с общего обзора и затем детализируется, приобретая иерархическую структуру с все большим числом уровней. Для таких методов характерно:
Все методологии структурного анализа базируются на ряде общих принципов, часть из которых регламентирует организацию работ на начальных этапах жизненного цикла. В качестве двух базовых принципов используются следующие: принцип декомпозиции и принцип иерархического упорядочения.
Выделение двух базовых принципов инженерии информационных систем не означает, что остальные принципы являются второстепенными. Отметим основные из них.
Соблюдение указанных принципов необходимо при организации работ на начальных этапах жизненного цикла независимо от типа разрабатываемой ИС и используемой при этом методологии.
До разработки инструментария структурного системного анализа не было возможности показать лежащие в основе проекта логические функции и потребности системы, поскольку аналитик очень быстро утопал в деталях текущей или предполагаемой реализации проекта.
Сейчас для целей моделирования систем вообще, и структурного анализа в частности, используются три группы средств, отображающих:
Среди всего многообразия средств решения указанных задач в методологиях структурного анализа наиболее часто и эффективно применяемыми являются:
Все они содержат графические и текстовые средства моделирования: первые - для удобства демонстрации основных компонентов модели и их связей, вторые - для обеспечения точного определения компонентов и связей.
При помощи этих средств строятся как логические модели исходной и реорганизованной систем управления, так и логическая модель автоматизированной системы управления - подробное описание того, что и как должна делать система, освобожденное, насколько это возможно, от рассмотрения путей реализации.
Ниже перечислены основные виды и последовательность работ, рекомендуемые при построении логических моделей предметной области в рамках CASE-технологии анализа системы управления предприятием.
1. Проведение функционального и информационного обследования системы управления (административно-управленческой деятельности) предприятия:
2. Разработка моделей деятельности структурных элементов и системы управления в целом:
3. Разработка информационных моделей структурных элементов и модели информационного пространства системы управления:
Логическая модель, отображающая деятельность системы управления предприятия и информационное пространство, в котором эта деятельность протекает, представляют собой "снимок" положения дел (функциональная структура, роли должностных лиц, взаимодействие подразделений, принятые технологии обработки управленческой информации, автоматизированные и неавтоматизированные процессы и т.д.) на момент обследования. Эта модель позволяет понять, что делает и как функционирует предприятие с позиций системного анализа, сформулировать предложения по улучшению ситуации.
Модель является не просто реализацией начальных этапов работы и основанием для формирования технического задания на ее последующие этапы. Она представляет собой самостоятельный результат, имеющий большое практическое значение.
Построенная модель является законченным результатом по следующим причинам:
Развитие логической модели предметной области, ее последовательное превращение в модель целевой ИС, позволит интегрировать перспективные предложения руководства и ведущих сотрудников предприятия, экспертов и системных аналитиков, сформировать видение новой, реорганизованной и автоматизированной деятельности предприятия.
Дополнительная информация
За дополнительной информацией обращайтесь в компанию Interface Ltd.
INTERFACE Ltd. |
|