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

2005

Доклады БГУИР

январь-март

№ 1

УДК 002.6;+021

ВЫБОР МОДЕЛИ ЖИЗНЕННОГО ЦИКЛА РАЗРАБОТКИ ПРОГРАММНЫХ СРЕДСТВ И СИСТЕМ НА ОСНОВЕ СВОДНОЙ ТАБЛИЦЫ КРИТЕРИЕВ КЛАССИФИКАЦИИ ПРОЕКТА

В В. БАХТИЗИН, Л.А. ГЛУХОВА

Белорусский государственный университет информатики и радиоэлектроники П. Бровки, 6, Минск, 220013, Беларусь

Поступила в редакцию 14 декабря 2004

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

Ключевые слова: программные средства, модель жизненного цикла, классификация проектов.

Введение

В настоящее время во всем мире большое внимание уделяется вопросам обеспечения качества программных средств (ПС) и систем. На характеристики качества ПС и систем значительное влияние оказывает качество процесса их разработки, зависящее, в частности, от правильного выбора модели жизненного цикла (ЖЦ) разработки.

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

В стандарте СТБ ИСО/МЭК 12207-2003 [1] в качестве одной из основных задач подготовки процесса разработки ПС и систем регламентирована задача выбора модели жизненного цикла разработки с учетом особенностей конкретного проекта. В стандарте ГОСТ Р ИСО/МЭК ТО 15271-2002 [2] определено три основных стратегии разработки ПС. К ним относятся каскадная, инкрементная и спиральная стратегии. К настоящему времени по каждой из стратегий разработано большое количество моделей ЖЦ. Каждая из стратегий и моделей наиболее эффективна при ее применении к определенному типу проектов. В этой связи представляют интерес существующие классификаторы проектов по разработке ПС и систем, позволяющие обоснованно выбирать модель ЖЦ разработки в каждом конкретном случае.

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

В ГОСТ Р ИСО/МЭК ТО 12182-2002 [3] приведена схема классификации программных средств по 16 видам, каждый из которых подразделяется на классы. Данная классификация имеет общий характер и в целом не может использоваться для обоснования выбора модели жизненного цикла ПС и систем. С этой точки зрения в классификации [3] интерес представляет лишь несколько видов.

Институтом качества программного обеспечения SQI (Software Quality Institute, США) специально для выбора модели ЖЦ разработана схема классификации проектов по разработке ПС и систем [4]. Основу данной классификации составляют четыре категории критериев.

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

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

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

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

Набор критериев данной категории, предложенный институтом SQI, является недостаточно полным и может быть дополнен критериями из других общепринятых классификаций. В частности, к таким критериям можно отнести следующие виды ПС из стандарта [3]:

масштаб продукта проекта (размер или сложность продукта проекта);

стабильность продукта проекта (эволюция продукта проекта);

критичность продукта проекта (степень влияния на общество повреждений продукта проекта).

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

На основе приведенной классификации институтом SQI разработана методика выбора модели ЖЦ разработки программных средств [4]. Методика основана на использовании независимых таблиц критериев для каждой категории, заполнении данных таблиц с учетом особенностей конкретного проекта, упорядочении по степени важности для данного проекта категорий (таблиц) или критериев, относящихся к каждой категории (строк таблиц).

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

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

Предлагаемая процедура выбора модели ЖЦ разработки программных средств и систем основана на использовании сводной таблицы критериев классификации проекта. Данная процедура может применяться как самостоятельная или как продолжение методики выбора модели жизненного цикла разработки программных средств и систем на основе категорий проекта, описанной в [4].

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

1. Сделать сводную таблицу из всех критериев классификации проекта (критерии могут быть взяты из классификации института SQI [4] и дополнены критериями из стандарта [3]).

2. Если процедуре не предшествовала методика выбора модели ЖЦ института SQI, ответить на вопросы сводной таблицы по анализируемому проекту, выделив слова "да" или "нет" в

соответствующих строках таблиц. Если слов "да" или "нет" в строке несколько, необходимо отметить все из них (все "да" или все "нет").

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

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

Если на 4-м шаге при выборе модели наблюдаются противоречия, возникающие при сходных или одинаковых показателях для нескольких моделей, присвоить вес каждому из критериев классификации. Для этого в таблицу необходимо добавить столбец, заполнив его весовыми коэффициентами V, критериев таким образом, чтобы их сумма была величиной постоянной, равной 1:

п

IV = 1,

1=1

где 1 — номер критерия (номер строки в таблице); п — общее количество критериев (строк таблицы).

Форма сводной таблицы критериев классификации проектов с учетом их весовых коэффициентов приведена ниже.

№ п/п Критерий классификации Вес критерия V Модель жизненного цикла

Каскадная V-образ-ная Прото-типи-рование RAD Инкре-ментная Спиральная

1 2 3 4 5 6

1 Будет ли проект крупно- или сред-немасштабным? 0,15 Нет Нет Да Нет Да Да

2 Будет ли проект идентифицировать новое направление продукта для организации? 0,13 Нет Нет Да Нет Да Да

i

33 Будет ли руководитель проекта отслеживать прогресс команды разработчиков в ходе проекта? 0,03 Да Да Нет Нет Да Да

34 Приемлет ли команда разработчиков оценки, проверки, стадии разработки? 0 Да Да Да Нет Да Да

Суммарный вес Рт модели для анализируемого проекта 1 0,17 0,40 0,63 0,28 0,55 0,73

Подсчитать суммарный вес Рт каждой модели как сумму весовых коэффициентов строк, в которых для данной модели отмечен ответ:

Pm =ZVA

i=1

где: m — номер анализируемой модели (соответствует столбцу в таблице); bmi — признак выбора i-го критерия в m-й модели:

Ír\ О \ /У Ж \ \ О Ж \ г г О /\ /\ .. О .. О г

0, anee еоеоаоее ia auaaeai,

1, anee еоеоаоее auaaeai.

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

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

Заключение

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

SOFTWARE LIFE CYCLE MODEL CHOICE BASED ON THE GENERAL PROJECT CLASSIFICATION CRITERIONS TABLE

V.V.BAKHTSIZIN, L.A.GLUHOVA Abstract

The existing project classification for choice software life cycle (SLC) model is defined more precisely. SLC model choice procedure based on the general project classification criterions table is offered.

Литература

1. СТБ ИСО/МЭК 12207-2003. Информационная технология. Процессы жизненного цикла программных средств.

2. ГОСТ Р ИСО/МЭК ТО 15271-2002. Информационная технология. Руководство по применению

3. ГОСТ Р ИСО/МЭК 12207 Процессы жизненного цикла программных средств.

4 ГОСТ Р ИСО/МЭК ТО 12182-2002. Информационная технология. Классификация программных средств. 5. Фатрелл Р., Шафер Д., Шафер Л. Управление программными проектами: достижение оптимального качества при минимуме затрат. М., 2003.