Жизненный цикл информационных систем

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    101,75 Кб
  • Опубликовано:
    2015-05-21
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Жизненный цикл информационных систем

Департамент образования города Москвы

ГБПОУ СПО Колледж индустрии гостеприимства и менеджмента № 23

 

 

 

 

 

 

 

 

 

КУРСОВОЙ ПРОЕКТ

по дисциплине

«Разработка и эксплуатация информационных систем»

Жизненный цикл информационных систем

Исполнитель: Колгушкина Е.А

Студентка 4 курса

-ПИ группы

очная форма обучения

Специальность 230701

Прикладная информатика

(в экономике)

Руководитель: Фомина Г.М.

МОСКВА 2015

Введение

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

Основанные на применении средств электронно-вычислительной техники, телекоммуникационных систем, специализированного программного обеспечения <#"877453.files/image001.gif">

Рис.3.1 Каскадная модель

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

Достоинства модели:

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

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

Недостатки модели:

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

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

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

.2 Инкрементная модель жизненного цикла

Инкрементная модель (англ. increment - увеличение, приращение) подразумевает разработку информационной системы с линейной последовательностью стадий, но в несколько инкрементов (версий), т. е. с запланированным улучшением продукта (рис.3.2).

Рис.3.2 Инкрементная модель

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

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

отсутствия у заказчика возможности сразу профинансировать весь дорогостоящий проект;

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

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

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

.3 Спиральная модель жизненного цикла

Спиральная модель (эволюционная или итерационная модель, автор Барри Боэм, 1988 г.) подразумевает разработку в виде последовательности версий, но в начале проекта определены не все требования. Требования уточняются в результате разработки версий (рис. 3.3).

Рис. 3.3 Спиральная стратегия

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

Достоинства модели:

позволяет быстрее показать пользователям системы работоспособный продукт, тем самым, активизируя процесс уточнения и дополнения требований;

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

обеспечивает большую гибкость в управлении проектом;

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

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

уменьшаются риски заказчика. Заказчик может с минимальными для себя финансовыми потерями завершить развитие неперспективного проекта.

Недостатки модели:

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

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

2.4 Сравнительный анализ моделей

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

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

Таблица 3.1 Сравнение моделей жизненного цикла

 Характеристика проекта

Модель


Каскадная <https://sites.google.com/site/anisimovkhv/learning/pris/lecture/tema3>Инкрементная <https://sites.google.com/site/anisimovkhv/learning/pris/lecture/tema3>Спиральная <https://sites.google.com/site/anisimovkhv/learning/pris/lecture/tema3>



Новизна разработки и обеспеченность ресурсами

Типовой. Хорошо проработаны технология и методы решения задачи

Нетиповой (новаторский). Нетрадиционный для разработчика


Ресурсов заказчика и разработчика хватает для реализации проекта в сжатые сроки

Ресурсов заказчика или разработчика не хватает для реализации проекта в сжатые сроки


Масштаб проекта

Малые и средние проекты

Средние и крупные проекты

Любые проекты

Сроки выполнения проекта

До года

До нескольких лет. Разработка одной версии может занимать срок от нескольких недель до года

Заключается один договор. Версия и есть итоговый результат проекта

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

Определение основных требований в начале проекта

Да

Да

Нет

Изменение требований по мере развития проекта

Нет

Незначительное

Да

Разработка итерациями

Нет

Да

Да

Распространение промежуточного ПО

Нет

Может быть

Да


В табл. 3.1 не стоит рассматривать значения «Да» и «Нет» как жесткие требования. Например, незначительное изменение требований по мере развития проекта при использовании каскадной модели (например, добавление некоторых непредусмотренных сервисных функций) встречается не так уж редко и в случае их реализации способствует улучшению взаимоотношений между сторонами. Аналогично распространение промежуточного программного обеспечения при спиральной модели необязательно, а иногда даже вредно отражается на процессах внедрения и опытной эксплуатации системы.

При разработке системы под итоговым продуктом и промежуточным программным обеспечением согласно следует понимать:

ревизию (исправительную или опытную) - любые оперативные изменения программного и информационного обеспечения, а также БД, необязательные в данный момент к передаче на объекты внедрения и связанные с устранением ошибок и усовершенствованием;

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

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

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

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

2.5 Методологии, поддерживающие спиральную модель

В настоящее время имеется несколько методологий разработки программного обеспечения, которые можно рекомендовать при использовании спиральной модели жизненного цикла. Наиболее известными из них являются методология быстрой разработки приложений (Rapid Application Development, RAD) и экстремальное программирование (eXtreme Programming, XP - автор Кент Бек, 1999).

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

Под RAD-разработкой обычно понимается процесс разработки, содержащий 3 элемента:

небольшую команду программистов (до 10 человек);

короткий, но тщательно проработанный производственный график (от 2 до 6 месяцев);

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

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

- CASE-средств <https://sites.google.com/site/anisimovkhv/learning/pris/lecture/tema5> для формирования и анализа требований, проектирования системы, автоматической генерации кода программ и структуры БД, а также автоматического тестирования программного обеспечения;

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

инструментальных средств, поддерживающих объектно-ориентированный подход. Эти средства позволяют создать описание предметной области в виде совокупности объектов - сущностей реального мира, характеризуемых свойствами (атрибутами) и поведением (методами);

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

шаблонов и библиотек готовых решений как собственной разработки, так и сторонних производителей.

Условия применения методологии RAD:

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

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

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

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

Методология XP. Данный подход ориентирован на разработку информационных систем группами малого и среднего размера в условиях неопределенных или быстро изменяющихся требований.

Отличительными особенностями XP-разработки являются:

частая смена версий и модификаций (длительность итераций вплоть до часов и минут, а обычно - 2 недели; в RAD - минимум 2 месяца);

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

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

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

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

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

непрерывное и пересекающееся проектирование, разработка, интеграция и тестирование системы.

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

3. Процессы жизненного цикла ИС

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

В соответствии с базовым международным стандартом ISO/IEC 12207 все процессы ЖЦ ПО делятся на три группы:

.1 Основные процессы жизненного цикла

Приобретение (действия и задачи заказчика, приобретающего ИС)

Поставка (действия и задачи поставщика, который снабжает заказчика программным продуктом или услугой)

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

Эксплуатация (действия и задачи оператора - организации, эксплуатирующей систему)

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

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

Сопровождение

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

Разработка

Разработка информационной системы включает в себя все работы по созданию информационного программного обеспечения и его компонентов в соответствии с заданными требованиями. Разработка информационного программного обеспечения также включает:

·  оформление проектной и эксплуатационной документации;

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

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

Эксплуатация

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

·  конфигурирование базы данных и рабочих мест пользователей;

·        обеспечение пользователей эксплуатационной документацией;

·        обучение персонала.

Основные эксплуатационные работы включают:

·  непосредственно эксплуатацию;

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

·        модификацию программного обеспечения;

·        подготовку предложений по совершенствованию системы;

·        развитие и модернизацию системы.

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

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

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

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

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

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

.2 Вспомогательные процессы жизненного цикла

Документирование (формализованное описание информации, созданной в течение ЖЦ ИС)

Управление конфигурацией (применение административных и технических процедур на всем протяжении ЖЦ ИС для определения состояния компонентов ИС, управления ее модификациями).

Обеспечение качества (обеспечение гарантий того, что ИС и процессы ее ЖЦ соответствуют заданным требованиям и утвержденным планам)

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

Аттестация (определение полноты соответствия заданных требований и созданной системы их конкретному функциональному назначению)

Совместная оценка (оценка состояния работ по проекту: контроль планирования и управления ресурсами, персоналом, аппаратурой, инструментальными средствами)

Аудит (определение соответствия требованиям, планам и условиям договора)

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

.3 Организационные процессы

Управление (действия и задачи, которые могут выполняться любой стороной, управляющей своими процессами)

Создание инфраструктуры (выбор и сопровождение технологии, стандартов и инструментальных средств, выбор и установка аппаратных и программных средств, используемых для разработки, эксплуатации или сопровождения ПО)

Усовершенствование (оценка, измерение, контроль и усовершенствование процессов ЖЦ)

Обучение (первоначальное обучение и последующее постоянное повышение квалификации персонала)

Управление проектом связано с вопросами планирования и организации работ, создания коллективов разработчиков и контроля за сроками и качеством выполняемых работ. Техническое и организационное обеспечение проекта включает:

·  выбор методов и инструментальных средств для реализации проекта;

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

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

·        обучение персонала.

Заключение

Любая информация имеет «время жизни». Она может существовать кратковременно (в памяти калькулятора в процессе проводимых на нем вычислений), в течение некоторого времени (при подготовке какой-либо справки) или очень долго (при хранении важных личных, коммерческих, общественных или государственных данных). Эти периоды времени определяют жизненный цикл информации.

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

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

) постановка задачи,

) проектирование услуг,

) разработка и развертывание,

) гарантированное предоставление услуг,

) модернизация или ликвидация услуги.

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

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

) анализ требований,

) проектирование,

) кодирование (программирование),

) тестирование и отладка,

) эксплуатация и сопровождение.

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

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

Список использованной литературы

1. Избачков С.Ю., Петров В.Н. Информационные системы-СПб.: Питер, 2008. - 655 с

. Лобанова Т. Жизненный цикл информационных систем - выберем стандарты, выстроим методологию В журн. Оборудование, сентябрь, 2005. с.

. Чистов Д. В. Материалы к дисциплине «Информационные системы в экономике». -М.: 2006.

Похожие работы на - Жизненный цикл информационных систем

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!