Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety_SD1.docx
Скачиваний:
44
Добавлен:
16.02.2016
Размер:
763.68 Кб
Скачать

V-образный жизненный цикл;

Спиральный жизненный цикл;

Экстремальное программирование.

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

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

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

Этим решением стала спиральная модель жизненного цикла.

Основная идея ЖЦ экстремального программирования - максимальное укорачивание длительности одного этапа жизненного цикла и тесное взаимодействие с заказчиком.

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

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

На самом деле модель ЖЦ состоит из четырёх процессов:

Основной процесс разработки. Сказано выше.

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

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

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

Стандарты организации работ. Требования, предъявляемые к организации работы, необходимой для выпуска качественной ПС, оформлены в виде стандартов качества. Наиболее часто цитируемая и известная группа стандартов качества - серия стандартов ISO 9000. В дополнение к ним существует стандарт, содержащий требования к жизненному циклу разработки ПО - ISO 12207. В госструктурах СНГ используются стандарты серии ГОСТ 34.

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

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

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

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

Архитектура ПО и требования к компонентам низкого уровня корректно переработаны в удовлетворяющие им исходные тексты программных и информационных модулей;

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

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

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

Тестовая ситуация (test case) - входы для проверки системы и предполагаемые выходы в зависимости от входов, если система работает в соответствии со спецификацией требований.

Хорошая тестовая ситуация - та ситуация, которая обладает большой вероятностью обнаружения пока еще необнаруженной ошибки.

Удачный тест - тест, который обнаруживает пока еще необнаруженную ошибку.

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

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]