Method of increasing the reliability of knowledge software-oriented systems due to code re-use mechanisms

Modern information technologies in the field of security and defense, Dec 2021

The possibilities of application of the code reuse mechanism in the process of designing and developing software of knowledge-oriented systems are considered. The necessity of a separate study of the issues of software development of analytical and information resources that provide support to all participants in the process of software development of knowledge-oriented systems is proved. The necessity of using the mechanisms of reuse of previously developed and verified program code as an element of the information resource is shown. In the framework of the developed method of increasing the reliability of knowledge-oriented systems software due to the mechanisms of code reuse, a new visual form of representation of function libraries in the form of a single software shell is proposed. As a basic tool for solving the problem of information resource development, it is proposed to use UML (Unified Modeling Language) - a unified modeling language, which is based on the paradigm of object-oriented programming. This choice is justified by the fact that UML is an integral part of a unified software development process and is essentially an open standard that uses graphical notation to create an abstract model of the system. The obtained theoretical provisions are reflected in a cross-cutting example, which reflects one of the possible options for organizing libraries of functions as an element of the information resource. Diagrams of use cases, interaction diagrams, sequence diagrams, class diagrams are developed and substantiated. Based on the obtained practical results, a block diagram of the method is proposed, which, in contrast to existing solutions, includes a procedure for making corrections for basic UML diagrams according to the requirements of programming environments.

Article PDF cannot be displayed. You can download it here:

https://sit.nuou.org.ua/article/download/243223/244062

Method of increasing the reliability of knowledge software-oriented systems due to code re-use mechanisms

Intelligent IT and robotics in the field of Security and Defense DOI:10.33099/2311-7249/2021-42-3-45-54 УДК: 004.054 Ігор Анатолійович Костюк (доктор філософії) 1 Максим Анатолійович Павленко (доктор технічних наук, професор) 2 Сергій Валерійович Осієвський (кандидат технічних наук) 2 Олексій Юрійович Несміян (кандидат технічних наук) 2 1 2 Національний університет оборони України імені Івана Черняховського, Київ, Україна Харківський національний університет повітряних сил імені Івана Кожедуба, Харків, Україна МЕТОД ПІДВИЩЕННЯ НАДІЙНОСТІ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ ЗНАННЯ-ОРІЄНТОВАНИХ СИСТЕМ ЗА РАХУНОК МЕХАНІЗМІВ ПОВТОРНОГО ВИКОРИСТАННЯ КОДУ Розглянуті питання можливості застосування механізму повторного використання коду в процесі проектування та розробки програмного забезпечення знання-орієнтованих систем. Доведена необхідність окремого дослідження питань розробки програмного забезпечення аналітичного та інформаційного ресурсів, що забезпечують підтримку всіх учасників процесу розробки програмного забезпечення знання-орієнтованих систем. Показана необхідність використання механізмів повторного використання раніше розробленого і верифікованого програмного коду, як елементу інформаційного ресурсу. В рамках розробленого методу підвищення надійності програмного забезпечення знання-орієнтованих систем за рахунок механізмів повторного використання коду запропонована нова візуальна форма подання бібліотек функцій у вигляді єдиної програмної оболонки. В якості базового інструментарію вирішення завдання розробки інформаційного ресурсу запропоновано використовувати UML (Unified Modeling Language) – уніфіковану мову моделювання, в основу якої покладено парадигму об'єктно-орієнтованого програмування. Зазначений вибір обґрунтований тим, що UML є невід'ємною частиною уніфікованого процесу розробки програмного забезпечення та по суті являється відкритим стандартом, що використовує графічні позначення для створення абстрактної моделі системи. Отримані теоретичні положення відображені в наскрізному прикладі, що відображає однин з можливих варіантів організації бібліотек функцій як елементу інформаційного ресурсу. Розроблено та обґрунтовано діаграми варіантів використання, діаграми взаємодії, діаграми послідовності, діаграми класів. На основі отриманих практичних результатів запропоновано структурну схему методу, яка, на відміну від існуючих рішень включає процедуру вироблення коректур для основних UML-діаграм за вимогами середовищ програмування. Ключові слова: UML-діаграма, програмне забезпечення, програмний код, інформаційний ресурс, клас, функція, модель. Вступ Постановка проблеми. Програмне забезпечення знання-орієнтованих інформаційних систем (ЗОІС), характеризується орієнтацією на предметну область для якої вона розробляється та, відповідно, реалізацією складних математичних моделей (досить часто унікальних та характерних лише для певної предметної області), які є алгоритмічним поданням реальних фізичних процесів. Нерідко, реальні завдання, вирішення яких необхідно реалізувати в ЗОІС потребують спільного застосування апарату декількох галузей знань, що суттєво ускладнює процес математичного опису і, як наслідок, програмної реалізації цих завдань. Крім цього, значна кількість логіко-математичних моделей будуються на алгебраїчних виразах, що вимагає застосування різних методів обчислювальної математики для можливості отримання по ним чисельних розрахунків, що вимагає наявності професійних знань методів обчислювальної математики та має вирішальне значення в програмній реалізації зазначених математичних моделей [1,2]. Тобто, розробка програмного забезпечення ЗОІС полягає не лише в програмній реалізації складних прикладних функцій, що дозволяють реалізувати функціональність системи, а й в розробці численних програмних механізмів які забезпечують надійність і коректність © І.А.Костюк, М.А.Павленко, С.В.Осієвський, О.Ю.Несміян Modern Information Technologies in the Sphere of Security and Defence № 3 (42)/2021 ISSN 2311-7249 (Print)/ISSN 2410-7336 (Online) 45 Інтелектуальні ІТ та робототехніка у сфері безпеки та оборони обчислювального процесу, зручний інтерфейс користувача, раціональне використання обчислювальних ресурсів, сумісну взаємодію різнотипних програмних додатків в рамках єдиного проекту. Крім цього, програмна реалізація математичних моделей, передбачає наявність знань розробниками відповідних прикладних теорій пов’язаних зі специфічністю предметних областей. Сформована на сьогоднішній день практика розробки програмного забезпечення передбачає розмежування сфер відповідальності в процесі розробки програмного забезпечення. Тобто розробники програмного забезпечення повинні в першу чергу відповідати за реалізацію спільних програмних механізмів, що забезпечують коректну поведінку програми в рамках відповідної операційної системи, а також коректну взаємодію програмних блоків між собою, а завдання створення програмних алгоритмів, що реалізують необхідні логіко-математичні моделі, виноситься в окрему задачу, яка вирішується інженерами зі знань, архітекторами та експертами. Висока трудомісткість і наукоємність даного процесу, а також необхідність забезпечення взаємодії фахівців в різних областях знань призводить до значних витрат на даний процес. Саме зазначена обставина, в першу чергу, говорить про необхідність використання механізмів повторного використання раніше розробленого і верифікованого програмного коду, як елементу інформаційного ресурсу. Іншими словами, процес розробки ЗОІС, із застосуванням будь-якого з існуючих на сьогоднішній день підходів до проектування і створення програмної продукції є надзвичайно складним і трудомістким процесом. Незважаючи на те, що нові підходи до програмування дозволяють, з одного боку, суттєво підвищувати ефективність розробки програмного забезпечення, з іншого боку, постійно зростаючі вимоги до функціональної складності, можливостям міжпрограмної взаємодії, ергономіки і т.д. зазначеного класу систем вимагають все більш тривалих термінів їх розробки. Аналіз останніх досліджень і публікацій. З метою зниження витрат часу на розробку програмної продукції, з моменту появи перших підходів до програмування, стали використовуватися і розвиватися так звані механізми повторно використовуваного коду [3-5]. Сутність цих механізмів полягає в ідеї, повторного використання в нових розробках раніше розробленого програмного коду. В даний час до механізмів повторно використовуваного коду відносять бази або бібліотеки функцій, процедур, класів, об'єктів і агентів. Для позначення більш загальної категорії, що термінологічно об'єднує вище зазначені бази і бібліотеки, в роботі введено термін “інформаційний ресурс”. Слід зазначити, що при розробці прикладного програмного забезпечення загального призначення 46 ISSN 2311-7249 (Print) / ISSN 2410-7336 (Online) (такого, що не містить елементів інтелектуальних систем) прийнято використовувати інформаційноаналітичний ресурс, що містить теоретичні описи завдань з використанням положень відомих методологій та їх п (...truncated)


This is a preview of a remote PDF: https://sit.nuou.org.ua/article/download/243223/244062
Article home page: https://sit.nuou.org.ua/article/view/243223/244062

Ігор Костюк, Максим Павленко, Сергій Осієвський, Несміян Олексій. Method of increasing the reliability of knowledge software-oriented systems due to code re-use mechanisms, Modern information technologies in the field of security and defense, 2021, pp. 45-54,