Безопасность цифровых технологий

БЕЗОПАСНОСТЬ ЦИФРОВЫХ ТЕХНОЛОГИЙ

БЕЗОПАСНОСТЬ
ЦИФРОВЫХ ТЕХНОЛОГИЙ

English | Русский

Последний выпуск
№2(2025) Апрель - Июнь 2025

Обзор работ журнала Journal of Sys-tems and Software за 2012–2014 годы, посвященных анализу программного обеспечения

Выпуск № 3 (77) Июль - Сентябрь 2014
Авторы:

А.В. МАРКОВ ,
Д.О. РОМАННИКОВ ,
Аннотация
В данной работе приводится обзор наиболее интересных, с точки зрения авторов работ, опубликованных в журнале Journal of Systems and Software за 2012–2014 годы. Для анализа были выбраны работы по тестированию и разработке программного обеспечения, которые условно можно разделить на несколько групп: 1) работы по локализации ошибок; 2) работы по генерации тестов; 3) работы по построению моделей программ

и дальнейшего их численного анализа. В результате выполненного обзора работ можно сделать вывод: методы локализации ошибок основаны в основном на данных, полученных от результатов выполнения тестов и математической модели, построенной методом «среза пучка» или аналогами, позволяют достаточно точно определить содержащий ошибку оператор. В основе методов генерации тестов лежат различные модели, охватывающие программу полностью или частично, на основе которых составляется список тестов и тестовых данных. Также в данной статье рассмотрен ряд работ, посвященных статистическому анализу исходного кода программного обеспечения. Причем в нескольких работах в качестве эталона принимается рейтинг ответов на таких ресурсах, как StackOverflow.com, в других – анализ журналов с описанием ошибок. Также проанализирован ряд работ, в которых строится модель программы с целью получения каких-либо численных характеристик.
Ключевые слова: программное обеспечение, тестирование, формальная верификация, динамическая верификация, верификация, проверка моделей, модели программного обеспечения, графы, тотальная корректность программ, генерация тестов, локализации ошибок
А.В. МАРКОВ
630073, РФ, г. Новосибирск, пр. Карла Маркса, 20, Новосибирский государственный технический университет, аспирант кафедры автоматики. E-mail:
muviton3@gmail.com
Orcid:

Д.О. РОМАННИКОВ
630073, РФ, г. Новосибирск, пр. Карла Маркса, 20, Новосибирский государственный технический университет, кандидат технических наук, старший преподаватель кафедры автоматики. E-mail:
rom2006@gmail.com
Orcid:

Список литературы
1. Hoyos J.R., García-Molina J., Botía J.A. A domain-specific language for context modeling in context-aware systems // Journal of systems and software. – 2013. – Vol. 86, iss. 11. – P. 2890–2905. – doi: 10.1016/j.jss.2013.07.008.

2. A design rule language for aspect-oriented programming / A.C. Neto, R. Boni-fácio, M. Ribeiro, C.E. Pontual, P. Borba, F. Castor // Journal of systems and software. – 2013. – Vol. 86, iss. 9. – P. 2333–2356. – doi: 10.1016/j.jss.2013.03.104.

3. Perez A., Abreu R., Riboira A. A dynamic code coverage approach to maximize fault localization efficiency // Journal of systems and software. – 2014. – Vol. 90. – Р. 18–28. – doi: 10.1016/j.jss.2013.12.036.

4. Diaz J., Arroyo D., Rodriguez F.B. A formal methodology for integral security design and verification of network protocols // Journal of systems and software. – 2014. – Vol. 89. – Р. 87–98. – doi: 10.1016/j.jss.2013.09.020.

5. Frantz R.Z., Corchuelo R., Molina-Jiménez C. A proposal to detect errors in Enterprise Application Integration solutions // Journal of systems and software. – 2012. – Vol. 85, iss. 3. – Р. 480–497. – doi: 10.1016/j.jss.2011.10.048.

6. Burgstaller B., Scholz B., Blieberger J. A symbolic analysis framework for static analysis of imperative programming languages // Journal of systems and software. – 2012. – Vol. 85, iss. 6. – Р. 1418–1439. – doi: 10.1016/j.jss.2011.11.1039.

7. InRob: An approach for testing interoperability and robustness of real-time embedded software / F. Mattiello-Francisco, E. Martins, A.R. Cavalli, E.T. Yano // Journal of systems and software. – 2012. – Vol. 85, iss. 1. – Р. 3–15. – doi: 10.1016/j.jss.2011.02.034.

8. An approach to testing commercial embedded systems / T. Yu, A. Sung,

W. Srisaan, G. Rothermel // Journal of systems and software. – 2014. – Vol. 88. –

Р. 207–230. – doi: 10.1016/j.jss.2013.10.041.

9. Sinha S., Harrold M.J., Rothermel G. Interprocedural control dependence // ACM Transactions on software engineering and methodology. – 2001. – Vol. 10, iss. 2. – P. 209–254. – doi: 10.1145/367008.367022.

10. Pachauri A., Srivastava G. Automated test data generation for branch testing using genetic algorithm: an improved approach using branch ordering, memory and elitism // Journal of systems and software. – 2013. – Vol. 86, iss. 5. – Р. 1191–1208. – doi: 10.1016/j.jss.2012.11.045.

11. Automatic testing environment for multi-core embedded software – ATEMES / C. Koong, C. Shih, P. Hsiung, H. Lai, C. Chang, W.C. Chu, N. Hsueh, C. Yang // Journal of systems and software. – 2012. – Vol. 85, iss. 1. – Р. 43–60. – doi: 10.1016/j.jss.2011.08.030.

12. Coding-error based defects in enterprise resource planning software: Prevention, discovery, elimination and mitigation / I. Woungang, F.O. Akinladejo, D.W. White, M.S. Obaidat // Journal of systems and software. – 2012. – Vol. 85, iss. 7. – Р. 1682–1698. – doi: 10.1016/j.jss.2012.02.034.

13. Coherent clusters in source code / S. Islam, J. Krinke, D. Binkley, M. Harman // Journal of systems and software. – 2014. – Vol. 88. – Р. 1–24. – doi: 10.1016/j.jss.2013.07.040.

14. Horwitz S., Reps T., Binkley D. Interprocedural slicing using dependence graphs // ACM Transactions on Programming Languages and Systems (TOPLAS). – 1990. – Vol. 12, iss. 1. – P. 26–60. – doi: 10.1145/77606.77608.

15. Ferrante J., Ottenstein K.J., Warren J.D. The program dependence graph and its use in optimization // ACM Transactions on Programming Languages and Systems (TOPLAS). – 1987. – Vol. 9, iss. 3. – P. 319–349. – doi: 10.1145/24039.24041.

16. Debroy V., Wong W. Combining mutation and fault localization for automated program debugging // Journal of systems and software. – 2014. – Vol. 90. – Р. 45–60. – doi: 10.1016/j.jss.2013.10.042.

17. Kolomvatsos K., Valkanas G., Hadjiefthymiades S. Debugging applications created by a domain specific language: the IPAC case // Journal of systems and software. – 2012. – Vol. 85, iss. 4. – Р. 932–943. – doi: 10.1016/j.jss.2011.11.1009.

18. HSFal: Effective fault localization using hybrid spectrum of full slices and execution slices / X. Ju, S. Jiang, X. Chen, X. Wang, Y. Zhang, H. Cao // Journal of systems and software. – 2014. – Vol. 90. – Р. 3–17. – doi: 10.1016/j.jss.2013.11.1109.

19. Kaminski G., Ammann P., Offutt J. Improving logic-based testing // Journal of systems and software. – 2013. – Vol. 86, iss. 8. – Р. 2002–2012. – doi: 10.1016/j.jss.2012.08.024.

20. Balsamo S., Harrison P.G., Marin A. Methodological construction of product-form stochastic Petri nets for performance evaluation // Journal of systems and software. – 2012. – Vol. 85, iss. 7. – Р. 1520–1539. – doi: 10.1016/j.jss.2011.11.1042.

21. On the relationship between comment update practices and software bugs / W.M. Ibrahim, N. Bettenburg, B. Adams, A.E. Hassan // Journal of systems and software. – 2012. – Vol. 85, iss. 10. – Р. 2293–2304. – doi: 10.1016/j.jss.2011.09.019.

22. Petri net based techniques for constructing reliable service composition /

G. Fan, H. Yu, L. Chen, D. Liu // Journal of systems and software. – 2013. – Vol. 86, iss. 4. – Р. 1089–1106. – doi: 10.1016/j.jss.2012.11.037.

23. Alama O., Adams B., Hassan A.E. Controversy Corner: Preserving knowledge in software projects // Journal of systems and software. – 2012. – Vol. 85, iss. 10. – Р. 2318–2330. – doi: 10.1016/j.jss.2012.03.028

24. Recovering test-to-code traceability using slicing and textual analysis /

A. Qusef, G. Bavota, R. Oliveto, A. De Lucia, D. Binkley // Journal of systems and software. – 2014. – Vol. 88. – Р. 147–168. – doi: 10.1016/j.jss.2013.10.019.

25. Slice-based statistical fault localization / X. Mao, Y. Lei, Z. Dai, Y. Qi,

C. Wang // Journal of systems and software. – 2014. – Vol. 89. – Р. 51–62. – doi: 10.1016/j.jss.2013.08.031.

26. Keivanloo I., Rilling J. Software trustworthiness 2.0 – A semantic web enabled global source code analysis approach // Journal of systems and software. – 2014. – Vol. 89. – Р. 33–50. – doi: 10.1016/j.jss.2013.08.030.

27. Towards automated debugging in software evolution: evaluating delta debugging on real regression bugs from the developers’ perspectives / K. Yu,

M. Lin, J. Chen, X. Zhang // Journal of systems and software. – 2012. – Vol. 85,

iss. 10. – Р. 2305–2317. – doi: 10.1016/j.jss.2011.10.016.

 
Просмотров аннотации: 1367
Скачиваний полного текста: 641
Просмотров интерактивной версии: 0