Введение
Современное развитие средств и систем разработки программного обеспечения самой широкой номенклатуры и сложности неминуемо ставит вопрос о необходимости интегральных экспертных оценок самых различных факторов, влияющих на стоимость и качество конечного программного продукта.
Экспертные методы применяют в ситуациях, когда выбор, обоснование и оценка последствий решений не могут быть выполнены на основе точных расчетов. Экспертные оценки проводятся людьми, экспертами, профессионалами в своей области. От работы экспертов зависит эффективность принятия управленческих решений. В связи с этим все шире используются экспертные методы, под которыми понимают комплекс логических и математико-статистических методов и процедур, направленных на получение от специалистов информации, необходимой для подготовки и выбора рациональных управленческих решений [4].
Тем не менее психологические аспекты проблемы активизации деятельности экспертов имеют свои недостатки, поскольку психологический фактор является одним из важнейших, влияющих на точность экспертных оценок, а, следовательно, и на взвешенность управленческих решений, принятых на основе мнения экспертов [7]. Такие ситуации нередко возникают в ходе процесса принятия решений, связанных с разработкой программного и аппаратного обеспечения вычислительных систем, а также при выборе лицензий для программного обеспечения с открытым исходным кодом.
Применение открытых технологий дает новые возможности развития для государственных структур и бизнеса в России. Решения Open Source уже много лет используются как надежные и производительные компоненты практически любой IT-инфраструктуры. Это технологии, позволяющие обеспечить стабильность и безопасность работы, экономно модернизировать всю IT-инфраструктуру, добиться лицензионной чистоты и автоматизировать рабочие процессы, использовать корпоративные бизнес-приложения и инновационные веб-сервисы. Решения Open Source постепенно становятся базовыми для выстраивания рабочих процессов в бизнесе, государственных структурах, образовательном секторе.
В сочетании с отсутствием проблемы дорогостоящего лицензирования программного обеспечения это делает свободные программы привлекательным решением для организаций любого масштаба и разных направлений деятельности.
Существует множество свободных лицензий и различные варианты их использования. Наибольшее распространение получили следующие виды свободных лицензий [4]:
1. Универсальная общественная лицензия GNU (GNU General Public License, сокращенно GPL). Разрешает свободное использование, модифицирование, копирование исходных кодов программных продуктов, попадающих под ее область действия (в том числе и в коммерческих целях).
2. Программная лицензия университета Беркли (Berkeley Software Distribution, сокращенно BSD). Также предоставляет право неограниченного использования в сторонних разработках, но, в отличие от GPL, позволяет в дальнейшем сделать продукт закрытым. То есть лицензия BSD налагает меньше ограничений на пользователя, чем даже обычный copyright. Поэтому в некотором смысле использование этой лицензии ближе к помещению программы в категорию общественного достояния.
3. Artistic, Apache, LGPL (Lesser GPL – облегченная версия GPL), MIT/X11, ZPL и др. в той или иной степени дополняют изложенные выше требования одной или другой лицензии.
4. Mozilla Public License – MPL используется в качестве лицензии для Mozilla Suite, Mozilla Firefox, Mozilla Thunderbird и других программ, разработанных в рамках проекта Mozilla. Она также была адаптирована другими разработчиками, в особенности Sun Microsystems, в качестве лицензии (Common Development and Distribution License) для Open Solaris, версии Solaris с открытыми исходниками. Исходный код, скопированный или изменённый под лицензией MPL, должен быть лицензирован по правилам MPL. В отличие от более строгих свободных лицензий, код под лицензией MPL может быть объединен в одной программе с проприетарными файлами.
Для проведения сравнительного анализа условий лицензий и последующего экспертного исследования были сформированы основные требования, предъявляемые к условиям лицензирования. Полученные результаты отображены в табл. 1, где указано о наличии или отсутствии в лицензии тех или иных требований.
Таблица 1
Сравнительный анализ основных свободных лицензий
Лицензия |
GPL |
BSD |
MIT |
Mozillapubliclicense |
Apachesoftwarelicense |
Указание авторского права |
Да |
Да |
Да |
Да |
Да |
Маркировка измененных файлов |
Да |
Нет |
Нет |
Да |
Нет |
Наименование производной лицензии должно отличаться исходной |
Нет |
Нет |
Нет |
Нет |
Да* |
Производнаялицензиядолжна распространяться на условиях исходной |
Да |
Нет |
Нет |
Да** |
Нет |
Территориальная принадлежность предоставления лицензии |
Нет |
Нет |
Нет |
Да |
Нет |
Отсутствие гарантий на ПО |
Да |
Да |
Да |
Да |
Да |
Право интеграции лицензии |
Нет |
не указано |
не указано |
Да |
не указано |
* Если нет письменного разрешения об использовании наименования продукта создателей лицензии.
** В данном случае речь идет об исходном коде программного обеспечения.
Для выбора наиболее существенных требований, предъявляемых к лицензиям, была проведена процедура ранжирования требований по степени значимости, для чего каждому требованию был присвоен порядковый номер – код требования, и ранги, значения которых присваивались в диапазоне от 1 до 7 (табл. 2).
Таблица 2
Присвоение ранга требования
Код |
Наименование требования |
X1 |
Указание авторского права |
X2 |
Маркировка измененных файлов |
X3 |
Наименование производной лицензии должно отличаться исходной |
X4 |
Производнаялицензиядолжна распространяться на условиях исходной |
X5 |
Территориальная принадлежность предоставления лицензии |
X6 |
Отсутствие гарантий на ПО |
X7 |
Право интеграции лицензии |
Результаты ранжирования представлены в табл. 3.
Таблица 3
Ранжирование требований к лицензиям
Эксперты |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
1 |
1 |
2 |
5 |
3 |
4 |
7 |
6 |
2 |
1 |
2 |
6 |
3 |
4 |
5 |
7 |
3 |
3 |
1 |
7 |
5 |
4 |
2 |
6 |
4 |
2 |
3 |
5 |
1 |
6 |
4 |
7 |
5 |
1 |
2 |
5 |
3 |
4 |
6 |
7 |
6 |
1 |
2 |
4 |
5 |
7 |
3 |
6 |
Sj , Сумма рангов |
9 |
12 |
32 |
20 |
27 |
37 |
39 |
Kj , коэф-т значимости |
0,262 |
0,238 |
0,079 |
0,174 |
0,119 |
0,039 |
0,023 |
Для выявления значимости каждого параметра определены коэффициенты значимости Kj по формуле:
, (1)
где m – количество экспертов, n – количество требований, Sj – сумма рангов.
Для выделения из n требований наиболее значимых, определяем порог значимости коэффициентов: Kj≥ 1/n(n=7), т.е.Kj ≥ 1/7=0,142.
Исходя из значений коэффициента значимости Kj , в табл. 3. видно, что действительно значимыми требованиями при выборе лицензий для ПО с открытым кодом являются: X1 – Указание авторского права, X2 – Маркировка измененных файлов, X4 – Производная лицензия должна распространяться на условиях исходной.
Предлагаемая модель оценки лицензий на свободно распространяемое ПО для получения достоверных результатов предполагает применение различных методов моделирования экспертного оценивания. Для данной модели применяется два метода – метод средних арифметических рангов (баллов) и метод медианных рангов. Такое решение находится в согласии с концепцией устойчивости, рекомендующей использовать различные методы для обработки одних и тех же данных с целью получения оптимальных выводов. Такие выводы соответствуют реальной действительности, в то время как заключения, меняющиеся от метода к методу, зависят от субъективизма исследователя, выбирающего метод обработки исходных экспертных оценок [8].
В итоге по каждому методу получаем отдельный результат, который сводится в общую таблицу и сравнивается для построения окончательного ранжирования и выведения соответствующего заключения.
В табл. 4. указаны ранги шести основных лицензий, присвоенные им каждым из 12 экспертов в соответствии с представлением экспертов о функциях и условиях распространения данных лицензий. При этом эксперт присваивает ранг 1 самому лучшему виду лицензии (проекту), который удобнее реализовать. Ранг 2 получает от эксперта второй по привлекательности проект, наконец, ранг 6 – наиболее сомнительный проект, который использовать стоит лишь в последнюю очередь).
Таблица 4
Экспертное оценивание методом ранжирования
№ эксперта |
GPL |
BSD |
MIT |
Mozillapubliclicense |
Apachesoftwarelicense |
LGPL |
1 |
1 |
2 |
5 |
3 |
6 |
4 |
2 |
2 |
1 |
6 |
4 |
5 |
3 |
3 |
1 |
2 |
4 |
3 |
6 |
5 |
4 |
3 |
2 |
4 |
1 |
5 |
6 |
5 |
1 |
2 |
6 |
3 |
4 |
5 |
6 |
2 |
1 |
6 |
4 |
5 |
3 |
∑ рангов |
10 |
10 |
31 |
18 |
31 |
26 |
Среднее арифметическое рангов |
1,666 |
1,666 |
5,166 |
3 |
5,166 |
4,333 |
Итоговый ранг по среднему арифметическому |
1 |
2 |
6 |
3 |
5 |
4 |
Медианы рангов |
1,5 |
2 |
5,5 |
3 |
5 |
4,5 |
Итоговый ранг по медианам |
1 |
2 |
5 |
3 |
5 |
4 |
Сравнение ранжировок по методу средних арифметических рангов имеет вид:
GPL>BSD>MPL>LGPL>ASL>MIT,
где проект GPLимеет превосходство над проектом BSD и так далее.
Аналогично проводим сравнение ранжировок по методу медиан:
GPL>BSD>MPL>LGPL>ASL>MIT,
где проекту GPL отдается наибольшее предпочтение из имеющихся лицензий.
Анализируя результаты работы экспертов (табл. 4), можно сделать следующее заключение: рассмотренный пример экспертных оценок демонстрирует сходство ранжирований, полученных по методу средних арифметических рангов и по методу медиан, а также эффективность их совместного применения.
Не вызывает сомнений тезис о том, что групповые экспертные оценки должны отражать согласованное мнение экспертов. При ранжировании объектов эксперты обычно расходятся во мнениях по решаемой проблеме. В связи с этим возникает необходимость количественной оценки степени согласия экспертов. Получение количественной меры согласованности мнений экспертов позволяет более обоснованно интерпретировать причины в расхождении мнений.
Следовательно, перед формированием групповой оценки необходимо выяснить, можно ли для этих целей использовать полученные в результате опроса индивидуальные оценки. Выясним этот вопрос с помощью рангового коэффициента конкордации. Этот коэффициент применим в тех случаях, когда результаты экспертного опроса представлены в ранговой шкале.
Проверка значимости коэффициента конкордации гарантирует получение статистически надежных результатов. Отклонения от среднего ранга и квадраты отклонений представлены в табл. 5.
Таблица 5
Исходные данные и промежуточные расчеты
№ эксперта |
GPL |
BSD |
MIT |
Mozillapubliclicense |
Apachesoftwarelicense |
LGPL |
1 |
1 |
2 |
5 |
3 |
6 |
4 |
2 |
2 |
1 |
6 |
4 |
5 |
3 |
3 |
1 |
2 |
4 |
3 |
6 |
5 |
4 |
3 |
2 |
4 |
1 |
5 |
6 |
5 |
1 |
2 |
6 |
3 |
4 |
5 |
6 |
2 |
1 |
6 |
4 |
5 |
3 |
∑ рангов |
10 |
10 |
31 |
18 |
31 |
26 |
Отклонение от среднего |
-11 |
-11 |
10 |
-3 |
10 |
5 |
Квадрат отклонений |
121 |
121 |
100 |
9 |
100 |
25 |
∑квадрата отклонений |
476 |
- |
- |
- |
- |
- |
Количество ранжируемых объектов n=6, количество экспертов m=6. Средний ранг равен:
, (2)
Используя итог суммы квадратов отклонений, окончательно получаем:
(3)
Для проверки значимости коэффициента конкордации вычислим статистику распределения критерия Пирсона :
(4)
Сравнение расчетного значения с табличным позволяет утверждать с вероятностью 95 %, что суждения экспертов являются согласованными [9, 10].
Заключение
Предлагаемая методология оценивания лицензий для получения более обоснованных результатов предполагает использование одновременно нескольких различных методов моделирования экспертных оценок. При анализе информации применяются два метода обработки данных: метод средних арифметических рангов (баллов) и метод медианных рангов. Кроме того, проводится проверка согласованности суждений экспертов. Экспертные оценки в сочетании с другими математико-статистическими методами являются важным инструментом совершенствования управления на всех уровнях.
Такой подход позволяет получить достоверный результат при выявлении наиболее предпочтительного в использовании вида лицензии для программного обеспечения с открытым кодом.
Рецензенты:
Пылькин А.Н., д.т.н., профессор, заведующий кафедрой вычислительной и прикладной математики ФГБОУ ВПО «РГРТУ», г. Рязань.
Костров Б.В., д.т.н., профессор, профессор кафедры электронно-вычислительных машин ФГБОУ ВПО «РГРТУ», г. Рязань.