Жизненный цикл программного обеспечения



Скачать 86,23 Kb.
Дата22.10.2016
Размер86,23 Kb.
Содержание:

Жизненный цикл программного обеспечения


2

Модели жизненного цикла программного обеспечения


6

Источники


10

























ЖИЗНЕННЫЙ ЦИКЛ ПРОГРАММНОГО

ОБЕСПЕЧЕНИЯ

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



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

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

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

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

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

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

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

В коммерческом программном обеспечении жизненный цикл определяется моментом начала его продаж.

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

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

а) изменению программного продукта и услуг,

б) изменению цены на них,

в) проведению модификации или снятию с продажи и предоставления.

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



Продажи

http://inftis.narod.ru/pis/ris2-1.jpg

Время

Фаза

Разработка

Рост

Зрелость

Упадок

Рис. 1. Графическая модель жизненного цикла продуктов и услуг.

Обычно, под термином “программный продукт” для компьютерных информационных технологий принято понимать необходимое им программное обеспечение (ПО).

Основной нормативный документ, регламентирующий ЖЦ ПО – международный стандарт ISO/IEC 12207 (ISO, International Organization of Standardization – Международная организация по стандартизации, IEC, International Electrotechnical Commission – Международная комиссия по электротехнике). Он определяет структуру ЖЦ, содержащую процессы, действия и задачи, выполняемые во время создания ПО.

Согласно этому стандарту, структура ЖЦ ПО базируется на трёх группах процессов:

1) основные процессы ЖЦ ПО (приобретение, поставка, разработка, эксплуатация, сопровождение);

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

3) организационные процессы (управление проектами, создание инфраструктуры проекта, определение, оценка и улучшение самого ЖЦ, обучение).

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

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

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

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

Обеспечение качества проекта связано с проблемами верификации, проверки и тестирования ПО.

Верификация – это процесс определения насколько текущее состояние разработки, достигнутое на данном этапе, отвечает требованиям этого этапа.

Оценка качества (ГОСТ 28195-89) осуществляется на всех этапах жизненного цикла программных средств (ПС) при:



  • планировании показателей качества ПС;

  • контроле качества на отдельных этапах разработки (техническое задание, технический проект, рабочий проект);

  • контроле качества в процессе производства ПС;

  • проверке эффективности модификации ПС в процессе сопровождения.

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

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

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

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

Управление конфигурацией позволяет организовать, систематически учитывать и контролировать внесение изменений в ПО на всех стадиях ЖЦ. Общие принципы и рекомендации конфигурационного учёта, планирования и управления конфигурациями ПО отражены в проекте стандарта ISO/IEC 12207.

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

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

ИС входят в состав СУБД и являются специфическим инструментальным и прикладным (пользовательским) программным обеспечением.

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

Модели жизненного цикла программного обеспечения

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


  1. Инженерный подход

  2. С учетом специфики задачи

  3. Современные технологии быстрой разработки

Модель кодирования и устранения ошибок

Совершенно простая модель, характерная для студентов ВУЗов. Именно по этой модели большинство студентов разрабатывают лабораторные работы.



  1. Постановка задачи

  2. Выполнение

  3. Проверка результата

  4. При необходимости переход к первому пункту

Модель также сильно устаревшая. Характерна для 1960-1970 гг., поэтому преимуществ перед следующими моделями не имеет.

Относится к первой группе моделей.



Каскадная модель жизненного цикла программного обеспечения (водопад)алгоритм каскадной модели

Алгоритм данного метода имеет ряд преимуществ перед алгоритмом предыдущей модели, но также имеет ряд весомых недостатков.

Преимущества:


  • Последовательное выполнение этапов проекта в строгом фиксированном порядке

  • Позволяет оценивать качество продукта на каждом этапе

Недостатки:

  • Отсутствие обратных связей между этапами

  • Не соответствует реальным условиям разработки программного продукта

Относится к первой группе моделей.

Каскадная модель с промежуточным контролем (водоворот).

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



Модель (разработка через тестирование).

Данная модель имеет приближенный к современным методам алгоритм, однако все еще имеет ряд недостатков. Является одной из основных практик экстремального программирования.image



Модель на основе разработки прототипа

Данная модель основывается на разработке прототипов и прототипирования продукта.



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

  1. Прояснить не ясные требования (прототип UI)

  2. Выбрать одно из ряда концептуальных решений (реализация сценариев)

  3. Проанализировать осуществимость проекта

Классификация прототипов:

  1. Горизонтальные и вертикальные

  2. Одноразовые и эволюционные

  3. бумажные и раскадровки

Горизонтальные прототипы — моделирует исключительно UI не затрагивая логику обработки и базу данных.

Вертикальные прототипы — проверка архитектурных решений.

Одноразовые прототипы — для быстрой разработки.

Эволюционные прототипы — первое приближение эволюционной системы.

Модель принадлежит второй группе.



Спиральная модель жизненного цикла программного обеспечения

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



image

Преимущества:



  • Быстрое получение результата

  • Повышение конкурентоспособности

  • Изменяющиеся требования — не проблема

Недостатки:

  • Отсутствие регламентации стадий

Третьей группе принадлежат такие модели как экстремальное программирование (XP), SCRUM, инкриментальная модель (RUP)

Источники

  1. http://habrahabr.ru

  2. http://inftis.narod.ru

  3. Братищенко В.В. Проектирование информационных систем. — Иркутск: Изд-во БГУЭП, 2004. — 84 с.

  4. Грекул В.И., Денищенко Г.Н., Коровкина Н.Л. Проектирование информационных систем. — М.: Интернет-университет информационных технологий - ИНТУИТ.ру, 2005



Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©grazit.ru 2017
обратиться к администрации

    Главная страница