Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УЧЕБНОЕ ПОСОБИЕ Глухова Лилия Александровна 2007.pdf
Скачиваний:
612
Добавлен:
15.06.2014
Размер:
921.37 Кб
Скачать

РАЗДЕЛ 3. ВЫБОР МОДЕЛИ

ЖИЗНЕННОГО ЦИКЛА

ДЛЯ КОНКРЕТНОГО

ПРОЕКТА

3.1.Классификация проектов по разработке программных средств и систем

Существуют различные схемы классификации проектов.

 

 

В ГОСТ Р ИСО/МЭК ТО12182-2002 - Информационная технология.

 

Классификация программных средств [5] - приведена схема классификации

 

программных средств по16 видам, каждый из которых подразделяется на

 

классы. Данная классификация имеет общий характер и в целом не может

 

использоваться

для

обоснования

выбора

модели

жизненного

ц

программных средств и систем.

 

 

 

 

Институтом качества программного обеспеченияSQI (Software Quality

 

Institute, США) специально для выбора модели жизненного цикла разработана

 

схема классификации проектов по разработке программных средств и систем

 

[20]. Основу данной классификации составляют четыре категории критериев.

 

По каждому из критериев проекты подразделяются надва альтернативных

 

класса.

 

 

 

 

 

 

Критерии

классификации проектов, предложенные

институтом SQI для

 

выбора модели жизненного цикла программных средств и систем, объединены в следующие категории:

1) Характеристики требований к проекту.

Критерии данной категории классифицируют проекты в зависимости от требований пользователя (заказчика) к разрабатываемой системе или программному средству (свойств разрабатываемой системы или ПС).

2) Характеристики команды разработчиков.

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

Характеристики команды разработчиков играют важную роль при выборе модели жизненного цикла, поскольку разработчики несут ответственность за

57

успешную реализацию проекта.

3) Характеристики пользователей (заказчиков).

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

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

4)Характеристики типов проектов и рисков.

Внекоторых моделях в достаточно высокой степени предусмотрено управление рисками. В других моделях управление рисками вообще не предусматривается.

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

Примеры критериев каждой из категорий приведены в подразд. 3.2.

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

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

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

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

SQI.

Данная процедура базируется на применении таблиц вопросов. Каждый из вопросов предназначен для классификации анализируемого проекта по

соответствующему критерию одной из четырех категорий классификации проектов (см. подразд. 3.1).

58

Рассматриваемая процедура состоит из следующейпоследовательности шагов.

1-й шаг процедуры. Проанализировать отличительные категории проекта

по критериям, представленным в виде

вопросов. Таблица 3.1 – таблица 3.4

отражают данные вопросы.

 

 

 

 

2-й шаг процедуры. Ответить на вопросы (см. таблица 3.1 – таблица 3.4)

по анализируемому проекту, отметив слова "да" или "нет" в соответствующих

строках таблиц. Если слов «да» или «нет» в

строке несколько, необходимо

отметить все из них (все «да» или все «нет»).

 

 

 

3-й шаг процедуры. Расположить

по

степени

важности

категории

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

4-й шаг процедуры.

Выбрать из моделей (см. таблица 3.1 – таблица 3.4)

ту модель, которая

соответствует столбцу с наибольшим количеством

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

Таблица 3.1 – Выбор модели жизненного цикла на основе характеристик требований

п/п

Критерии категории

Каскад-

V-

 

RAD

Инкре-

Эволю-

 

Спира-

 

 

требований

ная

образ-

 

мент-

цион-

 

льная

 

 

ная

 

 

ная

ная

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Являются ли требования к

 

 

 

 

 

 

 

 

 

 

 

 

проекту легко

Да

Да

 

Да

Нет

Нет

 

 

Нет

 

определимыми и/или

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

хорошо известными?

 

 

 

 

 

 

 

 

 

 

 

2

Могут ли требования быть

 

 

 

 

 

 

 

 

 

 

 

 

сформулированы в начале

Да

Да

 

Да

Да

Нет

 

Нет

 

жизненного цикла?

 

 

 

 

 

 

 

 

 

 

 

3

Будут ли изменяться

 

 

 

 

 

 

 

 

 

 

 

 

требования на протяжении

Нет

Нет

 

Нет

ДаНет

Да

 

жизненного цикла?

 

 

 

 

 

 

 

 

 

 

 

4

Нужно ли демонстрировать

 

 

 

 

 

 

 

 

 

 

 

 

требования с целью их

Нет

Нет Да

Нет

Да

 

Да

 

определения?

 

 

 

 

 

 

 

 

 

 

 

5

Требуется ли проверка

Нет

Нет Да

Нет

Да

 

Да

 

концепции?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

59

№ п/п

6

Критерии категории

Каскад-

V-

 

RAD

Инкре-

Эволю-

Спира-

требований

ная

образ-

 

мент-

цион-

льная

ная

 

 

ная

ная

 

 

 

 

 

Будет ли формулирование

 

 

 

 

 

 

 

требований зависеть от

Нет

Нет

НетДа

Да

Да

роста сложности системы в

 

 

 

 

 

 

 

жизненном цикле?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 3.2 – Выбор модели жизненного цикла на основе характеристик команды разработчиков

п/п

Критерии категории

команды разработчиков

проекта

 

1Являются ли проблемы предметной области проекта новыми для большинства разработчиков?

2Являются ли технологии предметной области проекта новыми для большинства разработчиков?

3Являются ли инструментальные средства, используемые в проекте, новыми для большинства разработчиков?

4Изменяются ли роли участников проекта на протяжении жизненного цикла?

5Могут ли разработчики проекта пройти обучение?

6Является ли структура разрабатываемых систем в жизненном цикле более значимой для

разработчиков, чем

Каскад-

V-

ИнкреЭволю-

Спира-

ная

образRAD

мент-

цион-

льная

ная

ная

ная

 

 

Нет

Нет

Нет

Нет Да

Да

Да

Да

Нет Да

Нет Да

Да

Да

Нет

Нет

ДаНет

Нет

Нет

НетДа

Да

Да

Нет

Да

Да

Да

Нет

Нет

Да

Да

Нет Да

Нет

Нет

60

п/п

Критерии категории

Каскад-

V-

RAD

 

Инкре-

Эволю-

 

Спира-

 

команды разработчиков

ная

образ-

 

мент-

цион-

 

льная

 

проекта

ная

 

 

ная

ная

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

гибкость?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

Будет ли руководитель

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

проекта отслеживать

Да

Да

Нет Да

Нет Да

 

 

прогресс команды

 

 

разработчиков в ходе

 

 

 

 

 

 

 

 

 

 

проекта?

 

 

 

 

 

 

 

 

 

8

Важна ли легкость

 

 

 

 

 

 

 

 

 

 

распределения ресурсов

Да

Да

Да

 

Да

Нет

Нет

 

проекта?

 

 

 

 

 

 

 

 

 

9

Приемлет ли команда

 

 

 

 

 

 

 

 

 

 

разработчиков оценки,

Да

Да

Нет Да

Да

Да

 

 

проверки, стадии

 

 

 

 

 

 

 

 

 

 

 

 

разработки?

 

 

 

 

 

 

 

 

 

Таблица 3.3 – Выбор модели жизненного цикла на основе характеристик коллектива пользователей

п/п

Критерии категории

коллектива пользователей

1Будет ли присутствие пользователей ограничено в жизненном цикле разработки?

2Будут ли пользователи знакомиться с определением системы в жизненном цикле разработки?

3Будут ли пользователи знакомиться с проблемами предметной области в жизненном цикле разработки?

4Будут ли пользователи вовлечены в большинство

фазы жизненного цикла

Каскад-

V-

RAD

ИнкреЭволю-

Спира-

 

ная

образ-

мент-

цион-

льная

 

ная

 

ная

ная

 

 

 

 

 

Да

Да

Нет

Да

Нет

Д

Нет

Нет

Нет

Да Да Да

Нет

Нет Да

Да

Да

Нет

Нет

Нет Да

Нет

Да

Н

61

п/п

Критерии категории

коллектива пользователей

 

разработки?

5

Будет ли заказчик

 

отслеживать ход

 

выполнения проекта?

Каскад-

V-

ИнкреЭволю-

Спира-

ная

образRAD

мент-

цион-

льная

ная

ная

ная

 

 

Нет

Нет

Нет

Нет Да

Да

Таблица 3.4 – Выбор модели жизненного цикла на основе характеристик типа проектов и рисков

Критерии категории типов

Каска-

V-

 

 

Инкре-

Эволю

Спи-

 

 

образ-

 

RAD

мент-

-цион-

раль-

 

 

п/п

проекта и рисков

дная

ная

 

 

ная

ная

 

ная

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Будет ли проект

 

 

 

 

 

 

 

 

 

 

 

идентифицировать новое

Нет

Нет

 

НетДа

Да

 

Да

 

направление продукта для

 

 

 

 

 

 

 

 

 

 

 

 

 

 

организации?

 

 

 

 

 

 

 

 

 

 

2

Будет ли проект иметь тип

Нет

Да

Да

Да

Да

 

Да

 

системной интеграции?

 

 

 

 

 

 

 

 

 

 

 

 

3

Будет ли проект являться

 

 

 

 

 

 

 

 

 

 

 

расширением

Нет

Да

Да

Да

Нет

 

 

Нет

 

существующей системы?

 

 

 

 

 

 

 

 

 

 

4

Будет ли проект крупно-

Нет

Нет

 

НетДа

Да

Да

 

или среднемасштабным?

 

 

 

 

 

 

 

 

 

 

 

 

5

Будет ли финансирование

 

 

 

 

 

 

 

 

 

 

 

проекта стабильным на

Да

Да

Да

Нет

Да

 

 

Нет

 

всем протяжении

 

 

 

 

 

 

 

 

 

 

 

 

 

 

жизненного цикла?

 

 

 

 

 

 

 

 

 

 

6

Будет ли продукт проекта

Нет

Нет

 

Нет

Нет

 

 

Да

 

критичным?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

Ожидается ли длительная

 

 

 

 

 

 

 

 

 

 

 

эксплуатация продукта в

Да

Да

Нет

Да

Нет

 

 

Да

 

организации?

 

 

 

 

 

 

 

 

 

 

8

Необходим ли высокий

 

 

 

 

 

 

 

 

 

 

 

уровень надежности

Нет

Да

Нет

Да

Нет

 

 

Да

 

продукта проекта?

 

 

 

 

 

 

 

 

 

 

62