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

35.Модели процесса создания по. Их типы.

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

Опишем кратко некоторые типы моделей технологического процесса создания ПО:

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

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

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

Рассмотрим следующие модели создания программного обеспечения.

1. Каскадная модель. Основные базовые виды деятельности, выполняемые в процессе создания ПО (такие, как разработка спецификации, проектирование и производство, аттестация и модернизация ПО), представляются как отдельные этапы этого процесса.

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

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

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

36.Каскадная модель процесса создания ПО.

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

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

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

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

2. Проектирование системы и программного обеспечения. Процесс проектирования системы разбивает системные требования на требования, предъявляемые к аппаратным средствам, и требования к программному обеспечению системы. Разрабатывается общая архитектура системы.

Проектирование ПО предполагает определение и описание основных программных компонентов и их взаимосвязей.

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

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

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

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