📄Работа №216356

Тема: Разработка алгоритма для приоритизации дефектов программного обеспечения

📝
Тип работы Бакалаврская работа
📚
Предмет Информатика и вычислительная техника
📄
Объем: 44 листов
📅
Год: 2021
👁️
Просмотров: 7
Не подходит эта работа?
Закажите новую по вашим требованиям
Узнать цену на написание
ℹ️ Настоящий учебно-методический информационный материал размещён в ознакомительных и исследовательских целях и представляет собой пример учебного исследования. Не является готовым научным трудом и требует самостоятельной переработки.

📋 Содержание

Аннотация
Введение 5
Глава 1 Особенности приоритизации дефектов 7
1.1 Описание проблематики работы с дефектами 7
1.2 Жизненный цикл дефектов и их содержание 8
1.3 Анализ существующих работ по представленной проблеме 11
Глава 2 Разработка алгоритма приоритизации дефектов 15
2.1 Математическое описание и сравнительная характеристика
рекуррентных нейронных сетей 15
2.2 Программная реализация классификатора 19
2.3 Прототипирование программного интерфейса для алгоритма 31
Глава 3 Тестирование разработанного программного обеспечения 34
3.1 Описание разработанного программного обеспечения 34
3.2 Тестирование и оценка эффективности разработанного классификатора 35
Заключение 40
Список используемой литературы и используемых источников 41
Приложение А Структура алгоритма для приоритизации дефектов 44
Приложение Б Графическое представление обучаемой модели нейросети ... 45

📖 Введение

В машинном обучении классификация относится к задаче прогнозного моделирования, при решении которой метка класса прогнозируется для некоторого набора входных данных. Этот раздел машинного обучения достаточно проработан в теоретическом и практическом плане, поскольку проблема классификации находит применение в различных прикладных задачах. В качестве примера подобных задач можно привести задачи медицинской диагностики, оценки кредитоспособности заёмщиков, распознавания речи, а также классификации документов.
О классификации документов, а именно отчётов о дефектах программного обеспечения (ПО), и пойдет речь в данной выпускной квалификационной работе. Актуальность этой проблемы обусловлена тем, что поддержка программного обеспечения является неотъемлемой частью процесса его разработки. В частности, разрешение той или иной проблемы в ПО, на которую был заведён отчёт о дефекте, в значительной степени зависит от приоритета конкретного дефекта, заданного в системе отслеживания ошибок. Поскольку дефекты зачастую заводятся пользователями, то есть людьми, не обладающими специфическими техническими знаниями для объективной оценки возникшей проблемы, задача приоритизации дефектов ложится на плечи разработчиков ПО. В связи с этим, очевидной становится возможность автоматизации данного процесса.
В качестве объекта исследования выступает процесс определения приоритета дефектов ПО.
Предметом настоящего исследования является алгоритм классификатора для автоматизированной приоритизации дефектов ПО.
Целью данной работы является разработка алгоритма приоритизации дефектов ПО.
Для достижения вышеописанной цели необходимо решить следующие задачи:
1. Рассмотреть проблематику работы с дефектами ПО;
2. Провести анализ изученности представленной проблемы в научной и учебно-методической литературе;
3. Предложить способ осуществления автоматизации работы с дефектами ПО;
4. Выбрать подход к реализации алгоритма приоритизации дефектов ПО средствами машинного обучения;
5. Осуществить программную реализацию выбранного подхода;
6. Подготовить программный интерфейс для разработанного алгоритма;
7. Определить эффективность разработанного алгоритма;
8. Обобщив полученные экспериментальные результаты, сделать вывод об эффективности работы алгоритма.

Возникли сложности?

Нужна качественная помощь преподавателя?

👨‍🎓 Помощь в написании

✅ Заключение

В результате выполнения данной выпускной квалификационной работы была осуществлена реализация алгоритма для приоритизации дефектов программного обеспечения. В ходе его разработки были сделаны следующие выводы:
1. Рассмотрение предметной области, то есть вопросов разработки и сопровождения ПО, показало наличие зависимости перечисленных процессов от человеческого фактора, что обусловливает потребность в автоматизации таких процессов. Поэтому использование технологий машинного обучения в таких областях является перспективной и актуальной задачей.
2. В ходе анализа научных источников было выявлено, что несмотря на сравнительно высокую эффективность большинства используемых для задачи приоритизации классификаторов, наиболее эффективным из них оказались алгоритмы, основанные на использовании рекуррентных нейронных сетей.
3. Был проведён сравнительный анализ существующих РНС, из которых ввиду эффективности на больших объёмах текста был выбран LSTM.
4. В ходе реализации ПО было приведено последовательное описание алгоритма и процесса его разработки на языке Python.
5. Предложенное ПО было протестировано на предмет эффективности с помощью общеиспользуемых метрик для оценки качества классификации, в результате чего был сделан вывод о пригодности обученной модели к выполнению задачи приоритизации ввиду высоких значений метрик.
Перечисленные выше выводы позволяют заключить, что алгоритм в перспективе может успешно использоваться в качестве компонента систем, применяемых для автоматизации сопровождения ПО.

Нужна своя уникальная работа?
Срочная разработка под ваши требования
Рассчитать стоимость
ИЛИ

📕 Список литературы

1. Accuracy Paradox [Электронный ресурс] : Wikipedia. URL:
https://en.wikipedia.org/wiki/Accuracy paradox (дата обращения: 4.05.2021).
2. Aggraval M., Murty M.N. Machine Learning in Social Networks: Embedding Nodes, Edges, Communities, and Graphs // Google Книги. URL: https://cutt.ly/OnupXAf (дата обращения: 22.03.2021).
3. Arbel N. How LSTM networks solve the problem of vanishing gradients //
Data Driven Investor. URL: https://medium. datadriveninvestor. com/how-do-lstm- networks-solve-the-problem-of-vanishing-gradients-a6784971a577 (дата обращения: 26.03.2021).
4. Brownlee J. How to Diagnose Overfitting and Underfitting of LSTM models [Электронный ресурс] // URL: https: //machinelearningmastery.com/diagn ose-overfitting-underfitting-lstm-models/ (дата обращения: 7.05.2021).
5. Giordano D. 7 tips to choose the best optimizer [Электронный ресурс] // Towards Data Science. URL: https://towardsdatascience.com/7-tips-to-choose- the-best-optimizer-47bb9c1219e (дата обращения: 26.04.2021).
6. Javid A.M., Das S., Skoglund M., Chatterjee S. A ReLU Dense Layer to Improve the Performance of Neural Networks [Электронный ресурс] // arXiv.org. URL: https://arxiv.org/pdf/2010.13572.pdf (дата обращения: 22.04.2021).
7. Krizhevsky A., Sutskever I., Hinton G.E. ImageNet Classification with Deep Convolutional Neural Networks [Электронный ресурс] // URL: https://proceedings.neurips.cc/paper/2012/file/c399862d3b9d6b76c8436e924a68c4 5b-Paper.pdf (дата обращения: 15.04.2021).
8. Lin Z., Shu F., Yang Y. An Empirical Study on bug assignment
automation using Chinese bug data [Электронный ресурс] // URL: http://www.xuebalib.com/cloud/literature-3 ggDIF7j 50C.html (дата обращения: 05.03.2021).
9. Mani S., Sankaran A., Aralikatte R. Deep-Triage: Exploring the Effectiveness of Deep Learning for Bug Triaging // arXiv.org. URL: https://ar xiv.org/pdf/1801.01275.pdf (дата обращения: 12.03.2021).
10. Mihaylov M., Roper M. Predicting the Resolution Time and Priority of
Bug Reports: A Deep Learning Approach // Department of Computer and Informat ion Sciences, University of Strathclyde. 2019. URL: https ://local.cis. strath. ac. uk/w p/extras/msctheses/papers/strath cis publication 2727.pdf (дата обращения:
03.03.2021).
11. Pennington J., Socher J., Manning, C.D. GloVe: Global Vectors for Word Representation [Электронный ресурс] // Computer Science Department, Stanford University. URL: https://nlp.stanford.edu/pubs/glove.pdf (дата обращения: 12.04.2021).
12. Pretrained Word Embeddings [Электронный ресурс] : An Essential Guide to Pretrained Word Embeddings for NLP Practitioners. URL: https://www.analyticsvidhya.com/blog/2020/03/pretrained-word-embeddings-nlp (дата обращения: 11.04.2021).
13. Ramay W.Y., Umer Q., Yin X.C. Deep neural network-based severity
prediction of bug reports // IEEE Access. 2019. №7. URL:
https://ieeexplore.ieee.org/stamp/stamp.j sp?tp=&arnumber=8685106 (дата
обращения: 14.03.2021).
14. Sharma M., Bedi P., Chaturvedi K.K. и V.B. Singh. Predicting the
priority of a reported bug using machine learning techniques and cross project validation // IEEE Access. 12th International Conference on Intelligent Systems Design and Applications. 2012. URL:
https://ieeexplore.ieee.org/document/6416595 (дата обращения: 07.03.2021).
15. tf.keras.losses.CategoricalCrossentropy [Электронный ресурс] : TensorFlow Core v2.5.0. URL:
https://www.tensorflow.org/api docs/python/tf/keras/losses/CategoricalCrossentro py (дата обращения: 05.04.2021).
..20

🖼 Скриншоты

🛒 Оформить заказ

Работу высылаем в течении 5 минут после оплаты.

©2026 Cервис помощи студентам в выполнении работ