Модели жизненного цикла КИС

К настоящему времени наибольшее распространение получили следующие две основные модели жизненного цикла:

· каскадная модель (70-85 г.г.);

· спиральная модель (86-90 г.г.).

Каскадная модель.Для этой модели жизненного цикла харак­терна автоматизация отдельных несвязанных задач, не требую­щая выполнения информационной интеграции и совместимости, программного, технического и организационного сопряжения (рис.1). Модель предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе. В рамках решения отдельных задач каскадная модель жизненного цикла по срокам разработки и надежности оправдывала себя. Применение каскадной модели жизненного цикла к большим и сложным проектам вследствие большой длительности процесса проектирования и изменчивости требований за это время приво­дит к их практической не реализуемости.

 

 

Рис.1. Каскадная модель разработки КИС

 

Развитием и естественно усложнением каскадной модели явилась так называемая поэтапная модель с промежуточным контролем – итерационная модель разработки с циклами обратной связи между этапами. Межэтапные корректировки позволяют учитывать реально существующее взаимовлияние результатов разработки на различных этапах; время жизни каждого из этапов растягивается на весь период разработки.

Достоинства применения каскадного подхода:

на каждом этапе формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности;

выполняемые в логической последовательности этапы работ позволяют планировать сроки завершения всех работ и соответствующие затраты.

Основным недостатком этого подхода является то, что реальный процесс создания системы никогда полностью не укладывается в такую жесткую схему, постоянно возникает потребность в возврате к предыдущим этапам и уточнении или пересмотре ранее принятых решений. В результате реальный процесс создания ИС оказывается соответствующим поэтапной модели с промежуточным контролем. Однако и эта модель не позволяет оперативно учитывать возникающие изменения и уточнения требований к системе.

Несмотря на свои недостатки, каскадная модель сохраняет свою популярность. Возможно, основные причины этому следующие:

1. Привычка – многие ИТ- специалисты получали образование в то время, когда изучалась только каскадная модель, поэтому она используется ими и в наши дни.

2. Иллюзия снижения рисков участников проекта (заказчика и исполнителя). Каскадная модель предполагает разработку законченных продуктов на каждом этапе: технического задания, технического проекта, программного продукта и пользовательской документации. Разработанная документация позволяет не только определить требования к продукту следующего этапа, но и определить обязанности сторон, объем работ и сроки, при этом окончательная оценка сроков и стоимости проекта производится на начальных этапах, после завершения обследования. Очевидно, что если требования к информационной системе меняются в ходе реализации проекта, а качество документов оказывается невысоким (требования неполны и/или противоречивы), то в действительности использование каскадной модели создает лишь иллюзию определенности и на деле увеличивает риски, уменьшая лишь ответственность участников проекта. При формальном подходе менеджер проекта реализует только те требования, которые содержатся в спецификации, опирается на документ, а не на реальные потребности бизнеса.

Спиральная модель.Используется подход к организации про­ектирования КИС «сверху - вниз», когда сначала определяется со­став функциональных подсистем, а затем постановка отдельных задач. Соответственно сначала разрабатываются такие общесис­темные вопросы, как организация интегрированной базы данных, технология сбора, передачи и накопления информации, а затем технология решения конкретных задач. В рамках комплексов за­дач программирование осуществляется по направлению от головных программных модулей к исполняющим отдельные функции модулям. При этом на первый план выходят вопросы взаимодей­ствия интерфейсов программных модулей между собой и с базой данных, а на второй план - реализация алгоритмов.

В основе спиральной модели жизненного цикла лежит при­менение типовой технологии или RAD-технологии (Rapid Application Development - технологии быстрой разработки приложений). Согласно этой технологии КИС разрабатывает­ся путем расширения программных прототипов, повторяя путь от детализации требований к детализации программного кода. Естественно, что при типовой технологии сокращается чис­ло итераций и меньше возникает ошибок и несоответствий, ко­торые необходимо исправлять на последующих итерациях, а само проектирование КИС осуществляется более быстрыми темпами, упрощается создание проектной документации. Для более точ­ного соответствия проектной документации разработанной КИС все большее значение придается ведению общесистемного репозитория и использованию CASE-технологий (Computer Aided Software Engineering). Под термином CASE понимаются программные средства, поддерживающие процессы создания и сопровождения КИС , включая анализ и формулировку требований, проектирование прикладного программного обеспечения и баз данных, генерацию кода, тестирование, документирование и управление проектом.

Жизненный цикл при использовании RAD-технологии пред­полагает активное участие на всех этапах разработки конечных пользователей будущей системы и включает четыре стадии информационного инжиниринга (рис.2):

анализ и планирование информационной стратегии. Пользователи вместе со специалистами-разработчиками участвуют в идентификации проблемной области;

проектирование. Пользователи принимают участие в техническом проектировании под руководством специалистов-разработчиков;

конструирование. Специалисты-разработчики проектируют рабочую версию КИС с использованием языков 4-го поколения;

внедрение. Специалисты-разработчики обучают пользователей работе в среде новой КИС.

 

Рис 2. Спиральная модель ЖЦ

Каждый виток спирали соответствует созданию работоспособного фрагмента или версии системы. Это позволяет уточнить требования, цели и характеристики проекта, определить качество разработки, спланировать работы следующего витка спирали. Таким образом, углубляются и последовательно конкретизируются детали проекта и, в результате, выбирается обоснованный вариант, который удовлетворяет действительным требованиям заказчика и доводится до реализации.

Итеративная разработка отражает объективно существующий спиральный цикл создания сложных систем. Она позволяет переходить на следующий этап, не дожидаясь полного завершения работы на текущем этапе и решить главную задачу – как можно быстрее показать пользователям системы работоспособный продукт, тем самым, активизируя процесс уточнения и дополнения требований.

Основная проблема спирального цикла – определение момента перехода на следующий этап. Для ее решения вводятся временные ограничения на каждый из этапов жизненного цикла, и переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. Планирование производится на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков.

В некоторых областях спиральная модель не может применяться, поскольку невозможно использование (тестирование) продукта, обладающего неполной функциональностью (например, военные разработки, атомная энергетика и т.д.). Поэтапное итерационное внедрение ИС для бизнеса возможно, но сопряжено с организационными сложностями (перенос данных, интеграция систем, изменение бизнес-процессов, учетной политики, обучение пользователей). Трудозатраты при поэтапном итерационном внедрении оказываются значительно выше, а управление проектом требует настоящего искусства. Предвидя указанные сложности, заказчики систем выбирают каскадную модель, чтобы "внедрять систему один раз".

3. Каноническое проектирование КИС

Организация канонического проектирования КИС ориентирована на использование главным образом каскадной модели жизненного цикла. Каноническое проектирование КИСотражает особенности руч­ной технологии индивидуального (оригинального) проектирова­ния, осуществляемого на уровне исполнителей без использова­ния каких-либо инструментальных средств, позволяющих интег­рировать выполнение элементарных операций. Как правило, каноническое проектирование применяется для небольших ло­кальных КИС.

Создание средних и особенно сложных КИС требует индустриального подхода к процессу проектирования. В основе такого подхода лежат инженерные методы решения конкретных задач с привлечением последних достижений информационных RAD и CASE - технологий.

В зависимости от сложности объекта автоматизации и набора задач, требующих решения при создании конкретной КИС, стадии и этапы работ могут иметь различную трудоемкость. Допускается объединять последовательные этапы и даже исключать некоторые из них на любой стадии проекта. Допускается также начинать выполнение работ следующей стадии до окончания предыдущей.

3.1. Этапы проектирования КИС [4]

Стадии и этапы создания КИС, выполняемые организациями-участниками, прописываются в договорах и технических заданиях на выполнение работ.

Можно выделить следующие стадии создания КИС.

Стадия 1. Формирование требований:

Ø обследование объекта и обоснование необходимости создания КИС;

Ø формирование требований пользователей к КИС;

Ø оформление отчета о выполненной работе и тактико-технического задания на разработку.

Стадия 2. Разработка концепции:

Ø изучение объекта автоматизации;

Ø проведение необходимых научно-исследовательских работ;

Ø разработка вариантов концепции КИС, удовлетворяющих требованиям пользователей;

Ø оформление отчета и утверждение концепции.

Стадия 3. Техническое задание:

Ø разработка и утверждение технического задания на создание КИС.

Стадия 4. Эскизный проект:

Ø разработка предварительных проектных решений по системе и ее частям;

Ø разработка эскизной документации на КИС и ее части.

Стадия 5. Технический проект:

Ø разработка проектных решений по системе и ее частям;

Ø разработка документации на КИС и ее части;

Ø разработка и оформление документации на поставку комплектующих изделий;

Ø разработка заданий на проектирование в смежных частях проекта.

Стадия 6. Рабочая документация:

Ø разработка рабочей документации на КИС и ее части;

Ø разработка и адаптация программ.

Стадия 7. Ввод в действие:

Ø подготовка объекта автоматизации;

Ø подготовка персонала;

Ø комплектация КИС поставляемыми изделиями (программными и техническими средствами, программно-техническими комплексами, информационными изделиями);

Ø пусконаладочные работы;

Ø проведение предварительных испытаний;

Ø проведение опытной эксплуатации;

Ø проведение приемочных испытаний.

Стадия 8. Сопровождение:

Ø выполнение работ в соответствии с гарантийными обязательствами;

Ø послегарантийное обслуживание.

 

3.2. Формирование требований к КИС. Проблемы взаимодействия потребителя и проектировщика КИС. Разработка концепции КИС

 

Формирование требований к КИС начинается с обследования организации. Обследование - это изучение и диагностический анализ организационной структуры предприятия, его деятельности и существующей системы обработки информации. Материалы, полученные в результате обследования, используются для:

· обоснования разработки и поэтапного внедрения систем;

· составления технического задания на разработку систем;

· разработки технического и рабочего проектов систем.

На этапе обследования целесообразно выделить две составляющие: определение стратегии внедрения КИС и детальный анализ деятельности организации.

Основная задача первого этапа обследования - оценка реального объема проекта, его целей и задач на основе выявленных функций и информационных элементов автоматизируемого объекта высокого уровня [4]. Эти задачи могут быть реализованы или заказчиком КИС самостоятельно, или с привлечением консалтинговых организаций. Этап предполагает тесное взаимодействие с основными потенциальными пользователями системы и экспертами бизнеса. Основная задача взаимодействия - получить полное и однозначное понимание требований заказчика. Как правило, нужная информация может быть получена в результате интервью, бесед или семинаров с руководством, экспертами и пользователями.

По завершении этой стадии обследования появляется возможность определить вероятные технические подходы к созданию системы и оценить затраты на ее реализацию (затраты на аппаратное обеспечение, закупаемое программное обеспечение и разработку нового программного обеспечения).

Результатом этапа определения стратегии является документ (технико-экономическое обоснование проекта), где четко сформулировано, что получит заказчик, если согласится финансировать проект, когда он получит готовый продукт (график выполнения работ) и сколько это будет стоить (для крупных проектов должен быть составлен график финансирования на разных этапах работ). В документе желательно отразить не только затраты, но и выгоду проекта, например время окупаемости проекта, ожидаемый экономический эффект (если его удается оценить).

Ориентировочное содержание этого документа:

  • ограничения, риски, критические факторы, которые могут повлиять на успешность проекта;
  • совокупность условий, при которых предполагается эксплуатировать будущую систему: архитектура системы, аппаратные и программные ресурсы, условия функционирования, обслуживающий персонал и пользователи системы;
  • сроки завершения отдельных этапов, форма приемки/сдачи работ, привлекаемые ресурсы, меры по защите информации;
  • описание выполняемых системой функций;
  • возможности развития системы;
  • информационные объекты системы;
  • интерфейсы и распределение функций между человеком и системой;
  • требования к программным и информационным компонентам ПО, требования к СУБД;
  • что не будет реализовано в рамках проекта.

На этапе детального анализа деятельности организации изучаются задачи, обеспечивающие реализацию функций управления, организационная структура, штаты и содержание работ по управлению предприятием, а также характер подчиненности вышестоящим органам управления. На этом этапе должны быть выявлены:

  • инструктивно-методические и директивные материалы, на основании которых определяются состав подсистем и перечень задач;
  • возможности применения новых методов решения задач.

Аналитики собирают и фиксируют информацию в двух взаимосвязанных формах:

  • функции - информация о событиях и процессах, которые происходят в бизнесе;
  • сущности - информация об объектах, имеющих значение для организации и о которых что-то известно.

При изучении каждой функциональной задачи управления определяются:

  • наименование задачи; сроки и периодичность ее решения;
  • степень формализации задачи;
  • источники информации, необходимые для решения задачи;
  • показатели и их количественные характеристики;
  • порядок корректировки информации;
  • действующие алгоритмы расчета показателей и возможные методы контроля;
  • действующие средства сбора, передачи и обработки информации;
  • действующие средства связи;
  • принятая точность решения задачи;
  • трудоемкость решения задачи;
  • действующие формы представления исходных данных и результатов их обработки в виде документов;
  • потребители результатной информации по задаче.

Одной из наиболее трудоемких, хотя и хорошо формализуемых задач этого этапа является описание документооборота организации. При обследовании документооборота составляется схема маршрута движения документов, которая должна отразить:

  • количество документов;
  • место формирования показателей документа;
  • взаимосвязь документов при их формировании;
  • маршрут и длительность движения документа;
  • место использования и хранения данного документа;
  • внутренние и внешние информационные связи;
  • объем документа в знаках.

По результатам обследования устанавливается перечень задач управления, решение которых целесообразно автоматизировать, и очередность их разработки.

На этапе обследования следует классифицировать планируемые функции системы по степени важности. Один из возможных форматов представления такой классификации – MuSCoW [4]. Эта аббревиатура расшифровывается так: Must have - необходимые функции; Should have - желательные функции; Could have - возможные функции; Won't have - отсутствующие функции. Функции первой категории обеспечивают критичные для успешной работы системы возможности. Реализация функций второй и третьей категорий ограничивается временными и финансовыми рамками: разрабатывается то, что необходимо, а также максимально возможное в порядке приоритета число функций второй и третьей категорий. Последняя категория функций особенно важна, поскольку необходимо четко представлять границы проекта и набор функций, которые будут отсутствовать в системе.

На этапе анализа необходимо привлекать к работе группы тестирования для решения следующих задач:

  • получения сравнительных характеристик предполагаемых к использованию аппаратных платформ, операционных систем, СУБД, иного окружения;
  • разработки плана работ по обеспечению надежности информационной системы и ее тестирования.

Применение тестирования на ранних этапах разработки является целесообразным для любых проектов. Если проектное решение оказалось неудачным и это обнаружено слишком поздно (на этапе разработки или, что еще хуже, на этапе внедрения в эксплуатацию), то исправление ошибки проектирования обходится очень дорого. Чем раньше группы тестирования выявляют ошибки в информационной системе, тем ниже стоимость сопровождения системы. Время на тестирование системы и на исправление обнаруженных ошибок следует предусматривать не только на этапе разработки, но и на этапе проектирования.

Для автоматизации тестирования следует использовать системы отслеживания ошибок (bug tracking). Это позволяет иметь единое хранилище ошибок, отслеживать их повторное появление, контролировать скорость и эффективность исправления ошибок, видеть наиболее нестабильные компоненты системы, а также поддерживать связь между группой разработчиков и группой тестирования (уведомления об изменениях по e-mail и т.п.). Чем больше проект, тем сильнее потребность в bug tracking.

Результаты обследования представляют объективную основу для формирования технического задания на информационную систему.

 

3.3. Техническое задание

Техническое задание- это документ, определяющий цели, требования и основные исходные данные, необходимые для разработки автоматизированной системы управления.

При разработке технического задания необходимо решить следующие задачи:

  • установить общую цель создания КИС, определить состав подсистем и функциональных задач;
  • разработать и обосновать требования, предъявляемые к подсистемам;
  • разработать и обосновать требования, предъявляемые к информационной базе, математическому и программному обеспечению, комплексу технических средств (включая средства связи и передачи данных);
  • установить общие требования к проектируемой системе;
  • определить перечень задач создания системы и исполнителей;
  • определить этапы создания системы и сроки их выполнения;
  • провести предварительный расчет затрат на создание системы и определить уровень экономической эффективности ее внедрения.

 

3.4. Технический проект

Техническому проекту может предшествовать эскизный проект. Эскизный проект предусматривает разработку предварительных проектных решений по системе и ее частям. Выполнение стадии эскизного проектирования не является строго обязательной. Если основные проектные решения определены ранее или достаточно очевидны для конкретной ИС и объекта автоматизации, то эта стадия может быть исключена из общей последовательности работ.Содержание эскизного проекта задается в ТЗ на систему. Как правило, на этапе эскизного проектирования определяются:

  • функции ИС;
  • функции подсистем, их цели и ожидаемый эффект от внедрения;
  • состав комплексов задач и отдельных задач;
  • концепция информационной базы и ее укрупненная структура;
  • функции системы управления базой данных;
  • состав вычислительной системы и других технических средств;
  • функции и параметры основных программных средств.

По результатам проделанной работы оформляется, согласовывается и утверждается документация в объеме, необходимом для описания полной совокупности принятых проектных решений и достаточном для дальнейшего выполнения работ по созданию системы.

На основе технического задания (и эскизного проекта) разрабатывается технический проект ИС. Технический проект системы - это техническая документация, содержащая общесистемные проектные решения, алгоритмы решения задач, а также оценку экономической эффективности автоматизированной системы управления и перечень мероприятий по подготовке объекта к внедрению. На этом этапе осуществляется комплекс научно-исследовательских и экспериментальных работ для выбора основных проектных решений и расчет экономической эффективности системы.

3.5. Рабочая документация. Ввод в действие. Сопровождение

В завершение стадии технического проектирования производится разработка документации на поставку серийно выпускаемых изделий для комплектования ИС, а также определяются технические требования и составляются ТЗ на разработку изделий, не изготовляемых серийно.

На стадии "рабочая документация" осуществляется создание программного продукта и разработка всей сопровождающей документации. Документация должна содержать все необходимые и достаточные сведения для обеспечения выполнения работ по вводу ИС в действие, ее эксплуатации, а также для поддержания уровня эксплуатационных характеристик (качества) системы. Разработанная документация должна быть соответствующим образом оформлена, согласована и утверждена.

Для ИС, которые являются разновидностью автоматизированных систем, устанавливают следующие основные виды испытаний: предварительные, опытная эксплуатация и приемочные. При необходимости допускается дополнительно проведение других видов испытаний системы и ее частей.

В зависимости от взаимосвязей частей ИС и объекта автоматизации испытания могут быть автономные или комплексные. Автономные испытания охватывают части системы. Их проводят по мере готовности частей системы к сдаче в опытную эксплуатацию. Комплексные испытания проводят для групп взаимосвязанных частей или для системы в целом. Для планирования проведения всех видов испытаний разрабатывается документ "Программа и методика испытаний". Разработчик документа устанавливается в договоре или ТЗ. В качестве приложения в документ могут включаться тесты или контрольные примеры. Предварительные испытания проводят для определения работоспособности системы и решения вопроса о возможности ее приемки в опытную эксплуатацию. Предварительные испытания следует выполнять после проведения разработчиком отладки и тестирования поставляемых программных и технических средств системы и представления им соответствующих документов об их готовности к испытаниям, а также после ознакомления персонала ИС с эксплуатационной документацией.

Опытную эксплуатацию системы проводят с целью определения фактических значений количественных и качественных характеристик системы и готовности персонала к работе в условиях ее функционирования, а также определения фактической эффективности и корректировки, при необходимости, документации.

Приемочные испытания проводят для определения соответствия системы техническому заданию, оценки качества опытной эксплуатации и решения вопроса о возможности приемки системы в постоянную эксплуатацию.