Будь ласка, використовуйте цей ідентифікатор, щоб цитувати або посилатися на цей матеріал: http://elartu.tntu.edu.ua/handle/lib/36387
Назва: Методи і засоби тестування програмного забезпечення комп’ютерних систем з використанням алгоритмів машинного навчання
Інші назви: Methods and tools for testing computer systems software based on machine learning algorithms
Автори: Цісарук, Дмитро Андрійович
Cisaruk, Dmytro Andriyovych
Приналежність: Тернопільський національний технічний університет імені Івана Пулюя. Факультет: комп’ютерно-інформаційних систем і програмної інженерії. Кафедра: комп’ютерних систем та мереж.
Бібліографічний опис: Цісарук Д. В. Методи і засоби тестування програмного забезпечення комп’ютерних систем з використанням алгоритмів машинного навчання : кваліфікаційна робота магістра за спеціальністю „123 — комп’ютерна інженерія“ / Д. В. Цісарук. — Тернопіль, 2021. — 90 с.
Bibliographic description: Tsisaruk D. Methods and tools for testing computer systems software based on machine learning algorithms. Ternopil, 2021. - 90
Дата публікації: гру-2021
Дата подання: гру-2021
Дата внесення: 17-гру-2021
Видавництво: Тернопільський національний технічний університет імені Івана Пулюя
Країна (код): UA
Місце видання, проведення: Тернопільський національний технічний університет імені Івана Пулюя
Науковий керівник: Луцків, Андрій Мирославович
Lutskiv, Andriy
Члени комітету: Дуда, Олексій Михайлович
Duda, Olexiy
УДК: 004.4
Теми: 123
комп’ютерна інженерія
метод
Кількість сторінок: 90
Короткий огляд (реферат): Метою роботи є дослідження методів і засобів тестування програмного забезпечення та імплементація алгоритмів машинного навчання для автоматичної класифікації вимог та прогнозування дефектів програмного коду У дослідженні проведено аналіз важливих понять, принципів і послідовності виконання процесів, що використовуються при проектуванні комп’ютерних систем, зокрема, термінологічні особливості у процесі імплементації програмного забезпечення на етапі тестування, що дало змогу зрозуміти і в подальшому визначити шляхи імплементації методів машинного навчання для підвищення ефективності виконання стадій життєвого циклу Запропоновано метод класифікації вимог до програмного забезпечення, що базується на методах машинного навчання і використовує чотири алгоритми: метод опорних векторів, наївний байєсовий класифікатор, логістична регресія та метод найближчих сусідів, а також техніки опрацювання тексту: «мішок слів», TF-IDF і χ 2 . Розроблено метод прогнозування дефектів програмного забезпечення у комп’ютерних системах, що використовує 6 алгоритмів машинного навчання і три набори дефектів і дає змогу забезпечити та передбачити з високою імовірністю можливість появи помилок у програмних модулях з врахуванням метрик програмного коду.
The aim of the work is to study the methods and means of software testing and implementation of machine learning algorithms for automatic classification of requirements and prediction of software code defects The study analyzes important concepts, principles and sequences of processes used in the design of computer systems, in particular, terminological features in the process of software implementation at the testing stage, which allowed to understand and further identify ways to implement machine learning methods to improve efficiency of life cycle stages The method of classification of software requirements based on machine learning methods and using four algorithms is proposed: the method of reference vectors, naive Bayesian classifier, logistic regression and the method of nearest neighbors, as well as word processing techniques: "word bag", TF-IDF and χ 2 . The method for predicting software defects in computer systems has been developed, which uses 6 machine learning algorithms and three sets of defects and makes it possible to provide and predict with a high probability the possibility of errors in software modules taking into account software code metrics.
Зміст: РОЗДІЛ 1 АНАЛІЗ ОСОБЛИВОСТЕЙ ПРОЦЕСУ ТЕСТУВАННЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ КОМП’ЮТЕРНИХ СИСТЕМ ...13 1.1. Аналіз основних понять та особливостей процесу тестування ПЗ КС ...13 1.2. Аналіз процесів життєвого циклу ПЗ КС ...15 1.3. Аналіз особливостей життєвого циклу тестування ПЗ ...19 1.4. Аналіз життєвого циклу помилок ...22 1.5. Класифікація методів тестування за способом його проведення ...24 1.5.1. Статичне тестування ...24 1.5.2. Динамічне тестування ...25 1.6. Висновки до розділу ...27 РОЗДІЛ 2 РОЗРОБКА МЕТОДІВ КЛАСИФІКАЦІЇ ВИМОГ ТА ПРОГНОЗУВАННЯ ДЕФЕКТІВ ПЗ З ВИКОРИСТАННЯМ АЛГОРИТМІВ МАШИННОГО НАВЧАННЯ ...28 2.1. Підходи і стратегії тестування ПЗ ...28 2.2. Розробка методу класифікації вимог до ПЗ з імплементацією методів машинного навчання на етапі тестування ...31 2.2.1. Нормалізація тексту вимог ...36 2.2.2. Векторизація тексту ...37 2.2.3. Обґрунтування вибору ознак вимог та алгоритмів класифікації вимог до ПЗ ...39 2.2.4. Алгоритм класифікації вимог до ПЗ ...41 2.3. Розробка методу прогнозування дефектів у програмному забезпеченні ...42 2.4. Метрики ефективності алгоритмів машинного навчання та імплементація процедури запропонованих методів при тестуванні ПЗ ...47 2.5. Висновки до розділу ...50 РОЗДІЛ 3 АПРОБАЦІЯ МЕТОДІВ МАШИННОГО НАВЧАННЯ ПРИ КЛАСИФІКАЦІЇ ВИМОГ ТА ПРОГНОЗУВАННІ ДЕФЕКТІВ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ КОМП’ЮТЕРНИХ СИСТЕМ ...51 3.1. Аналіз структури та даних при проведенні класифікації вимог до ПЗ ...51 3.2. Препроцесинг та векторизація тексту вимог до ПЗ...53 3.3. Оцінювання ефективності алгоритмів машинного навчання при класифікації вимог до ПЗ ... 60 3.4. Алгоритм і результати експериментальних досліджень при прогнозуванні дефектів ПЗ ... 66 3.5. Висновки до розділу ...70 РОЗДІЛ 4 ОХОРОНА ПРАЦІ ТА БЕЗПЕКА В НАДЗВИЧАЙНИХ СИТУАЦІЯХ ...71 4.1. Охорона праці ...71 4.2. Підвищення стійкості роботи об'єктів господарської діяльності у воєнний час ...74 ВИСНОВКИ ... 80 СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ ...82
URI (Уніфікований ідентифікатор ресурсу): http://elartu.tntu.edu.ua/handle/lib/36387
Власник авторського права: © Цісарук Дмитро Андрійович, 2021
Перелік літератури: 1. Бейзер Б. Тестування чорної скриньки. Технології функціонального тестування програмного забезпечення і систем. Питер, 2014. 320 с. 2. Майерс Г. Искусство тестирования программ, 3-е издание = The Art of Software Testing, 3rd Edition М.: «Диалектика». 2012. 272 с. 3. Синицын С. В. Верификация программного обеспечения. М.: БИНОМ, 2008. 368 с 4. Черный и белый ящик. URL: http://b-test.narod.ru/black_and_white_box.htm (дата звернення 11.9.2021 р.). 5. Lutskiv A. Adaptable Text Corpus Development for Specific Linguistic Research / Andriy Lutskiv, Nataliya Popovych // International Scientific-Practical Conference «Problems of Infocommunications. Science and Technology» (October 8-11, 2019), 2019. - C.217-223. 6. Lutskiv A. Big Data Approach to Developing Adaptable Corpus Tools /Andriy Lutskiv, Nataliya Popovych// Computational Linguistics and Intelligent Systems. Proc. 4thInt. Conf. COLINS 2020. Volume I:Workshop. Lviv, Ukraine, April23-24, 2020, CEUR-WS.org, online. pp.374-395. [Electronic resource] Access mode: URL: http://ceur-ws.org/Vol-2604/ 7. Lutskiv A. Big data-based approach to automated linguistic analysis effectiveness.//A. Lutskiv, N. Popovych/ IEEE Third International Conference on Data Stream Mining & Processing August 21-25, 2020, Lviv, Ukraine pp.438–443. DSMP 2020. 8. Lutskiv A. Corpus-Based Translation Automation in Adaptable Corpus Translation Module /Andriy Lutskiv, Roman Lutsyshyn// Computational Linguistics and Intelligent Systems. Proc. 5th Int. Conf. COLINS 2021. Volume I: Workshop. Lviv, Ukraine, April 22-23, 2021, CEUR-WS.org, online. pp.374-395. [Electronic resource] Access mode: URL: http://ceur-ws.org/Vol-2604/R. Malhotra, “A systematic review of machine learning techniques for software fault prediction,” Appl. Soft Comput.vol. 27. Feb. 2015. pp. 504–51883 9. L. Son et al., “Empirical Study of Software Defect Prediction: A Systematic Mapping,” Symmetry (Basel)., vol. 11, no. 2. 2019. p. 212. 10. A. Hudaib et al., “ADTEM-Architecture Design Testability Evaluation Model to Assess Software Architecture Based on Testability Metrics,” J. Softw. Eng. Appl., vol. 08, no. 04. 2015. pp.201–210. 11. Яцишин В.В., Шуптарський В.В., Цісарук Д.А. Алгоритми машинного навчання для сегментації користувачів у маркетингових комп’ютерних систем. Матеріали X міжнародної науково - технічної конференції молодих учених і студентів «Актуальні задачі сучасних технологій» (24-25 листопада 2021 р.) Тернопільського національного технічного університету імені Івана Пулюя. Тернопіль: ТНТУ. 2021. С. 145. 12. Луцків А.М., Цісарук Д.А., Шуптарський В.В. Аналіз життєвого циклу процесу тестування програмного забезпечення комп’ютерних систем. Матеріали ІХ науково-технічної конференції Тернопільського національного технічного університету імені Івана Пулюя «Інформаційні моделі, системи та технології» (8-9 грудня 2021 року). Тернопіль: ТНТУ. 2021. C. 142. 13. E. Shihab et al., “Studying re-opened bugs in open source software,” Empir. Softw. Eng., vol. 18, no. 5. 2013. pp. 1005–1042. 14. M. Shepperd, Q. Song, Z. Sun, and C. Mair, “Data Quality: Some Comments on the NASA Software Defect Datasets,” IEEE Trans. Softw. Eng., vol. 39, no. 9, pp. 2013. 1208–1215. 15. Python-recsys on Github. URL: https://github.com/ocelma/python-recsys (дата звернення 22.10.2021 р). 16. Preprocessing data. URL: https://scikit-learn.org/stable/modules/ preprocessing.html#preprocessing (дата звернення 02.10.2021 р.). 17. API reference. URL: https://pandas.pydata.org/docs/reference/index.html (дата звернення 10.09.2021 р.). 18. NumPy Reference. URL: https://numpy.org/doc/stable/reference/index.html (дата звернення 12.10.2021 р.)84 19. Shirkhorshidi A. S. Big data clustering: a review. International Conference on Computational Science and Its Applications. Springer, Cham, 2014. pp. 707-720. 20. Kurasova O. Strategies for big data clustering/ O. Kurasova et al. // 2014 IEEE 26th International Conference on Tools with Artificial Intelligence. IEEE, 2014. pp. 740- 747. 21. Lilleberg, J.; Zhu, Y.; Zhang, Y. Support vector machines and Word2vec for text classification with semantic features. In Proceedings of the 2015 IEEE 14th International Conference on Cognitive Informatics & Cognitive Computing (ICCI*CC), Beijing, China, 6–8 July 2015. pp. 136–140. 22. 3. Lima, M.; Valle, V.; Costa, E.; Lira, F.; Gadelha, B. Software Engineering Repositories: Expanding the PROMISE Database; XXXIII Brazilian Symposium on Software Engineering; SBC: Porto Alegre, Brasil, 2020. pp. 427–436. 23. Zubcoff, J.J.; Garrigós, I.; Casteleyn, S.; Mazón, J.; Aguilar, J.A.; Gomariz- Castillo, F. Evaluating differenti*-based approaches for selecting functional requirements while balancing and optimizing non-functional requirements: A controlled experiment. Inf. Softw. Technol. 2019. 106, pp. 68–84. 24. Abad, Z.S.H.; Karras, O.; Ghazi, P.; Glinz, M.; Ruhe, G.; Schneider, K. What Works Better? A Study of Classifying Requirements. arXiv 2017, arXiv:1707.02358. 25. Микитишин А.Г., Митник М.М., Стухляк П.Д. Комплексна безпека інформаційних мережевих систем: навчальний посібник. Тернопіль: Вид-во ТНТУ імені Івана Пулюя, 2016. 256 с. 26. НПАОП 0.00-7.15-18 «Вимоги щодо безпеки та захисту здоров’я працівників під час роботи з екранними пристроями». Київ. 2018. 27. Катренко Л.А., Катренко А.В. Охорона праці в галузі комп’ютинґу. Львів: Магнолія-2006. 2012. 544 с. 28. Желібо Е.Н. Безпека життєдіяльності: Навчальний посібник. Київ: «Каравела», Львів: «Новий світ - 2000». 2001. 320с.
Тип вмісту: Master Thesis
Розташовується у зібраннях:123 — комп’ютерна інженерія

Файли цього матеріалу:
Файл Опис РозмірФормат 
Cisaruk_D_A.pdf2,86 MBAdobe PDFПереглянути/відкрити
Авторська_довідка_Цісарук.docx19,49 kBMicrosoft Word XMLПереглянути/відкрити


Усі матеріали в архіві електронних ресурсів захищені авторським правом, всі права збережені.

Інструменти адміністратора