Потребность в создании ИС может обусловливаться либо необходимостью автоматизации или модернизации существующих информационных процессов, либо необходимостью коренной реорганизации в деятельности предприятия (проведении бизнес-реинжиниринга). Потребности создания ИС указывают: 1) для достижения каких именно целей необходимо разработать систему; 2) к какому моменту времени целесообразно осуществить разработку; 3) какие затраты необходимо осуществить для проектирования системы.
Проектирование ИС – трудоемкий, длительный и динамический процесс. Технологии проектирования, применяемые в настоящее время, предполагают поэтапную разработку системы. Этапы по общности целей могут объединяться в стадии. Совокупность стадий и этапов, которые проходит ИС в своем развитии от момента принятия решения о создании системы до момента прекращения функционирования системы, называется жизненным циклом ИС.
Суть содержания жизненного цикла разработки ИС в различных подходах одинакова и сводится к выполнению следующих стадий:
1) планирование и анализ требований(предпроектная стадия) – системный анализ. Исследование и анализ существующей информационной системы, определение требований к создаваемой ИС, оформление технико-экономического обоснования (ТЭО) и технического задания (ТЗ) на разработку;
2) проектирование(техническое проектирование, логическое проектирование). Разработка в соответствии со сформулированными требованиями состава автоматизируемых функций (функциональная архитектура) и состава обеспечивающих подсистем (системная архитектура), оформление технического проекта ИС;
3) реализация(рабочее проектирование, физическое проектирование, программирование). Разработка и настройка программ, наполнение баз данных, создание рабочих инструкций для персонала, оформление рабочего проекта;
4) внедрение(тестирование, опытная эксплуатация). Комплексная отладка подсистем ИС, обучение персонала, поэтапное внедрение ИС в эксплуатацию по подразделениям экономического объекта, оформление акта о приемо-сдаточных испытаниях ИС;
5) эксплуатация ИС(сопровождение, модернизация). Сбор рекламаций и статистики о функционировании ИС, исправление ошибок и недоработок, оформление требований к модернизации ИС и ее выполнение (повторение стадий 2–5).
Часто второй и третий этапы объединяют в одну стадию, называемую техно-рабочим проектированием, или системным синтезом. На рисунке 2 представлена обобщенная блок-схема жизненного цикла ИС. Рассмотрим основное содержание стадий и этапов на представленной схеме.
Рис. 2. Технологическая схема обобщенного жизненного цикла
Системный анализ. Основные цели процесса:
– сформулировать потребность в новой ИС (идентифицировать все недостатки существующей ИС);
– выбрать направление и определить экономическую целесообразность проектирования ИС.
Системный анализ ИС начинается с описания и анализа функционирования рассматриваемого экономического объекта (системы) в соответствии с требованиями (целями), которые предъявляются к нему (блок 1). В результате этого этапа выявляются основные недостатки существующей ИС, на основе которых формулируется потребность в совершенствовании системы управления этим объектом, и ставится задача определения экономически обоснованной необходимости автоматизации определенных функций управления (блок 2), то есть создается технико-экономическое обоснование проекта. После определения этой потребности возникает проблема выбора направлений совершенствования объекта на основе выбора программно-технических средств (блок 3). Результаты оформляются в виде технического задания на проект, в котором отражаются технические условия и требования к ИС, а также ограничения на ресурсы проектирования. Требования к ИС определяются в терминах функций, реализуемых системой, и предоставляемой ею информацией.
Системный синтез. Этот процесс предполагает:
– разработать функциональную архитектуру ИС, которая отражает структуру выполняемых функций;
– разработать системную архитектуру выбранного варианта АИС, то есть состав обеспечивающих подсистем;
– выполнить реализацию проекта.
Этап по составлению функциональной архитектуры (ФА), представляющей собой совокупность функциональных подсистем и связей между ними (блок 4), является наиболее ответственным с точки зрения качества всей последующей разработки.
Построение системной архитектуры (СА) на основе ФА (блок 5) предполагает выделение элементов и модулей информационного, технического, программного обеспечения и других обеспечивающих подсистем, определение связей по информации и управлению между выделенными элементами и разработку технологии обработки информации.
Этап конструирования (физического проектирования системы) включает разработку инструкций для пользователей и программ, создание информационного обеспечения, включая наполнение БД (блок 6).
Внедрение разработанного проекта (блоки 7–10). Процесс предполагает выполнение следующих этапов: опытное внедрение и промышленное внедрение.
Этап опытного внедрения (блок 7) заключается в проверке работоспособности элементов и модулей проекта, устранении ошибок на уровне элементов и связей между ними.
Этап сдачи в промышленную эксплуатацию (блок 9) заключается в организации проверки проекта на уровне функций и контроля соответствия его требованиям, сформулированным на стадии системного анализа.
Эксплуатация и сопровождение проекта. На этой стадии (блоки 11 и 12) выполняются этапы: эксплуатация проекта системы и модернизация проекта ИС.
Рассмотренная схема жизненного цикла ИС условно включает в свой состав только основные процессы, реальный набор которых и их разбиение на этапы и технологические операции в значительной степени зависят от выбираемой технологии проектирования, о чем более подробно будет сказано в последующих разделах данной работы.
Важной чертой жизненного цикла ИС является его повторяемость – «системный анализ – разработка – сопровождение – системный анализ». Это соответствует представлению об ИС как о развивающейся, динамической системе. При первом выполнении стадии «Разработка» создается проект ИС, а при повторном выполнении осуществляется модификация проекта для поддержания его в актуальном состоянии.
Другой характерной чертой жизненного цикла является наличие нескольких циклов внутри схемы:
– первый цикл, включающий блоки 1–12, – это цикл первичного проектирования АИС;
– второй цикл (блоки 6–7, 7–8) – цикл, который возникает после опытного внедрения, в результате которого выясняются частные ошибки в элементах проекта, исправляемые начиная с 6-го блока;
– третий цикл (блоки 4–9, 9–10) возникает после сдачи в промышленную эксплуатацию, когда выявляют ошибки в функциональной архитектуре системы, связанные с несоответствием проекта требованиям заказчика, по составу функциональных подсистем, составу задач и связям между ними;
– четвертый цикл (блоки 12, 5–12) возникает в том случае, когда требуется модификация системной архитектуры в связи с необходимостью адаптации проекта к новым условиям функционирования системы;
– пятый цикл (блоки 12, 1–12) возникает, если проект системы совершенно не соответствует требованиям, предъявляемым к организационно-экономической системе, ввиду того что осуществляется моральное его старение и требуется полное перепроектирование системы.
Чтобы исключить пятый цикл и максимально уменьшить необходимость выполнения третьего и четвертого циклов, необходимо выполнять проектирование ИС на всех этапах первого, основного цикла разработки ИС в соответствии с требованиями:
– разработка ИС должна быть выполнена в строгом соответствии со сформулированными требованиями к создаваемой системе;
– требования к ИС должны адекватно соответствовать целям и задачам эффективного функционирования экономического объекта;
– созданная ИС должна соответствовать сформулированным требованиям на момент окончания внедрения, а не на момент начала разработки;
– внедренная ИС должна развиваться и адаптироваться в соответствии с постоянно изменяющимися требованиями к АИС. С точки зрения реализации перечисленных аспектов в технологиях проектирования АИС модели жизненного цикла, определяющие порядок выполнения стадий и этапов, претерпевали существенные изменения. Среди известных моделей жизненного цикла можно выделить следующие модели:
– каскадная модель (до 70-х годов) – последовательный переход на следующий этап после завершения предыдущего;
– итерационная модель (70–80-е годы) – с итерационными возвратами на предыдущие этапы после выполнения очередного этапа;
– спиральная модель (80–90-е годы);
– прототипная модель, предполагающая постепенное расширение прототипа АИС.
Каскадная модель. Для этой модели жизненного цикла характерна автоматизация отдельных несвязанных задач, не требующая выполнения информационной интеграции и совместимости, программного, технического и организационного сопряжения. В рамках решения отдельных задач каскадная модель жизненного цикла по срокам разработки и надежности оправдывала себя. Применение каскадной модели жизненного цикла к большим и сложным проектам вследствие большой длительности процесса проектирования и изменчивости требований за это время приводит к их практической нереализуемости.
Итерационная модель. Создание комплексных ИС предполагает проведение увязки проектных решений, получаемых при реализации отдельных задач. Подход к проектированию «снизу-вверх»обусловливает необходимость таких итерационных возвратов, когда проектные решения по отдельным задачам комплектуются в общие системные решения и при этом возникает потребность в пересмотре ранее сформулированных требований. Как правило, вследствие большого числа итераций возникают рассогласования в выполненных проектных решениях и документации. Запутанность функциональной и системной архитектуры созданной ИС, трудность в использовании проектной документации вызывают на стадиях внедрения и эксплуатации сразу необходимость перепроектирования всей системы. Длительный жизненный цикл разработки ИС заканчивается этапом внедрения, за которым начинается жизненный цикл создания новой АИС.
Спиральная модель. Используется подход к организации проектирования ИС «сверху-вниз », когда сначала определяется состав функциональных подсистем, а затем осуществляется постановка отдельных задач. Соответственно, сначала разрабатываются такие общесистемные вопросы, как организация интегрированной БД, технология сбора, передачи и накопления информации, а затем технология решения конкретных задач. В рамках комплексов задач программирование осуществляется по направлению от головных программных модулей к исполняющим отдельные функции модулям. При этом на первый план выходят вопросы взаимодействия интерфейсов программных модулей между собой и с БД, а на второй план – реализация алгоритмов.
В основе спиральной модели жизненного цикла лежит применение прототипной технологии, или RAD-технологии (rapid application development – технологии быстрой разработки приложений) [1]. Согласно этой технологии ИС разрабатывается путем расширения программных прототипов, повторяя путь от детализации требований к детализации программного кода. Естественно, что при прототипной технологии сокращается число итераций и возникает меньше ошибок и несоответствий, которые необходимо исправлять на последующих итерациях, а само проектирование ИС осуществляется более быстрыми темпами, упрощается создание проектной документации. Для более точного соответствия проектной документации разработанной ИС все большее значение придается ведению общесистемного репозитория и использованию CASE-технологий.
Жизненный цикл при использовании RAD-технологии предполагает активное участие на всех этапах разработки конечных пользователей будущей системы и включает четыре основные стадии информационного инжиниринга:
– анализ и планирование информационной стратегии. Пользователи вместе со специалистами-разработчиками участвуют в идентификации проблемной области;
– проектирование. Пользователи принимают участие в техническом проектировании под руководством специалистов-разработчиков;
– конструирование. Специалисты-разработчики проектируют рабочую версию ИС с использованием языков 4-го поколения;
– внедрение. Специалисты-разработчики обучают пользователей работе в среде новой ИС.