Макетирование. Инкрементная модель
Основная цель макетирования – снять неопределённости в требованиях заказчика. Макетирование (прототипирование) – это процесс создания моделитребуемого программного продукта. Модель может принимать одну из трёх форм: 1) бумажный макет или макет на основе ПК (изображает или рисует человеко-машинный диалог); 2) работающий макет (выполняет некоторую часть требуемых функций); 3) существующая программа (характеристики которой затем должны быть улучшены). Макетирование начинается со сбора и уточнения требований к создаваемому ПО. Разработчик и заказчик встречаются и определяют все цели ПО, устанавливают, какие требования известны, а какие предстоит доопределить. Затем выполняется быстрое проектирование. В нём внимание сосредоточивается на тех характеристиках ПО, которые должны быть видимы пользователю. Быстрое проектирование приводит к построению макета. Макет оценивается заказчиком и используется для уточнения требований к ПО. Достоинство макетирования: обеспечивает определение полных требований к ПО. Недостатки макетирования: - заказчик может принять макет за продукт; - разработчик может принять макет за продукт.Инкрементная модель является классическим примером инкремент-ной стратегии конструирования. Она объединяет элементы последовательной водопадной модели с итерационной философией макетирования. Каждая линейная последовательность здесь вырабатывает поставляемый инкремент ПО. Например, ПО для обработки слов в 1-м инкременте реализует функции базовой обработки файлов, функции редактирования и документирования; во 2-м инкременте – более сложные возможности редактирования и документирования; в 3-м инкременте – проверку орфографии и грамматики; в 4-м инкременте – возможности компоновкистраницы. Первый инкремент приводит к получению базового продукта, реализующего базовые требования (правда, многие вспомогательные требования остаются нереализованными). План следующего инкремента предусматривает модификацию базового продукта, обеспечивающую дополнительные характеристики ифункциональность. По своей природе инкрементный процесс итеративен, но в отличие от макетирования, инкрементная модель обеспечивает на каждом инкременте работающий продукт.18. Классический жизненный цикл ПО. Очень часто классический жизненный цикл называют каскадной или водопадной моделью, подчёркивая, что разработка рассматривается как последовательность этапов, причём переход на следующий, иерархически нижний этап происходит только после полного завершения работ на текущем этапе. Разработка начинается на системном уровне и проходит через анализ, проектирование, кодирование, тестирование и сопровождение. При этом моделируются действия стандартного инженерного цикла. Системный анализ задаёт роль каждого элемента в компьютерной системе, взаимодействие элементов друг с другом. Поскольку ПО является лишь частью большой системы, то анализ начинается с определения требований ко всем системным элементам и назначения подмножества этих требований программному «элементу». Необходимость системного подхода явно проявляется, когда формируется интерфейс ПО с другими элементами (аппаратурой, людьми, базами данных). На этом же этапе на-чинается решение задачи планирования проекта ПО. В ходе планирования проекта определяются объём проектных работ и их риск, необходимые трудозатраты, формируются рабочие задачи и план-график работ. Анализ требований относится к программному элементу – программному обеспечению. Уточняются и детализируются его функции, характеристики и интерфейс. Все определения документируются в спецификации анализа. Здесь же завершается решение задачи планирования проекта. Как и любая инженерная схема, классический жизненный цикл имеетдостоинства и недостатки. Достоинства классического жизненного цикла: даёт план и времен-ной график по всем этапам проекта, упорядочивает ход конструирования. Недостатки классического жизненного цикла: 1) реальные проекты часто требуют отклонения от стандартной по-следовательности шагов; 2) цикл основан на точной формулировке исходных требований кПО (реально в начале проекта требования заказчика определены лишьчастично); 3) результаты проекта доступны заказчику только в конце работы.