Технология проектирования ЭИС
Современные информационные технологии предоставляют широкий набор способов реализации ИС, выбор которых осуществляется на основе требований со стороны предполагаемых пользователей, которые, как правило, изменяются в процессе разработки. Для теории принятия решений процесс проектирования ЭИС - это процесс принятия проектно-конструкторских решений, направленных на получение описания системы (проекта ИС), удовлетворяющего требованиям заказчика.
Под проектом ИС будем понимать проектно-конструкторскую и технологическую документацию, в которой представлено описание проектных решений по созданию и эксплуатации ИС в конкретной программно-технической среде.
Под проектированием ИС понимается процесс преобразования входной информации об объекте проектирования, о методах проектирования и об опыте проектирования объектов аналогичного назначения в соответствии с ГОСТом в проект ИС. С этой точки зрения проектирование ИС сводится к последовательной формализации проектных решений на различных стадиях жизненного цикла ЭИС: планирования и анализа требований, технического и рабочего проектирования, внедрения и эксплуатации ИС.
Объектами проектирования ИС являются отдельные элементы или их комплексы функциональных и обеспечивающих частей. Так, функциональными элементами в соответствии с традиционной декомпозицией выступают задачи, комплексы задач и функции управления. В составе обеспечивающей части ИС объектами проектирования служат элементы и их комплексы информационного, программного и технического обеспечения системы.
В качестве субъекта проектирования ИС выступают коллективы специалистов, которые осуществляют проектную деятельность, как правило, в составе специализированной (проектной) организации, и организация-заказчик, для которой необходимо разработать ИС. Масштабы разрабатываемых систем определяют состав и количество участников процесса проектирования. При большом объеме и жестких сроках выполнения проектных работ в разработке системы может принимать участие несколько проектных коллективов (организаций-разработчиков). В этом случае выделяется головная организация, которая координирует деятельность всех организаций-соисполнителей.
Форма участия соисполнителей в разработке проекта системы может быть различной. Наиболее распространенной является форма, при которой каждый соисполнитель выполняет проектные работы от начала до конца для какой-либо части разрабатываемой системы. Обычно это бывает функциональная подсистема или взаимосвязанный комплекс задач управления. Реже встречается форма участия соисполнителей, при которой отдельные соисполнители выполняют работы на отдельных этапах процесса проектирования. Возможен вариант, при котором функции заказчика и разработчика совмещаются, то есть ИС проектируется собственными силами.
Осуществление проектирования ИС предполагает использование проектировщиками определенной технологии проектирования, соответствующей масштабу и особенностям разрабатываемого проекта.
Технология проектирования ИС - это совокупность методологий и средств проектирования ИС, а также методов и средств организации проектирования (управление процессом создания и модернизации проекта ИС) - рис. 3.1.
Рис. 3.1. Состав компонентов технологии проектирования
В основе технологии проектирования лежит технологический процесс, который определяет действия, их последовательность, состав исполнителей, средства и ресурсы, требуемые для выполнения этих действий.
Так, технологический процесс проектирования ИС в целом делится на совокупность последовательно-параллельных, связанных и соподчиненных цепочек действий, каждое из которых может иметь свой предмет. Действия, которые выполняются при проектировании ИС, могут быть определены как неделимые технологические операции или как подпроцессы технологических операций. Все действия могут быть собственно проектировочными, которые формируют или модифицируют результаты проектирования, и оценочными действиями, которые вырабатывают по установленным критериям оценки результатов проектирования.
Таким образом, технология проектирования задается регламентированной последовательностью технологических операций, выполняемых в процессе создания проекта на основе того или иного метода, в результате чего стало бы ясно, не только что должно быть сделано для создания проекта, но и как, кому и в какой последовательности это должно быть сделано.
Предметом любой выбираемой технологии проектирования должно служить отражение взаимосвязанных процессов проектирования на всех стадиях жизненного цикла ИС.
К выбираемой технологии проектирования предъявляются следующие основные требования:
1. созданный с помощью этой технологии проект должен отвечать требованиям заказчика;
2. выбранная технология должна максимально отражать все этапы цикла жизни проекта;
3. выбираемая технология должна обеспечивать минимальные трудовые и стоимостные затраты на проектирование и сопровождение проекта (но при надлежащем качестве проекта!);
4. технология должна быть основой связи между проектированием и сопровождением проекта;
5. технология должна способствовать росту производительности труда проектировщика;
6. технология должна обеспечивать надежность процесса проектирования и эксплуатации проекта;
7. технология должна способствовать простому ведению проектной документации.
Жизненный цикл ЭИС
Потребность в создании ЭИС может обуславливаться либо необходимостью автоматизации или модернизации существующих информационных процессов, либо необходимостью коренной реорганизации в деятельности предприятия (проведении бизнес-реинжиниринга). Потребности создания ЭИС указывают, во-первых, для достижения каких именно целей необходимо разработать систему; во-вторых, к какому моменту времени целесообразно осуществить разработку; в-третьих, какие затраты необходимо осуществить для проектирования системы.
Проектирование ЭИС - трудоемкий, длительный и динамический процесс. Технологии проектирования, применяемые в настоящее время, предполагают поэтапную разработку системы. Этапы по общности целей могут объединяться в стадии. Совокупность стадий и этапов, которые проходит ЭИС в своем развитии от момента принятия решения о создании системы до момента прекращения функционирования системы, называется жизненным циклом ЭИС.
Суть содержания жизненного цикла разработки ЭИС в различных подходах одинакова и сводится к выполнению следующих стадий:
1. Планирование и анализ требований (предпроектная стадия) - системный анализ. Исследование и анализ существующей информационной системы, определение требований к создаваемой ЭИС, оформление технико-экономического обоснования (ТЭО) и технического задания (ТЗ) на разработку ЭИС.
2. Проектирование (техническое проектирование, логическое проектирование). Разработка в соответствии со сформулированными требованиями состава автоматизируемых функций (функциональная архитектура) и состава обеспечивающих подсистем (системная архитектура), оформление технического проекта ЭИС.
3. Реализация (рабочее проектирование, физическое проектирование, программирование). Разработка и настройка программ, наполнение баз данных, создание рабочих инструкций для персонала, оформление рабочего проекта.
4. Внедрение (тестирование, опытная эксплуатация). Комплексная отладка подсистем ЭИС, обучение персонала, поэтапное внедрение ЭИС в эксплуатацию по подразделениям экономического объекта, оформление акта о приемо-сдаточных испытаниях ЭИС.
5. Эксплуатация ЭИС (сопровождение, модернизация). Сбор рекламаций и статистики о функционировании ЭИС, исправление ошибок и недоработок, оформление требований к модернизации ЭИС и ее выполнение (повторение стадий 2 - 5).
Часто второй и третий этапы объединяют в одну стадию, называемую техно-рабочим проектированием или системным синтезом. На рис. 3.2 представлена обобщенная блок-схема жизненного цикла ЭИС. Рассмотрим основное содержание стадий и этапов на представленной схеме.
Системный анализ. К основным целям процесса относится следующее:
· сформулировать потребность в новой ЭИС (идентифицировать все недостатки существующей ЭИС);
· выбрать направление и определить экономическую целесообразность проектирования ЭИС.
Системный анализ ЭИС начинается с описания и анализа функционирования рассматриваемого экономического объекта (системы) в соответствии с требованиями (целями), которые предъявляются к нему (блок 1). В результате этого этапа выявляются основные недостатки существующей ЭИС, на основе которых формулируется потребность в совершенствовании системы управления этим объектом, и ставится задача определения экономически обоснованной необходимости автоматизации определенных функций управления (блок 2), то есть создается технико-экономическое обоснование проекта. После определения этой потребности возникает проблема выбора направлений совершенствования объекта на основе выбора программно-технических средств (блок 3). Результаты оформляются в виде технического задания на проект, в котором отражаются технические условия и требования к ЭИС, а также ограничения на ресурсы проектирования. Требования к ЭИС определяются в терминах функций, реализуемых системой, и предоставляемой ею информацией.
Системный синтез. Этот процесс предполагает:
· разработать функциональную архитектуру ЭИС, которая отражает структуру выполняемых функций;
· разработать системную архитектуру выбранного варианта ЭИС, то есть состав обеспечивающих подсистем;
· выполнить реализацию проекта.
Этап по составлению функциональной архитектуры (ФА), представляющей собой совокупность функциональных подсистем и связей между ними (блок 4), является наиболее ответственным с точки зрения качества всей последующей разработки.
Рис. 3.2. Обобщенная технологическая схема жизненного цикла ЭИС
Построение системной архитектуры (СА) на основе ФА (блок 5) предполагает выделение элементов и модулей информационного, технического, программного обеспечения и других обеспечивающих подсистем, определение связей по информации и управлению между выделенными элементами и разработку технологии обработки информации.
Этап конструирования (физического проектирования системы) включает разработку инструкций пользователям и программ, создание информационного обеспечения, включая наполнение баз данных (блок 6).
Внедрение разработанного проекта (блоки 7 - 10). Процесс предполагает выполнение следующих этапов: опытное внедрение и промышленное внедрение.
Этап опытного внедрения (блок 7) заключается в проверке работоспособности элементов и модулей проекта, устранении ошибок на уровне элементов и связей между ними.
Этап сдачи в промышленную эксплуатацию (блок 9) заключается в организации проверки проекта на уровне функций и контроля соответствия его требованиям, сформулированным на стадии системного анализа.
Эксплуатация и сопровождение проекта. На этой стадии (блоки 11 и 12) выполняются этапы: эксплуатация проекта системы и модернизация проекта ЭИС.
Рассмотренная схема жизненного цикла ЭИС условно включает в свой состав только основные процессы, реальный набор которых и их разбиение на этапы и технологические операции в значительной степени зависят от выбираемой технологии проектирования, о чем более подробно будет сказано в последующих разделах данной работы.
Важной чертой жизненного цикла ЭИС является его повторяемость «системный анализ - разработка - сопровождение - системный анализ». Это соответствует представлению об ЭИС как о развивающейся, динамической системе. При первом выполнении стадии «Разработка» создается проект ЭИС, а при повторном выполнении осуществляется модификация проекта для поддержания его в актуальном состоянии.
Другой характерной чертой жизненного цикла является наличие нескольких циклов внутри схемы:
· первый цикл, включающий блоки 1 - 12, - это цикл первичного проектирования ЭИС;
· второй цикл (блоки: 7 - 8, 6 - 7) - цикл, который возникает после опытного внедрения, в результате которого выясняются частные ошибки в элементах проекта, исправляемые начиная с 6-го блока;
· третий цикл (блоки: 9 - 10, 4 - 9) возникает после сдачи в промышленную эксплуатацию, когда выявляют ошибки в функциональной архитектуре системы, связанные с несоответствием проекта требованиям заказчика, по составу функциональных подсистем, составу задач и связям между ними;
· четвертый цикл (блоки: 12, 5 -12) возникает в том случае, когда требуется модификация системной архитектуры в связи с необходимостью адаптации проекта к новым условиям функционирования системы;
· пятый цикл (блоки: 12, 1 - 12 ) возникает, если проект системы совершенно не соответствует требованиям, предъявляемым к организационно-экономической системе ввиду того, что осуществляется моральное его старение и требуется полное перепроектирование системы.
Чтобы исключить пятый цикл и максимально уменьшить необходимость выполнения третьего и четвертого циклов, необходимо выполнять проектирование ЭИС на всех этапах первого, основного цикла разработки ЭИС в соответствии с требованиями:
· разработка ЭИС должна быть выполнена в строгом соответствии со сформулированными требованиями к создаваемой системе;
· требования к ЭИС должны адекватно соответствовать целям и задачам эффективного функционирования экономического объекта;
· созданная ЭИС должна соответствовать сформулированным требованиям на момент окончания внедрения, а не на момент начала разработки;
· внедренная ЭИС должна развиваться и адаптироваться в соответствии с постоянно изменяющимися требованиями к ЭИС.
С точки зрения реализации перечисленных аспектов в технологиях проектирования ЭИС модели жизненного цикла, определяющие порядок выполнения стадий и этапов, претерпевали существенные изменения. Среди известных моделей жизненного Цикла можно выделить следующие модели:
· каскадная модель (до 70-х годов) - последовательный переход на следующий этап после завершения предыдущего;
· итерационная модель (70 - 80-е годы) - с итерационными возвратами на предыдущие этапы после выполнения очередного этапа;
· спиральная модель (80 - 90-е годы) - прототипная модель, предполагающая постепенное расширение прототипа ЭИС.
Каскадная модель. Для этой модели жизненного цикла характерна автоматизация отдельных несвязанных задач, не требующая выполнения информационной интеграции и совместимости, программного, технического и организационного сопряжения. В рамках решения отдельных задач каскадная модель жизненного цикла по срокам разработки и надежности оправдывала себя. Применение каскадной модели жизненного цикла к большим и сложным проектам вследствие большой длительности процесса проектирования и изменчивости требований за это время приводит к их практической нереализуемости.
Итерационная модель. Создание комплексных ЭИС предполагает проведение увязки проектных решений, получаемых при реализации отдельных задач. Подход к проектированию «снизу-вверх» обусловливает необходимость таких итерационных возвратов, когда проектные решения по отдельным задачам комплектуются в общие системные решения и при этом возникает потребность в пересмотре ранее сформулированных требований. Как правило, вследствие большого числа итераций возникают рассогласования в выполненных проектных решениях и документации. Запутанность функциональной и системной архитектуры созданной ЭИС, трудность в использовании проектной документации вызывают на стадиях внедрения и эксплуатации сразу необходимость перепроектирования всей системы. Длительный жизненный цикл разработки ЭИС заканчивается этапом внедрения, за которым начинается жизненный цикл создания новой ЭИС.
Спиральная модель. Используется подход к организации проектирования ЭИС «сверху-вниз», когда сначала определяется состав функциональных подсистем, а затем постановка отдельных задач. Соответственно сначала разрабатываются такие общесистемные вопросы, как организация интегрированной базы данных, технология сбора, передачи и накопления информации, а затем технология решения конкретных задач. В рамках комплексов задач программирование осуществляется по направлению от головных программных модулей к исполняющим отдельные функции модулям. При этом на первый план выходят вопросы взаимодействия интерфейсов программных модулей между собой и с базой данных, а на второй план - реализация алгоритмов.
В основе спиральной модели жизненного цикла лежит применение прототипной технологии или RAD-технологии (rapid application development - технологии быстрой разработки приложений) - J. Martin. Rapid Application Development. New York: Macmillan, 1991. Согласно этой технологии ЭИС разрабатывается путем расширения программных прототипов, повторяя путь от детализации требований к детализации программного кода. Естественно, что при прототипной технологии сокращается число итераций и меньше возникает ошибок и несоответствий, которые необходимо исправлять на последующих итерациях, а само проектирование ЭИС осуществляется более быстрыми темпами, упрощается создание проектной документации. Для более точного соответствия проектной документации разработанной ЭИС все большее значение придается ведению общесистемного репозитория и использованию CASE-технологий.
Жизненный цикл при использовании RAD-технологии предполагает активное участие на всех этапах разработки конечных пользователей будущей системы и включает четыре основные стадии информационного инжиниринга:
· анализ и планирование информационной стратегии. Пользователи вместе со специалистами-разработчиками участвуют в идентификации проблемной области;
· проектирование. Пользователи принимают участие в техническом проектировании под руководством специалистов-разработчиков;
· конструирование. Специалисты-разработчики проектируют рабочую версию ЭИС с использованием языков 4-го поколения;
· внедрение. Специалисты-разработчики обучают пользователей работе в среде новой ЭИС.