Герасина А.И., Шибанов
С.В.
Пензенский
государственный университет
Алгоритм принятия решений по выбору
инструментальных средств разработки программного обеспечения в рамках
онтологической модели
Проблема выбора инструментальных средств
разработки возникает на многих этапах жизненного цикла программного обеспечения
(ПО) [1]. Решение по выбору соответствующих средств принимается на основе
множества критериев, таких как стоимость; выполняемые функции; этапы жизненного
цикла, на которых может быть использовано инструментальное средство;
поддерживаемые нотации, стандарты и методологии; аппаратно-программные
платформы и языки программирования и многих других. Задача выбора адекватных инструментальных
средств, как правило, состоит в выборе из нескольких альтернатив пакета
инструментальных средств разработки ПО, который бы в наибольшей степени
удовлетворял заданным значениям тех или иных критериев.
Выбор инструментальных средств разработки ПО
руководителями компаний или менеджерами проектов выполняется с учетом следующих
условий [2]:
-
исходная
информация может быть неполной, неопределенной и, очень часто, недостоверной;
-
набор
критериев, на основе которых осуществляется оценка и выбор инструментальных
средств, может быть индивидуальным в каждом конкретном случае;
-
критерии
могут иметь разный приоритет (степень важности);
-
критерии
могут носить как количественный, так и качественный характер;
-
все
решения, принимаемые на разных этапах жизненного цикла, должны быть
согласованными.
В силу указанных условий
для автоматизации выбора инструментальных средств разработки ПО целесообразно
использовать интеллектуальную систему [3]. В качестве модели представления
знаний интеллектуальной системы предлагается онтологическая модель на основе
семантической сети [4].
Онтологическую модель
принятия решения по выбору инструментальных средств разработки программного
обеспечения можно представить в виде неоднородного ориентированного графа (рисунок
1).

Рисунок 1 – онтологическая модель знаний
для решения задачи выбора инструментальных средств разработки ПО
Вершины графа соответствуют классам онтологической модели,
дуги – отношениям между классами. На рисунке 1 сплошными линиями показаны
родовидовые отношения между классами, пунктирными направленными дугами – другие
отношения, тип которых указан непосредственно рядом с дугой.
Для оценки и принятия решения
по выбору инструментальных средств разработки программного обеспечения на
основе представленной онтологической модели предлагается алгоритм, основанный
на методе оценки подобия объектов в интеллектуальном пространстве знаний [5]
(таблица 1).
Таблица 1 – алгоритм принятия решений по выбору
инструментальных средств разработки ПО на основе метода оценки подобия объектов
в интеллектуальном пространстве знаний
|
Шаг |
Содержание |
Описание |
|
1 |
Определение эталонного пакета инструментальных
средств |
На основе заданных значений критериев оценки
определяется эталонный пакет инструментальных средств разработки ПО и
составляющие его эталонные инструментальные средства для соответствующего
этапа жизненного цикла программного обеспечения. |
|
2 |
Формирование набора потенциальных
инструментальных средств |
Для каждого эталонного инструментального
средства с учетом степени подобия соответствующих метаописаний формируется
набор потенциальных реальных инструментальных средств, из которых на
следующих шагах алгоритма осуществляется выбор. |
|
3 |
Формирование набора потенциальных пакетов
инструментальных средств |
Из наборов потенциальных инструментальных
средств на основе оценки возможности взаимной интеграции формируются потенциальные
пакеты инструментальных средств. |
|
4 |
Оценка подобия потенциальных пакетов и
эталонного пакета инструментальных средств |
Оценивается подобие сформированных пакетов и
эталонного пакета инструментальных средств. |
|
5 |
Выбор пакета наиболее близкого к эталонному |
На основании оценки подобия выбирается пакет (пакеты),
наиболее близкий (близкие) к эталонному пакету. |
Каждое эталонное инструментальное средство
задается множеством
классов
:

и множеством экземпляров
классов
с экземплярами
отношений между ними. Для каждого экземпляра
выполняется одно из
следующих условий:
-
«Функция» ^
выполняет_функцию(
) ^ соответствует(
), где
- экземпляр класса «Этап
ЖЦ», соответствующий k-му этапу жизненного цикла программного обеспечения;
-
«Нотация» ^
поддерживает_нотацию(
) ^ соответствует (
);
-
«Стандарт» ^
поддерживает_стандарт(
) ^ соответствует (
);
-
«Методология» ^
поддерживает_методологию(
) ^ соответствует (
);
-
«Платформа» ^
поддерживается_платформой (
);
-
«Производитель» ^
разработан_производителем (
);
-
«Язык
программирования» ^ поддерживает_ЯП (
);
-
«Этап ЖЦ» ^
.
Эталонный пакет
задается множеством
классов
:

и множеством экземпляров
классов
с экземплярами
отношений между ними, причем для каждого
выполняется одно из
следующих условий:
-
«ИС» ^ содержит (
) ^
;
-
«Функция» ^
выполняет_функцию (
) ^ соответствует (
), где
- экземпляр класса
«Этап ЖЦ», соответствующий k-му этапу жизненного цикла программного
обеспечения;
-
«Нотация» ^
поддерживает_нотацию (
) ^ соответствует(
);
-
«Стандарт» ^
поддерживает_стандарт (
) ^ соответствует (
);
-
«Методология» ^
поддерживает_методологию (
) ^ соответствует (
);
-
«Платформа» ^
поддерживается_платформой (
);
-
«Производитель» ^
разработан_производителем (
);
-
«Язык
программирования» ^ поддерживает_ЯП (
);
-
«Стоимость» ^ имеет_стоимость
(
);
-
«Этап ЖЦ».
Конечным результатом работы
предлагаемого алгоритма будет пакет инструментальных средств, который
выбирается из множества альтернативных пакетов.
Литература
1.
Уокер
Ройс Управление проектами по созданию программного обеспечения. – М.: Изд-во
«ЛОРИ», 2002. – 431 с.
2.
Дзюба
Е.А. Сравнительный анализ современных средств поддержки жизненного цикла
информационных систем / Дзюба Е.А., Шибанов С.В., Герасина А.И. // Труды
международного симпозиума «Надежность и качество' 2012». – т. 1. – Пенза, 2012.
– с. 420-427.
3.
Башмаков
А.И. Интеллектуальные информационные технологии / Башмаков А.И., Башмаков И.А.;
Учеб. пособие. – М.: Изд-во МГТУ им. Н.Э.Баумана, 2005. – 304 с.
4.
Скобелев
П.О. Онтологии деятельности для ситуационного управления предприятиями в
реальном времени // Онтология проектирования, вып. 1, 2012. – с. 6-38.
5.
Тузовский
А.Ф. Системы управления знаниями (методы и технологии) / Тузовский А.Ф.,
Чириков С.В., Ямпольский В.З.; Под общ. ред. Ямпольского В.З. – Томск: Изд-во
НТЛ, 2005. – 260 с.