Розробка підходу до застосування стилю в інженерії програмного забезпечення

Автор(и)

  • Nikolay Sydorov Міжрегіональна академія управління персоналом вул. Фрометівська, 2, м. Київ, Україна, 03039, Україна https://orcid.org/0000-0002-3794-780X
  • Nika Sydorova Міжрегіональна академія управління персоналом вул. Фрометівська, 2, м. Київ, Україна, 03039, Україна https://orcid.org/0000-0002-2989-3637
  • Evgeny Sydorov P&S Integrated Media Enterprise Avid Development GmbH Paul-Heyse-Straße, 29, München, Germany, 80336, Німеччина https://orcid.org/0000-0002-2609-0230
  • Olha Cholyshkina Міжрегіональна академія управління персоналом вул. Фрометівська, 2, м. Київ, Україна, 03039, Україна https://orcid.org/0000-0002-0681-0413
  • Ilona Batsurovska Міжрегіональна академія управління персоналом вул. Фрометівська, 2, м. Київ, Україна, 03039, Україна https://orcid.org/0000-0002-8407-4984

DOI:

https://doi.org/10.15587/1729-4061.2019.175665

Ключові слова:

інженерія програмного забезпечення, шаблон стиля, онтологія, дескриптивна логіка, стиль програмування

Анотація

Розроблено підхід керованого онтологією застосування стилів в інженерії програмного забезпечення. Сутність підходу полягає у використанні онтології не тільки для представлення стилів, но також для контролю застосування стилів під час створення і супроводження програмного забезпечення. При цьому, для представлення стилю створюється відповідна онтологія та засоби підтримки розробника, а для контролю застосування стилю в робочих продуктах фаз життєвого циклу програмного забезпечення створюються засоби (ризонери) на основі онтологічної бази знань. За представленням у дескриптивній логікі база знань містить дві складові – термінологічну (TBox) та фактичну (ABox). Перша складова створюється заздалегідь, шляхом виконання доменного аналізу. Друга складова створюється під час аналізу представлення відповідного робочого продукту.

З метою типізації, в контексті підходу, що розроблено, створено шаблони стилю онтології ядра інженерії програмного забезпечення, шляхом аналізу поняття стилю в різних доменах. Сформульовані основні характеристики стилю як доменне незалежного поняття, які представлено в шаблонах. При цьому, для обрання кількості шаблонів, що необхідні для представлення стилю, застосовано паттерн Work Product Pattern Application з Unified Foundational Ontology. Паттерн описує дії, що можуть існувати відносно стилю робочого продукту (Work product).

Розглянуто приклад реалізації підходу, шляхом дослідження запропонованого методу, керованого онтологією застосування стилю програмування в інженерії програмного забезпечення та архітектури засобу, що його реалізує. З застосуванням Protege показано побудову онтології стиля програмування і асистування програмісту. Розроблено і реалізовано архітектуру засобу контролю застосування стилю в робочому продукті фази конструювання – тексті програми. Основу архітектури складає база знань про відповідний стиль. Термінологічна складова бази знань містить інформацію відносно мов і стилю програмування і створюється заздалегідь розробником онтології. Фактична складова створюється ризонером для кожного представлення робочого продукту – тексту програми.

Засоби, що створено в контексті запропонованого підходу, автоматизують процеси, які мають місце під час застосування стилів в робочих продуктах фаз життєвого циклу програмного забезпечення

Біографії авторів

Nikolay Sydorov, Міжрегіональна академія управління персоналом вул. Фрометівська, 2, м. Київ, Україна, 03039

Доктор технічних наук, професор, завідувач кафедри

Кафедра комп’ютерних і інформаційних технологій

Nika Sydorova, Міжрегіональна академія управління персоналом вул. Фрометівська, 2, м. Київ, Україна, 03039

Кандидат технічних наук, доцент

Кафедра комп’ютерних і інформаційних технологій

Evgeny Sydorov, P&S Integrated Media Enterprise Avid Development GmbH Paul-Heyse-Straße, 29, München, Germany, 80336

Кандидат технічних наук, доцент, старший основний інженер з програмного забезпечення

Olha Cholyshkina, Міжрегіональна академія управління персоналом вул. Фрометівська, 2, м. Київ, Україна, 03039

Кандидат технічних наук, декан

Ilona Batsurovska, Міжрегіональна академія управління персоналом вул. Фрометівська, 2, м. Київ, Україна, 03039

Доктор педагогічних наук, доцент

Кафедра інформаційної безпеки

Посилання

  1. Sidorov, N. (2006). Software stylistic. Problems of programming, 2-3, 245–254.
  2. Sidorova, N. (2015). Programming style ontologies and automated reasoning – systematic mapping study. Software Engineering, 3, 38–44.
  3. Boehm, B. (2007). Software Engineering. John Wiley & Sons, 832.
  4. Hazzan, O., Dubinsky, Y. (2009). Agile Software Engineering. Springer. doi: https://doi.org/10.1007/978-1-84800-198-5
  5. Behera, C. K., Bhaskari, D. L. (2015). Different Obfuscation Techniques for Code Protection. Procedia Computer Science, 70, 757–763. doi: https://doi.org/10.1016/j.procs.2015.10.114
  6. Weinberg, G. (1971). The Psychology of Computer Programming. Van Nostrand Reinhold, 276.
  7. Raijlich, V., Wilde, N., Buckellew, M., Page, H. (2001). Software cultures and evolution. Computer, 34 (9), 24–28. doi: https://doi.org/10.1109/2.947084
  8. Holovatyi, M. (2014). Multiculturalism as a means of nations and countries interethnic unity achieving. Economic Annals-XXI, 11-12, 15–18.
  9. Calero, C., Ruiz, F., Piattini, M. (Eds.) (2006). Ontologies for Software Engineering and Software Technology. Berlin, 343. doi: https://doi.org/10.1007/3-540-34518-3
  10. Pahl, C., Giesecke, S., Hasselbring, W. (2009). Ontology-based modelling of architectural styles. Information and Software Technology, 51 (12), 1739–1749. doi: https://doi.org/10.1016/j.infsof.2009.06.001
  11. Abuhassan, I., AlMashaykhi, A. (2012). Domain Ontology for Programming Languages. Journal of Computations & Modelling, 2 (4), 75–91.
  12. Sydorov, N. A., Sydorova, N. N., Mendzebryovsky, I. B. (2018). Software engineering ontologies categorization. Problems in Programming, 1, 55–64. doi: https://doi.org/10.15407/pp2018.01.055
  13. Suárez-Figueroa, M. C., Gómez-Pérez, A., Motta, E., Gangemi, A. (Eds.) (2012). Ontology Engineering in a Networked World. Berlin, 446. doi: https://doi.org/10.1007/978-3-642-24794-1
  14. Ghosh, M. E., Naja, H., Abdulrab, H., Khalil, M. (2016). Towards a Middle-out Approach for Building Legal Domain Reference Ontology. International Journal of Knowledge Engineering, 2 (3), 109–114. doi: https://doi.org/10.18178/ijke.2016.2.3.063
  15. Clark, P., Thompson, J., Porter, B. (2000). Knowledge patterns. KR, 591–600.
  16. Guizzardi, G., Wagner, G., Almeida, J. P. A., Guizzardi, R. S. S. (2015). Towards ontological foundations for conceptual modeling: The unified foundational ontology (UFO) story. Applied Ontology, 10 (3-4), 259–271. doi: https://doi.org/10.3233/ao-150157
  17. Skjæveland, M., Forssell, H., Klüwer, J., Lupp, D. (2017) Pattern-Based Ontology Design and Instantiation with Reasonable Ontology Templates. Workshop on Ontology Design and Patterns (WODP2017), 15.
  18. Department of Defense (2011). Data modelling guide (DMG) for an enterprise logical data model (ELDM). Version 2.3, USA, 184.
  19. Calvanese, D. (2003). Description logic for conceptual data modelling in UML. ESSLLI, 23.
  20. Sidorova, N. (2015). Ontology-Drived Method Using Programming Styles. Software Engineering, 2 (22), 19–28.
  21. Sidorova, N. (2015). Ontology-Driven Programming Style Assistant. Software Engineering, 2 (24), 10–19.
  22. Sidorov, N., Sidorova, N., Pirog, A. (2017). Ontology-driven tool for utilizing programming styles. Proceedings of the National Aviation University, 71 (2), 84–92. doi: https://doi.org/10.18372/2306-1472.71.11751
  23. Basili, V., Caldiera, G. (1994). Goal Question Metric Paradigm. Maryland, 60.
  24. Sidorov, N., Chomenko, V., Sidorov, E. (2008). Reengineering of the Legacy Software: the air simulator case study. Proceedings of the third world Congress "Aviation in the XXI–ST century, Safety in a aviation and space technology", 2, 33.88.–33.96.

##submission.downloads##

Опубліковано

2019-08-12

Як цитувати

Sydorov, N., Sydorova, N., Sydorov, E., Cholyshkina, O., & Batsurovska, I. (2019). Розробка підходу до застосування стилю в інженерії програмного забезпечення. Eastern-European Journal of Enterprise Technologies, 4(2 (100), 41–51. https://doi.org/10.15587/1729-4061.2019.175665