Главная страница

Автоматик коде. СанктПетербургский государственный


Скачать 0.58 Mb.
НазваниеСанктПетербургский государственный
АнкорАвтоматик коде
Дата07.12.2022
Размер0.58 Mb.
Формат файлаdocx
Имя файлаAvtomaticheskoe_ispravlenie_oshibok_v_programmnom_kode.docx
ТипОбзор
#833783
страница8 из 8
1   2   3   4   5   6   7   8

Заключение


В ходе выполнения данной работы были получены следующие ре- зультаты.

  • Реализована генерация исправлений для новых классов ошибок, исправляемых вынесением первого утверждения функции перед вызывающим кодом.

  • Расширена и обучена новая модель корректного кода посредством добавления новых признаков для поддержки исправлений, изме- няющих код в 2 местах программы, и добавления новых примеров в тренировочный набор данных.

  • Выявлены самые значимые признаки успешных исправлений и проведен анализ влияния новых тренировочных примеров на па- раметры модели корректного кода.

В результате было расширено пространство генерируемых исправ- лений в инструменте Prophet[10] и исправлена ошибка из тестового на- бора данных. Исходный код данной работы представлен в репозитории проекта[22].

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


      1. Automated fixing of programs with contracts / Yi Wei, Yu Pei, Carlo A Furia et al. // Proceedings of the 19th international symposium on Software testing and analysis / ACM. 2010. P. 61– 72.

      2. Automatic error elimination by horizontal code transfer across multiple applications / Stelios Sidiroglou-Douskos, Eric Lahtinen, Fan Long, Martin Rinard // ACM SIGPLAN Notices / ACM. Vol. 50. 2015. P. 43–54.

      3. Automatic fix for C integer errors by precision improvement / Xi Cheng, Min Zhou, Xiaoyu Song et al. // Computer Software and Applications Conference (COMPSAC), 2016 IEEE 40th Annual / IEEE. Vol. 1. 2016. P. 2–11.

      4. Automatic repair of buggy if conditions and missing preconditions with SMT / Favio DeMarco, Jifeng Xuan, Daniel Le Berre, Martin Monperrus // Proceedings of the 6th International Workshop on Constraints in Software Testing, Verification, and Analysis / ACM. 2014. P. 30–39.

      5. Automatically patching errors in deployed software / Jeff H Perkins, Sunghun Kim, Sam Larsen et al. // Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles / ACM. 2009. P. 87–102.

      6. Cheng Xi. RABIEF: range analysis based integer error fixing // Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering / ACM. 2016. P. 1094–1096.

      7. De Moura Leonardo, Bjørner Nikolaj. Satisfiability modulo theories: introduction and applications // Communications of the ACM. 2011. Vol. 54, no. 9. P. 69–77.

      8. Fix Bug 54058, invalid utf-8 doesn’t set json_encode() in all cases. URL: https://github.com/php/php-src/search?q=ecb9d80&type= Commits.

      9. Long Fan, Rinard Martin. Staged program repair with condition synthesis // Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering / ACM. 2015. P. 166–178.

      10. Long Fan, Rinard Martin C. Automatic patch generation by learning correct code // POPL. 2016.

      11. Mechtaev Sergey, Yi Jooyong, Roychoudhury Abhik. Directfix: Looking for simple program repairs // Proceedings of the 37th International Conference on Software Engineering-Volume 1 / IEEE Press. 2015. P. 448–458.

      12. Mechtaev Sergey, Yi Jooyong, Roychoudhury Abhik. Angelix: Scalable multiline program patch synthesis via symbolic analysis // Software Engineering (ICSE), 2016 IEEE/ACM 38th International Conference on / IEEE. 2016. P. 691–701.

      13. Safe memory-leak fixing for c programs / Qing Gao, Yingfei Xiong, Yaqing Mi et al. // Software Engineering (ICSE), 2015 IEEE/ACM 37th IEEE International Conference on / IEEE. Vol. 1. 2015. P. 459–470.

      14. Samanta Roopsha, Olivo Oswaldo, Emerson E Allen. Cost- aware automatic program repair // International Static Analysis Symposium / Springer. 2014. P. 268–284.

      15. Semfix: Program repair via semantic analysis / Hoang Duong Thien Nguyen, Dawei Qi, Abhik Roychoudhury, Satish Chandra // Proceedings of the 2013 International Conference on Software Engineering / IEEE Press. 2013. P. 772–781.

      16. Weimer Westley, Fry Zachary P, Forrest Stephanie. Leveraging program equivalence for adaptive program repair: Models and first

results // Automated Software Engineering (ASE), 2013 IEEE/ACM 28th International Conference on / IEEE. 2013. P. 356–366.

      1. An analysis of patch plausibility and correctness for generate-and- validate patch generation systems / Zichao Qi, Fan Long, Sara Achour, Martin Rinard // Proceedings of the 2015 International Symposium on Software Testing and Analysis / ACM. 2015. P. 24–36.

      2. The source code of PHP interpreter. URL: https://github.com/ php/php-src.

      3. The strength of random search on automated program repair / Yuhua Qi, Xiaoguang Mao, Yan Lei et al. // Proceedings of the 36th International Conference on Software Engineering / ACM. 2014. P. 254–265.

      4. A systematic study of automated program repair: Fixing 55 out of 105 bugs for $8 each / Claire Le Goues, Michael Dewey-Vogt, Stephanie Forrest, Westley Weimer // Software Engineering (ICSE), 2012 34th International Conference on / IEEE. 2012. P. 3–13.

      5. A systematic study of automated program repair: Fixing 55 out of 105 bugs for $8 each / Claire Le Goues, Michael Dewey-Vogt, Stephanie Forrest, Westley Weimer // Software Engineering (ICSE), 2012 34th International Conference on / IEEE. 2012. P. 3–13.

      6. Исходный код инструмента Prophet с расширенным простран- ством исправляемых классов ошибок. URL: https://github. com/Guzele/prophet-src.

      7. Якимов Иван Александрович, Кузнецов Александр Сергеевич. По- иск недостающих вызовов библиотечных функций с использовани- ем машинного обучения // Труды института системного програм- мирования РАН. 2017. Т. 29, 6. С. 117–134.


Санкт-Петербург 2018


1   2   3   4   5   6   7   8


написать администратору сайта