жц (2)

22
Понятия и основные этапы ЖЦ ПО. ЖЦ ПО в соответствии со стандартом ISO/IEC 12207. Модели ЖЦ ПО Выполнил : Горбачев З.В.

Upload: romachkapole

Post on 22-Feb-2017

229 views

Category:

Art & Photos


0 download

TRANSCRIPT

Page 1: жц (2)

Понятия и основные этапы ЖЦ ПО.

ЖЦ ПО в соответствии со стандартом ISO/IEC 12207.

Модели ЖЦ ПО

Выполнил : Горбачев З.В.

Page 2: жц (2)

Жизненный цикл программного обеспечения  — период времени, который начинается с момента принятия решения о необходимости создания программного продукта и заканчивается в момент его полного изъятия из эксплуатации. Этот цикл — процесс построения и развития программного обеспечения(ПО).

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

Page 3: жц (2)

Обобщенный жизненный цикл можно представить в виде следующей последовательности этапов, которые, в свою очередь, можно также разбить на стадии: 1. планирование разработки; 2. определение требований к системе; 2.1 выработка требований 2.2 анализ требований 3. проектирование системы; 3.1 проектирование архитектуры системы;

Основные этапы ЖЦ ПО

Page 4: жц (2)

3.2 детальное проектирование компонент системы, в т.ч. для программного обеспечения; - общее проектирование программного обеспечения; - проектирование отдельных программных компонент;4. реализация и тестирование системы; 4.1 создание отдельных компонент системы, в т.ч. для программного обеспечения; - создание отдельных программных модулей; - тестирование отдельных программных модулей;

Page 5: жц (2)

4.2 тестирование компонент системы, в т.ч. программного обеспечения как единого компонента системы; 4.3 интегрирование отдельных компонент в систему;5. выпуск системы;6. эксплуатация системы;7. завершение разработки.

Page 6: жц (2)

ISO/IEC 12207 «System and software engineering — Software life cycle processes» — стандарт ISO, описывающий процессы жизненного цикла ПО.

ЖЦ ПО в соответствии со стандартом ISO/IEC 12207

Page 7: жц (2)

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

Page 8: жц (2)

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

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

Модели ЖЦ ПО

Page 9: жц (2)

Совершенно простая модель, характерная для студентов. Именно по этой модели большинство студентов разрабатывают лабораторные работы.Данная модель имеет следующий алгоритм: 1. Постановка задачи 2. Выполнение 3. Проверка результата 4. При необходимости переход к первому пункту Модель  устаревшая. Характерна для 1960-1970 гг.

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

инженерный подход

Page 10: жц (2)

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

Каскадная модельинженерный подход

Page 11: жц (2)

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

Page 12: жц (2)

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

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

инженерный подход

Page 13: жц (2)

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

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

Page 14: жц (2)

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

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

1. прояснить не ясные требования (прототип UI); 2. выбрать одно из ряда концептуальных решений (реализация сцинариев); 3. проанализировать осуществимость проекта.

c учетом специфики задачи

Page 15: жц (2)

Классификация протопипов: - горизонтальные и вертикальные - одноразовые и эволюционные - бумажные и раскадровки Горизонтальные прототипы — моделирует исключительно UI не затрагивая логику обработки и базу данных. Вертикальные прототипы — проверка архитектурных решений. Одноразовые прототипы — для быстрой разработки. Эволюционные прототипы — первое приближение эволюционной системы.

Page 16: жц (2)

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

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

c учетом специфики задачи

Page 17: жц (2)
Page 18: жц (2)

Преимущества: - Быстрое получение результата - Повышение конкурентоспособности - Изменяющиеся требования — не проблема Недостатки: - Отсутствие регламентации стадий

Page 19: жц (2)

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

Инкрементная  модель

c учетом специфики задачи

Page 20: жц (2)
Page 21: жц (2)

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

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

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

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

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

 

Page 22: жц (2)

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