1.Стадии жизненного цикла ИС. Модели жизненного цикла ИС
Совокупность стадий и этапов, которые проходит ИС в своем развитии от момента принятия решения о создании системы до момента прекращения функционирования системы, называется жизненным циклом ИС.
Суть содержания жизненного цикла разработки ИС в различных подходах одинакова и сводится к выполнению следующих стадий: 1. Планирование и анализ требований (предпроектная стадия) – системный анализ. Исследование и анализ существующей информационной системы, определение требований к создаваемой ИС, оформление технико-экономического обоснования (ТЭО) и технического задания (ТЗ) на разработку ИС.
2. Проектирование (техническое проектирование, логическое проектирование). Разработка в соответствии со сформулированными требованиями состава автоматизируемых функций (функциональная архитектура) и состава обеспечивающих подсистем (системная архитектура), оформление технического проекта ИС.
3. Реализация (рабочее проектирование, физическое проектирование, программирование). Разработка и настройка программ, наполнение баз данных, создание рабочих инструкций для персонала, оформление рабочего проекта.
4. Внедрение (тестирование, опытная эксплуатация). Комплексная отладка подсистем ИС, обучение персонала, поэтапное внедрение ИС в эксплуатацию по подразделениям экономического объекта, оформление акта о приемо-сдаточных испытаниях ИС.
5. Эксплуатация ИС (сопровождение, модернизация). Сбор рекламаций и статистики о функционировании ИС, исправление ошибок и недоработок, оформление требований к модернизации ИС и ее выполнение (повторение стадий 2-5).
Часто второй и третий этапы объединяют в одну стадию, называемую техно - рабочим проектированием или системным синтезом.
Рассмотрим основное содержание стадий и этапов.
Системный анализ. К основным целям процесса относится следующее: •сформулировать потребность в новой ИС (идентифицировать все недостатки существующей ИС); •выбрать направление и определить экономическую целесообразность проектирования ИС.
Системный анализ ИС начинается с описания и анализа функционирования рассматриваемого объекта (системы) в соответствии с требованиями (целями), которые предъявляются к нему. В результате этого этапа выявляются основные недостатки существующей ИС, на основе которых формулируется потребность в совершенствовании системы управления этим объектом, и ставится задача определения экономически обоснованной необходимости автоматизации определенных функций управления, то есть создается технико-экономическое обоснование проекта. После определения этой потребности возникает проблема выбора направлений совершенствования объекта на основе выбора программно-технических средств. Результаты оформляются в виде технического задания на проект, в котором отражаются технические условия и требования к ИС, а также ограничения на ресурсы проектирования.
Системный синтез. Этот процесс предполагает:
•разработку функциональной архитектуры ИС, которая отражает структуру выполняемых функций; •разработку системной архитектуры выбранного варианта ИС, то есть состав обеспечивающих подсистем; •выполнение реализацию проекта.
Разработка функциональная архитектура (ФА), представляющей собой совокупность функциональных подсистем и связей между ними, является наиболее ответственным этапом с точки зрения качества всей последующей разработки.
Построение системной архитектуры (СА) на основе ФА предполагает выделение элементов и модулей информационного, технического, программного обеспечения и других обеспечивающих подсистем, определение связей по информации и управлению между выделенными элементами и разработку технологии обработки информации.
Этап конструирования (физического проектирования системы) включает разработку инструкций пользователям и программ, создание информационного обеспечения, включая наполнение баз данных.
Внедрение разработанного проекта. Процесс предполагает выполнение следующих этапов: опытное внедрение и промышленное внедрение.
Этап опытного внедрения заключается в проверке работоспособности элементов и модулей проекта, устранении ошибок на уровне элементов и связей между ними. Этап сдачи в промышленную эксплуатацию заключается в организации проверки проекта на уровне функций и контроля соответствия его требованиям, сформулированным на стадии системного анализа.
Эксплуатация и сопровождение проекта. На этой стадии выполняются этапы: эксплуатация проекта системы и модернизация проекта ИС.
Важной чертой жизненного цикла ИС является его повторяемость «системный анализ – разработка – сопровождение – системный анализ». Это соответствует представлению об ИС как о развивающейся, динамической системе. При первом выполнении стадии «Разработка» создается проект ИС, а при повторном выполнении осуществляется модификация проекта для поддержания его в актуальном состоянии.
Другой характерной чертой жизненного цикла является наличие нескольких циклов внутри схемы: •первый цикл – это цикл первичного проектирования ИС; •второй цикл – цикл, который возникает после опытного внедрения, в результате которого выясняются и исправляются частные ошибки в элементах проекта; •третий цикл возникает после сдачи в промышленную эксплуатацию, когда выявляют ошибки в функциональной архитектуре системы, связанные с несоответствием проекта требованиям заказчика, по составу функциональных подсистем, составу задач и связям между ними; •четвертый цикл возникает в том случае, когда требуется модификация системной архитектуры в связи с необходимостью адаптации проекта к новым условиям функционирования системы; •пятый цикл возникает, если проект системы совершенно не соответствует требованиям, предъявляемым к организационно - экономической системе ввиду того, что осуществляется моральное его старение и требуется полное перепроектирование системы.
Среди известных моделей жизненного цикла можно выделить следующие модели: •каскадная модель (до 70-х годов) – последовательный переход на следующий этап после завершения предыдущего; •итерационная модель (70 - 80-е годы) – с итерационными возвратами на предыдущие этапы после выполнения очередного этапа; •спиральная модель (80 - 90-е годы) – прототипная модель, предполагающая постепенное расширение прототипа ИС.
Каскадная модель. Для этой модели жизненного цикла характерна автоматизация отдельных несвязанных задач, не требующая выполнения информационной интеграции и совместимости, программного, технического и организационного сопряжения. В рамках решения отдельных задач каскадная модель жизненного цикла по срокам разработки и надежности оправдывала себя. Применение каскадной модели жизненного цикла к сложным проектам вследствие большой длительности процесса проектирования и изменчивости требований за это время практической нереализуемо.
Итерационная модель. Создание комплексных ИС предполагает проведение увязки проектных решений, получаемых при реализации отдельных задач. Подход к проектированию «снизу - вверх» обусловливает необходимость таких итерационных возвратов, когда проектные решения по отдельным задачам комплектуются в общие системные решения, и при этом возникает потребность в пересмотре ранее сформулированных требований. Как правило, вследствие большого числа итераций возникают рассогласования в выполненных проектных решениях и документации.
Спиральная модель. Используется подход к организации проектирования ИС «сверху - вниз», когда сначала определяется состав функциональных подсистем, а затем постановка отдельных задач. Соответственно сначала разрабатываются такие общесистемные вопросы, как организация интегрированной базы данных, технология сбора, передачи и накопления информации, а затем технология решения конкретных задач. В рамках комплексов задач программирование осуществляется по направлению от головных программных модулей к исполняющим отдельные функции модулям. При этом на первый план выходят вопросы взаимодействия интерфейсов программных модулей между собой и с базой данных, а на второй план – реализация алгоритмов.
В основе спиральной модели жизненного цикла лежит применение прототипной технологии или RAD-технологии (Rapid Application Development – технологии быстрой разработки приложений). Согласно этой технологии ИС разрабатывается путем расширения программных прототипов, повторяя путь от детализации требований к детализации программного кода. При прототипной технологии сокращается число итераций и меньше возникает ошибок и несоответствий, а само проектирование осуществляется более быстрыми темпами, упрощается создание проектной документации.