Методики оценки качества программного обеспечения (выбор ПО для оценки).
Заказать уникальную дипломную работу- 41 41 страница
- 20 + 20 источников
- Добавлена 29.06.2024
- Содержание
- Часть работы
- Список литературы
1. ОСНОВЫ КВАЛИМЕТРИИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 4
1.1. Системно-кибернетический аппарат информационно-аналитического инструментария интеллектуальной рекомендательной системы поддержки принятия решений по выбору и оценке программного обеспечения 4
1.2. Основные показатели оценки качества программного обеспечения 10
1.3. Основные методы оценки качества программного обеспечения 13
1.4. Выводы и общая постановка задач 20
2. МЕТРИЧЕСКИЙ ПОДХОД К ОЦЕНКЕ КАЧЕСТВА
И ЕГО ЭТАПЫ 21
2.1. Испытания, тестирование и оценка 21
2.2. Шкалы и метрика сравнения по показателям 23
2.3. Вычисления показателей сходства и принятие решений 26
2.4. Выводы по второй главе 28
3. ВЫБОР ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ И ОЦЕНКА ЕГО КАЧЕСТВА НА ОСНОВЕ МЕТРИЧЕСКОГО ПОДХОДА 30
3.1. Пространство параметров оценки характеристик программного обеспечения научных расчетов и математического моделирования 30
3.2. Выбор программ и алгоритм расчета на основе метрического метода k-means 31
3.3. Результаты оценки качества программного обеспечения научных расчетов и математического моделирования 35
3.4. Выводы по третьей главе 36
Заключение 38
Библиографический список 39
Принятие решения осуществляется по минимуму показателя сходства с наилучшим образцом программного обеспечения и максимуму расстояния с наихудшим образцом. Например, как иллюстрировано на рис. 2.2.Рисунок 2.2 – Данные, формирующие два кластера программМерой близости (или подобия) двух точек, характеризующих параметры объекта или процесса в n- мерном пространстве признаков часто является квадрат евклидова расстояния между ними: (2.9)где dpq – квадрат евклидова расстояния между точкой pи точкой q;xpi– i-я координата образца p (аналогично для образца q);n – число признаков, характеризующих объект.2.4. Выводы по второй главеВ результате проведенных исследований во второй главе разработана методика оценки качества программного обеспечения на основе метрического подхода к классификации в n-мерном пространстве признаков и индикаторов качества программ.Целью испытаний, тестирования и оценки как оцениваемого программного обеспечения, так и его аналогов, является получение взаимного расположения сравниваемых объектов в метрическом пространстве их характеристик. Например, в результате экспертного оценивания формируются скалярные оценки единичных показателей, как результатов ответов на вопросы экспертами.Поэтому, в основе разрабатываемой методики оценка качества программного обеспечения лежит метод метрического сравнения оцениваемой программы с аналогами известного качества в многомерном пространстве их характеристик.Одним из распространённых и эффективных линейных методов классификации в многопараметрических пространствах, позволяющий учитывать значимость того или иного индикатора или характеристики, является метод k-means, применение на конкретных приложениях будет рассмотрено в главе 3.3. ВЫБОР ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ И ОЦЕНКА ЕГО КАЧЕСТВА НА ОСНОВЕ МЕТРИЧЕСКОГО ПОДХОДА3.1. Пространство параметров оценки характеристик программного обеспечения научных расчетов и математического моделированияВ качестве пространства параметров определено линейное евклидовое пространство из 12 параметров, приведенных на рис.2.1.В результате экспертного оценивания по каждому из двенадцати параметров для каждого программного обеспечения формируется вектор оценокего качества. Собственно качество задается совокупностью компонент данных векторов и соотношением между компонентами.Так как все оценки экспертов нормированы в единичный диапазон [0,1], и существует прямо пропорциональная зависимость оценка качества от величины каждой скалярной оценки, то чем выше интегральное качество по всем 12-ти параметрам, тем более оцениваемые объекты будут смещены к единичным вершинам 12-ти мерного гиперкуба.Математическим объектом, с помощью которого описывается совокупность оценок одного программного обеспечения (в пространстве R1) или множества программ (в пространстве Rn), является матрица вида (3.1)где – оценкаj-гопрограммного обеспеченияпоi-мупоказателю, N = 12. Дополнительной особенностью подготовки исходного пространства данных, является вторичная нелинейная нормировка оценок каждого эксперта в диапазон [0,1] на основе статистических характеристик собственного оценивания. Это преобразование осуществляется в соответствии с выражениями, содержащими функцию нелинейного преобразования: (3.2)где n – число компонент вектора оцениваемых параметров; si* – среднее значение i-го расстояния; i – стандартное отклонение значения i-го расстояния.3.2. Выбор программ и алгоритм расчета на основе метрического метода k-meansДля экспериментальной оценки качества программного обеспечения выбрано следующее программное обеспечение:Abaqus.Ansys.Nastran.Siemens NX.SolidWorks Simulation.LS Dyna.AnyLogic.DataMelt.FeynArts.FloEFD.ForecastPro.Gretl.LabVIEW.Maxima.Ngspice.Project Smeta CS.Reduce.SALOME.Scilab.Simintech.Каждое программное обеспечение оценено экспертами по 12-ти скалярным показателям, в результате чего получено исходное пространство распределения программных продуктов (рис. 3.1).Рисунок 3.1 – Исходное распределениепрограммных продуктов в 12-ти мерном пространстве оцениваемых скалярных характеристик (представлен 3-х мерных срез по 3-м показателям)Известно, что алгоритм k-средних эквивалентен слою Кохонена, поэтому применим его алгоритм для кластеризации программных продуктов, в соответствии со следующей последовательностью.1. Перед началом обучения, как в любой архитектуре нейронной сети, инициализируются весовые коэффициенты wij случайными числами в заданном диапазоне [0,1]. 2. Пусть на вход сети Кохонена подан первый входной вектор H1. В нашем случае это первый вектор-строка матрицы координат программ (на примере трехмерного пространства)Предполагается, что векторы в Hs предварительно нормируются и центрируются по правилу:где Mh – математическое ожидание в столбце Hs, h - среднеквадратическое отклонение компонент в столбце Hs.3. Вычислим расстояние между входным вектором H1 и вектором весов wij каждого выходного нейрона слоя Кохонена вычисляется как(3.3)4. В соответствии с выражением (3.3) вычисляются все расстояния (X,W) для всех n нейронов слоя Кохонена для всех координат образцов программного обеспечения.5. Выбирается нейрон, у которого выход di, i = 1,…n минимально: 6. Весовые коэффициенты wijвыигравшего нейрона корректируются в соответствии с выражением(3.4)где вектор координат программы в 3-х мерном пространстве ее оценок.Коррекцияосуществляется до достижения погрешности векторного отличия весовых и выходных векторов.7. Этапы 2-6 выполняются для всех вектор-строк матрицы В результате получает 3 центроида, соответствующих трем классам программных продуктов в трех градациях:1) Неудовлетворительное программное обеспечение;2) Программное обеспечение с посредственными характеристиками;3) Превосходное программное обеспечение.Данные центроиды отмечены на графике красными маркерами (рис. 3.2).Рисунок 3.2 – Исходное распределение программных продуктов и трех центроидов их качества в 12-ти мерном пространстве оцениваемых скалярных характеристик (представлен 3-х мерных срез по 3-м показателям)3.3. Результаты оценки качества программного обеспечения научных расчетов и математического моделированияВ качестве оцениваемого программного обеспечения научных расчетов и математического моделирования выбраны:Maple, Mathcad, Mathematica и MATLAB.В соответствии с алгоритмом k-средних или слоя Кохонена, оцениваемые программы параметризуются в 12-ти мерном пространстве экспертных оценок и их координаты подаются на кластеризованный (обученный) слой Кохоненаи определяется, какой нейрон, соответствующий трем центроидам окажется активирован: (3.5)В результате мы получаем оценку отнесения каждого из четырех программных продуктов к одному из центроидов, характеризующих качество программы (рис. 3.3).Рисунок 3.3 – Геометрическое представление результатов оценки качества программного обеспеченияПо расстоянию от центроидов к каждому программному обеспечению, установлена степень достоверности оценки качества программного обеспечения (табл. 3.1).Таблица 3.1 - Результаты оценки качества программного обеспечения научных расчетов и математического моделирования№ п/пОцениваемое программное обеспечениеКатегория оценкиСтепень доверия к оценке [0,1]MapleПосредственное0,74MathcadПревосходное0,82MathematicaПосредственное0,81MATLABПревосходное0,95Следует заметить, что полученные оценки относительны в части исходного пространства программ научных расчетов и математического моделирования, а также, в силу экспертного оценивания исходных признаков, еще и субъективны.3.4. Выводы по третьей главеВ результате проведенных исследований в третьей главе:1. На основе изотропного евклидового пространства равнозначных признаков и метрического подхода формализовано и построено пространство параметров оценки характеристик программного обеспечения научных расчетов и математического моделирования. Метрические методы основаны на количественной оценке статистической близости. В качестве изображения объекта принимается точка в пространстве признаков, мерой близости считается расстояние между точками.2. Осуществлен выбор программ и реализован алгоритм расчета на основе метрического метода k-means, при этом для ускорения вычислений, алгоритмическая реализация метода представлена эквивалентным слоем Кохонена. Расчеты реализованы в одной из оцениваемых программ – MATLAB2023b. 3. Получены результаты оценки качества программного обеспечения научных расчетов и математического моделирования, на тестовой выборке из четырех программ, которые показали высокую оценку системы MATLAB и Mathcad, при этом степень достоверности оценки системы Mathcad ниже чем MATLABи составляет 82 против 0,95.ЗаключениеСтратегической задачей в жизненном цикле современных информационных систем стало обеспечение качества программных средств и баз данных. Для решения такой задачи необходимо применение специализированных методик, разработанных в различное время. Разнообразие таких методик позволяет применять их на различных стадиях жизненного цикла программ - от начала разработки до сертификации программного обеспечения.В этих условиях, одним из направлений синтеза методики оценки качества программного обеспечениястал, реализованный в настоящей работе метрический подход на основе детерминированных методов классификации в пространстве индикаторов и признаков качественных и количественных показателей программ.В результате проведенных исследований в настоящей работе:проведен обзор основных показатели и методов оценки качества программного обеспечения, при этом математический аппарат инструментария интеллектуальных систем поддержки принятия решений по выбору и оценке программного обеспечения рассмотрен с позиций системного подхода;2) разработана методика оценки качества программного обеспечения на основе метрического подхода, в которой обоснованы шкалы, метрика сравнения по выбранным показателям, а также показатели сходства и принцип принятие решений;3) Проведеныэкспериментальные исследованияразработанной методики по данным показателей программного обеспечения научных расчетов и математического моделирования.Сформулированные задачи выполнены в полном объеме, цель дипломного проектирования достигнута.Библиографический списокАдаптивные информационные системы для поддержки принятия решений / А. Н. Целых. Л. А. Целых. С. А. Барковский; Южный федеральный университет. – Ростов-на-Дону; Таганрог: Издательство Южного федерального университета, 2018. 231 с.Aha D. W, Bankert R. L. A comparative evaluation of sequential feature selection algorithms. In Learning from data - artificial intelligence and statistics, chapter 19, pages 199-205. Springer, 2021.Спицнадель В. Н. Основы системного анализа: учеб. пособие. — СПб.: «Изд. дом Бизнесс-пресса, 2020. 326 с.Адаптивные информационные системы для поддержки принятия решений / А. Н. Целых. Л. А. Целых. С. А. Барковский; Южный федеральный университет. – Ростов-на-Дону; Таганрог: Издательство Южного федерального университета, 2018. 231 с.Боэг Дж. (2022). Новый стандарт требований к качеству. Программное обеспечение IEEE, 25(2), 57–63. https://doi.org/10.1109/MS.2008.30.Бирла С. и Йоханссон М. (2024). Требования к качеству для программно-зависимых критических с точки зрения безопасности систем История, текущее состояние и будущие потребности. Ученый-семантик. URL: http://pbadupws.nrc.gov/docs/ML1424/ML14247A205.pdf.(дата доступа: 15.05.2024).Анас Бассам Аль-Бадарин, Мохд Хасан Селамат, Джамиля Дин, Марзана А. Джабар, Шерзод Тураев. (2021). Оценка качества программного обеспечения: мнение пользователей. Международный журнал прикладной математики и информатики, 3 (5), 200–207. URL: https://www.academia.edu/6752159/Software_Quality_Evaluation_User_s_View(дата доступа: 15.05.2024).Дубов Ю.А., Травкин С.Н., Якимец В.Н. Многокритериальные модели формирования и выбора вариантов систем. - М.: Наука, 1986. 295 с.Вентцель Е.С. Теория вероятностей. - М.: Наука, 2005. 464 с.Бешелев С.Д., Гурвич Ф.Г. Математико-статистические методы экспертных оценок. - М.: Статистика, 2015. - 263 с.Резников Б.А. Системный анализ и методы системотехники: Методология системных исследований. Моделирование сложных систем: учебник. - М.: 2021. Ч.1. 522 с.Иванов А.В.Теория выбора и принятия решений. – М.: Наука, 2023. 227 с.Саати Т. Принятие решений при зависимостях и обратных связях: Аналитические сети. – М.: ЛКИ, 2008. 360 с.Спицнадель В. Н. Основы системного анализа: учеб. пособие. — СПб.: «Изд. дом Бизнесс-пресса, 2000. 326 с.Иванов О. В. Статистика. Ч. 1. Описательная статистика. Теоретико-вероятностные основания статистического вывода – М.: 2020, 187с.3.18.Kohonen T., Honkela T. Kohonen Network, Scholarpedia, 2007, vol. 2, no. 1, p. 1568.Ростовцев В. С. Искусственные нейронные сети. 4-е изд. – СПб.: Лань. 2024. 216 с.Pedro Latorre Carmona, J. Salvador Sanchez Ana L.N. Fred. Mathematical Methodologies in Pattern Recognition and Machine Learning. Springer Proceedings in Mathematics & Statistics. Vol.30. 2022. 200 p.Романов П. С. Системы искусственного интеллекта. Моделирование нейронных сетей в системе MATLAB. – СПб.: Лань, 2022. 140 с.Сюй Алекс, Аминиан Али. SystemDesign. Машинное обучение. Подготовка к сложному интервью. – СПб.: Питер, 2024. 320 с.
2. Aha D. W, Bankert R. L. A comparative evaluation of sequential feature selection algorithms. In Learning from data - artificial intelligence and statistics, chapter 19, pages 199-205. Springer, 2021.
3. Спицнадель В. Н. Основы системного анализа: учеб. пособие. — СПб.: «Изд. дом Бизнесс-пресса, 2020. 326 с.
4. Адаптивные информационные системы для поддержки принятия решений / А. Н. Целых. Л. А. Целых. С. А. Барковский; Южный федеральный университет. – Ростов-на-Дону; Таганрог: Издательство Южного федерального университета, 2018. 231 с.
5. Боэг Дж. (2022). Новый стандарт требований к качеству. Программное обеспечение IEEE, 25(2), 57–63. https://doi.org/10.1109/MS.2008.30.
6. Бирла С. и Йоханссон М. (2024). Требования к качеству для программно-зависимых критических с точки зрения безопасности систем История, текущее состояние и будущие потребности. Ученый-семантик. URL: http://pbadupws.nrc.gov/docs/ML1424/ML14247A205.pdf. (дата доступа: 15.05.2024).
7. Анас Бассам Аль-Бадарин, Мохд Хасан Селамат, Джамиля Дин, Марзана А. Джабар, Шерзод Тураев. (2021). Оценка качества программного обеспечения: мнение пользователей. Международный журнал прикладной математики и информатики, 3 (5), 200–207. URL: https://www.academia.edu/6752159/Software_Quality_Evaluation_User_s_View (дата доступа: 15.05.2024).
8. Дубов Ю.А., Травкин С.Н., Якимец В.Н. Многокритериальные модели формирования и выбора вариантов систем. - М.: Наука, 1986. 295 с.
9. Вентцель Е.С. Теория вероятностей. - М.: Наука, 2005. 464 с.
10. Бешелев С.Д., Гурвич Ф.Г. Математико-статистические методы экспертных оценок. - М.: Статистика, 2015. - 263 с.
11. Резников Б.А. Системный анализ и методы системотехники: Методология системных исследований. Моделирование сложных систем: учебник. - М.: 2021. Ч.1. 522 с.
12. Иванов А.В. Теория выбора и принятия решений. – М.: Наука, 2023. 227 с.
13. Саати Т. Принятие решений при зависимостях и обратных связях: Аналитические сети. – М.: ЛКИ, 2008. 360 с.
14. Спицнадель В. Н. Основы системного анализа: учеб. пособие. — СПб.: «Изд. дом Бизнесс-пресса, 2000. 326 с.
15. Иванов О. В. Статистика. Ч. 1. Описательная статистика. Теоретико-вероятностные основания статистического вывода – М.: 2020, 187с.
16. 3.18. Kohonen T., Honkela T. Kohonen Network, Scholarpedia, 2007, vol. 2, no. 1, p. 1568.
17. Ростовцев В. С. Искусственные нейронные сети. 4-е изд. – СПб.: Лань. 2024. 216 с.
18. Pedro Latorre Carmona, J. Salvador Sanchez Ana L.N. Fred. Mathematical Methodologies in Pattern Recognition and Machine Learning. Springer Proceedings in Mathematics & Statistics. Vol.30. 2022. 200 p.
19. Романов П. С. Системы искусственного интеллекта. Моделирование нейронных сетей в системе MATLAB. – СПб.: Лань, 2022. 140 с.
20. Сюй Алекс, Аминиан Али. System Design. Машинное обучение. Подготовка к сложному интервью. – СПб.: Питер, 2024. 320 с.