Description model of programming style ecosystem

In the process of developing and maintaining a software product, many things are created and used that are called software artefacts. Software artifacts are changed, reused, and change relationships in the development and maintenance processes of a software product. The complexity and variety of sof...

Повний опис

Збережено в:
Бібліографічні деталі
Дата:2020
Автори: Sydorov, N.A., Sydorova, N.N., Sydorov, E.N.
Формат: Стаття
Мова:Russian
Опубліковано: PROBLEMS IN PROGRAMMING 2020
Теми:
Онлайн доступ:https://pp.isofts.kiev.ua/index.php/ojs1/article/view/399
Теги: Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
Назва журналу:Problems in programming
Завантажити файл: Pdf

Репозитарії

Problems in programming
id pp_isofts_kiev_ua-article-399
record_format ojs
resource_txt_mv ppisoftskievua/53/4c77c7ca521f060a5249a7887937c453.pdf
spelling pp_isofts_kiev_ua-article-3992020-12-07T11:38:38Z Description model of programming style ecosystem Дескриптивная модель экосистемы стиля программирования Дескриптивна модель екосистеми стилю програмування Sydorov, N.A. Sydorova, N.N. Sydorov, E.N. software engineering; software artifact; programming; programming style; software ecosystem; ontology УДК 004.415.2.(043.3) инженерия программного обеспечения; артефакт программного обеспечения; программирование; стиль программирования; экосистема программного обеспечения; онтология УДК 004.415.2.(043.3) інженерія програмного забезпечення; артефакт програмного забезпечення; програмування; стиль програмування; екосистема програмного забезпечення; онтологія УДК 004.415.2.(043.3) In the process of developing and maintaining a software product, many things are created and used that are called software artefacts. Software artifacts are changed, reused, and change relationships in the development and maintenance processes of a software product. The complexity and variety of software artifact relationships require adequate means of description and management. They may be a software artifact ecosystem. In the article, for the first time, a concept of a software artifact ecosystem is proposed. The concept describes a generalized model of the software artifact ecosystem, which is the Cornerstone ecosystem type and consists of three actors – the platform, the software, and the artifact. The roles of actors in the ecosystem are indicated, the relationships between actors are described. As an example, based on the generalized model of the software artifact ecosystem, a declarative model of the programming style ecosystem has been developed.Problems in programming 2020; 2-3: 74-81 В процессах разработки и сопровождения программного продукта создается и используется множество вещей, которые называются артефактами программного обеспечения. Артефакты изменяются, повторно используются и меняют связи в процессах разработки и сопровождения программного продукта. Сложность и разнообразие связей артефактов программного обеспечения требуют адекватных средств описания и управления. Ими может быть экосистема артефактов программного обеспечения. В статье, впервые, предлагается концепция экосистемы артефакта программного обеспечения. В рамках концепции описана обобщенная модель экосистемы артефакта программного обеспечения, которая относится к типу Cornerstone и состоит из трех актеров: платформа, программное обеспечение и артефакт. Указаны роли актеров в экосистеме, описаны связи между актерами. Применение концепции показывается на примере экосистемы стиля программирования.Problems in programming 2020; 2-3: 74-81  У процесах розробки і супроводу програмного продукту створюється і використовується безліч речей, які називаються артефактами програмного забезпечення. Артефакти змінюються, повторно використовуються і змінюють зв’язки в процесах розробки і супроводу програмного продукту. Складність і різноманітність зв'язку артефактів програмного забезпечення вимагають адекватних засобів опису та управління. Таким засобом може бути екосистема артефактів програмного забезпечення. У статті, вперше пропонується концепція екосистеми артефакту програмного забезпечення. В рамках концепції описана узагальнена модель екосистеми артефакту програмного забезпечення, яка відноситься до типу Cornerstone і складається з трьох акторів: платформа, програмне забезпечення та артефакт. Вказані ролі акторів в екосистемі, описані зв'язки між акторами. Застосування концепції показується на прикладі екосистеми стилю програмування.Problems in programming 2020; 2-3: 74-81 PROBLEMS IN PROGRAMMING ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ ПРОБЛЕМИ ПРОГРАМУВАННЯ 2020-09-16 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/399 10.15407/pp2020.02-03.074 PROBLEMS IN PROGRAMMING; No 2-3 (2020); 74-81 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 2-3 (2020); 74-81 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 2-3 (2020); 74-81 1727-4907 10.15407/pp2020.02-03 ru https://pp.isofts.kiev.ua/index.php/ojs1/article/view/399/402 Copyright (c) 2020 PROBLEMS IN PROGRAMMING
institution Problems in programming
baseUrl_str https://pp.isofts.kiev.ua/index.php/ojs1/oai
datestamp_date 2020-12-07T11:38:38Z
collection OJS
language Russian
topic software engineering
software artifact
programming
programming style
software ecosystem
ontology
УДК 004.415.2.(043.3)
spellingShingle software engineering
software artifact
programming
programming style
software ecosystem
ontology
УДК 004.415.2.(043.3)
Sydorov, N.A.
Sydorova, N.N.
Sydorov, E.N.
Description model of programming style ecosystem
topic_facet software engineering
software artifact
programming
programming style
software ecosystem
ontology
УДК 004.415.2.(043.3)
инженерия программного обеспечения
артефакт программного обеспечения
программирование
стиль программирования
экосистема программного обеспечения
онтология
УДК 004.415.2.(043.3)
інженерія програмного забезпечення
артефакт програмного забезпечення
програмування
стиль програмування
екосистема програмного забезпечення
онтологія
УДК 004.415.2.(043.3)
format Article
author Sydorov, N.A.
Sydorova, N.N.
Sydorov, E.N.
author_facet Sydorov, N.A.
Sydorova, N.N.
Sydorov, E.N.
author_sort Sydorov, N.A.
title Description model of programming style ecosystem
title_short Description model of programming style ecosystem
title_full Description model of programming style ecosystem
title_fullStr Description model of programming style ecosystem
title_full_unstemmed Description model of programming style ecosystem
title_sort description model of programming style ecosystem
title_alt Дескриптивная модель экосистемы стиля программирования
Дескриптивна модель екосистеми стилю програмування
description In the process of developing and maintaining a software product, many things are created and used that are called software artefacts. Software artifacts are changed, reused, and change relationships in the development and maintenance processes of a software product. The complexity and variety of software artifact relationships require adequate means of description and management. They may be a software artifact ecosystem. In the article, for the first time, a concept of a software artifact ecosystem is proposed. The concept describes a generalized model of the software artifact ecosystem, which is the Cornerstone ecosystem type and consists of three actors – the platform, the software, and the artifact. The roles of actors in the ecosystem are indicated, the relationships between actors are described. As an example, based on the generalized model of the software artifact ecosystem, a declarative model of the programming style ecosystem has been developed.Problems in programming 2020; 2-3: 74-81
publisher PROBLEMS IN PROGRAMMING
publishDate 2020
url https://pp.isofts.kiev.ua/index.php/ojs1/article/view/399
work_keys_str_mv AT sydorovna descriptionmodelofprogrammingstyleecosystem
AT sydorovann descriptionmodelofprogrammingstyleecosystem
AT sydoroven descriptionmodelofprogrammingstyleecosystem
AT sydorovna deskriptivnaâmodelʹékosistemystilâprogrammirovaniâ
AT sydorovann deskriptivnaâmodelʹékosistemystilâprogrammirovaniâ
AT sydoroven deskriptivnaâmodelʹékosistemystilâprogrammirovaniâ
AT sydorovna deskriptivnamodelʹekosistemistilûprogramuvannâ
AT sydorovann deskriptivnamodelʹekosistemistilûprogramuvannâ
AT sydoroven deskriptivnamodelʹekosistemistilûprogramuvannâ
first_indexed 2025-07-17T09:55:58Z
last_indexed 2025-07-17T09:55:58Z
_version_ 1850410304442204160
fulltext Освітні та навчальні аспекти програмування © Н.А. Сидоров, Н.Н. Сидорова, Е.Н. Сидоров, 2020 74 ISSN 1727-4907. Проблеми програмування. 2020. № 2–3. Спеціальний випуск УДК 004.415.2. (043.3) https://doi.org/10.15407/pp2020.02-03.074 ДЕСКРИПТИВНАЯ МОДЕЛЬ ЭКОСИСТЕМЫ СТИЛЯ ПРОГРАММИРОВАНИЯ Н.А. Сидоров, Н.Н. Сидорова, Е.Н. Сидоров В процессах разработки и сопровождения программного продукта создается и используется множество вещей, которые называются артефактами программного обеспечения. Артефакты изменяются, повторно используются и меняют связи в процессах разработки и сопровождения программного продукта. Сложность и разнообразие связей артефактов программного обеспечения требуют адекватных средств описания и управления. Ими может быть экосистема артефактов программного обеспечения. В статье, впервые, предлагается концепция экосистемы артефакта программного обеспечения. В рамках концепции описана обобщенная модель экосистемы артефакта программного обеспечения, которая относится к типу Cornerstone и состоит из трех актеров: платформа, программное обеспечение и артефакт. Указаны роли актеров в экосистеме, описаны связи между актерами. Применение концепции показывается на примере экосистемы стиля программирования. Ключевые слова: инженерия программного обеспечения, артефакт программного обеспечения, программирование, стиль программирования, экосистема программного обеспечения, онтология. У процесах розробки і супроводу програмного продукту створюється і використовується безліч речей, які називаються артефактами програмного забезпечення. Артефакти змінюються, повторно використовуються і змінюють зв’язки в процесах розробки і супроводу програмного продукту. Складність і різноманітність зв'язку артефактів програмного забезпечення вимагають адекватних засобів опису та управління. Таким засобом може бути екосистема артефактів програмного забезпечення. У статті, вперше пропонується концепція екосистеми артефакту програмного забезпечення. В рамках концепції описана узагальнена модель екосистеми артефакту програмного забезпечення, яка відноситься до типу Cornerstone і складається з трьох акторів: платформа, програмне забезпечення та артефакт. Вказані ролі акторів в екосистемі, описані зв'язки між акторами. Застосування концепції показується на прикладі екосистеми стилю програмування. Ключові слова: інженерія програмного забезпечення, артефакт програмного забезпечення, програмування, стиль програмування, екосистема програмного забезпечення, онтологія. In the process of developing and maintaining a software product, many things are created and used that are called software artefacts. Software artifacts are changed, reused, and change relationships in the development and maintenance processes of a software product. The complexity and variety of software artifact relationships require adequate means of description and management. They may be a software artifact ecosystem. In the article, for the first time, a concept of a software artifact ecosystem is proposed. The concept describes a generalized model of the software artifact ecosystem, which is the Cornerstone ecosystem type and consists of three actors – the platform, the software, and the artifact. The roles of actors in the ecosystem are indicated, the relationships between actors are described. As an example, based on the generalized model of the software artifact ecosystem, a declarative model of the programming style ecosystem has been developed. Key words: software engineering, software artifact, programming, programming style, software ecosystem, ontology. Вступ В процессах разработки и сопровождения программного продукта создается и используется множество вещей, которые называются артефактами. Артефакты могут быть разными по форме и представлению. Они могут входить в состав программного продукта или обеспечивать процессы его разработки и сопровождения, быть промежуточными результатами процессов или входить в состав других артефактов. Таким образом, существует огромное разнообразие артефактов программного обеспечения, включающее, проектные планы, рабочие продукты (спецификации, архитектурный и детальный проекты, код, документация), пользовательские истории, отчеты об ошибках, инструменты, в том числе для обработки артефактов, но не ограниченное этим. Между артефактами устанавливаются разнообразные и часто сложные связи. Артефакты изменяются, повторно используются и меняют связи в процессах разработки и сопровождения программного продукта. Поэтому, артефакты играют важную роль в жизненном цикле программного обеспечения независимо от его модели и требуют внимания всех заинтересованных сторон. Стиль программирования, обеспечивая понятность исходного кода, является важным артефактом в условиях широко распространенного многократного и повторного использования программного обеспечения [1]. Применение стиля программирования требует особого внимания не только от разработчиков программного обеспечения, но и от менеджмента проекта. Это ведет к необходимости решения задач выбора или разработки стиля, его применения, анализа эффективности использования стиля и изменения [2]. Индустрия программного обеспечения постоянно развивается и меняется. Развиваются не только продукты и технологии, но многие компании разработчики программного обеспечения, экспериментируя с новыми бизнес-моделями, что иногда приводит к фундаментальным изменениям во всех отраслевых структурах как компании, так и ее клиента. В последнее время, многие компании используют для развития концепцию «экосистем программного обеспечения», создавая их вокруг себя или своих продуктов, с учетом связей клиентов. Экосистемы показали себя перспективным средством управления, эволюционирующим программным продуктом. Освітні та навчальні аспекти програмування 75 Сложность и разнообразие связей артефактов программного обеспечения требуют адекватных средств описания и управления. Ими может быть экосистема артефактов программного обеспечения. В такой экосистеме рассматривается более детальный уровень, чем в экосистеме программного обеспечения, однако на этом уровне может использоваться большинство походов, методов и инструментов, из тех, которые применяются в экосистеме программного обеспечения. В статье, впервые предлагается обобщенная модель артефакта программного обеспечения, применение которой показывается на примере экосистемы стиля программирования. В рамках концепции описана обобщенная модель экосистемы артефакта программного обеспечения, которая относится к типу Cornstoun ecosystem и состоит из трех актеров – платформа, программное обеспечение и артефакт. Указаны роли актеров в экосистеме, описаны связи между актерами. Типы, правила и атрибуты актеров, связей и действий могут уточняться для моделей конкретных экосистем атрибута программного обеспечения. Это же относится к удовлетворению требований для анализа свойств экосистемы. На основе обобщенной модели экосистемы артефакта программного обеспечения разработана декларативная модель экосистемы стиля программирования, который является артефактом, играющим важную роль в разработке и сопровождении программного обеспечения. Описание процессов создания и использования стиля программирования выполнено путем применения онтологии. Обзор литературы Артефакты программного обеспечения. В жизненном цикле программного обеспечения для обеспечения процессов создания и сопровождения программного продукта создается и используется множество разных вспомогательных вещей – артефактов. Артефакты создаются в доменном анализе или в других процессах жизненного цикла. В качестве артефактов рассматривается широкий спектр составляющих, от документации, рабочих продуктов и их частей, до вспомогательных инструментов. Взаимодействуя, артефакты обеспечивают эффективное выполнение процессов жизненного цикла. В работе [3] артефакты анализируются, в контексте повторного использования как оборудование в смысле работы [4]. При этом, рассматриваются три цели (написание, обработка и передача артефактов) и три аспекта оборудования (the in-order-to of equipment, readiness-to-hand, presence-and-hand). Кроме этого, так как артефакты анализируются как повторно используемые компоненты, которые встраиваются в создаваемый программный продукт, то принимаются во внимание их характеристики: холизм, общность, повторная используемость и зрелость. Рассматривая артефакт, как оборудование – вещь, встроенное в контекст программного продукта, исследуется взаимовлияние указанных характеристик артефактов программного. В работе [5] артефакты рассматриваются в контексте software product line и делятся на три типа – архитектура, разделяемые компоненты и компоненты, произведенные из разделяемых. Для каждого типа артефактов идентифицируется три уровня зрелости в зависимости от степени интеграции артефакта соответствующего типа в software product line. В работе [6] артефакты рассматриваются как информационные части, которые создаются, модифицируются и используются в процессах технологии RUP. Артефакты могут быть разных видов и принимать разные формы, от UML моделей до исполняемого кода, и могут использоваться в создании и сопровождении программного продукта. Артефакты являются входом и результатом действий в процессах RUP. При этом, основной задачей поддерживающего рабочего процесса Configuration & Change Management является управление артефактами, созданными членами команды, разрабатывающей проект. В работе [7] рассматриваются теоретические основы представления и интерпретации артефактов программного обеспечения. Исходя из различных уровней восприятия артефактов человеком - пользователем артефактов вводится три уровня представления артефактов – физический (физическое представление), структурный (синтаксическая структура) и семантический (семантический контент). Кроме этого вводится два шага обработки артефактов – синтаксический анализ физического представления (parsing), анализ синтаксической структуры – результата первого шага (interpretation). На основе уровней представления и шагов обработки строится мета модель артефактов. В работе [8] в качестве артефакта рассматривается документация программного обеспечения, которая определяется как средство представляющее информацию о программном обеспечении. Вводится модель сопровождения документации как артефакта программного обеспечения. В работе [9] рассматривается архитектура средств, обеспечивающих создание и сопровождение метаданных об артефактах программного обеспечения, которые образуют среду, состоящую из ресурсов – артефактов разработки. Средства используются для управления средой артефактов. К экосистеме артефактов программного обеспечения. Нам неизвестны работы, прямо посвященные рассмотрению задач, связанных с исследованием экосистем артефактов программного обеспечения. Однако, есть работы, результаты которых могут применяться для решения указанных задач. В работе [10], справедливо обращается внимание на то, что в экосистемах программного обеспечения сейчас внимание уделяется участникам только верхнего уровня – это, организации и команды, которые создают, внедряют и сопровождают программное продукты. Однако, имеет место нижний уровень – артефакты, роль которых в процессах жизненного цикла трудно переоценить. В работе [11] приводится множество требований для описания и Освітні та навчальні аспекти програмування 76 анализа экосистем программного обеспечения, которые используются в нашей статье для моделирования экосистем артефактов программного обеспечения. Обобщенная модель экосистемы артефакта программного обеспечения В этом разделе рассматривается обобщенная (generic) модель экосистемы артефакта программного обеспечения. Для моделирования экосистем программного обеспечения сейчас используется несколько методов [12]. Применение конкретного метода зависит от типа экосистемы и целей моделирования. Для представления экосистемы артефакта программного обеспечения используется i* метод [13]. В отличие, от наиболее часто используемого SSN метода, который ориентирован на описание экосистемы программного обеспечения на верхнем уровне (продукт, разработчик, поставщик, пользователь), i* метод обеспечивает описание экосистемы более детального уровня представления программного обеспечения, который соответствует уровню артефактов программного обеспечения. На рис. 1 методом i* показана обобщенная модель экосистемы артефакта программного обеспечения. Рис. 1 Обобщенная модель экосистемы артефакта программного обеспечения При проектировании экосистемы удовлетворяется две группы требований [11]: описательные и аналитические. К первой группе, относятся требования определения актеров, связей между ними и их действий. Кроме этого формулируются требования определения типов, правил и атрибутов актеров, связей и действий, а также требования определения специфических характеристик, как экосистемы в целом, так и ее элементов, например, продуктивность, эффективность, защищенность. Ко второй группе, относятся требования для определения характеристик, обеспечивающих анализ экосистемы от стимулов и мотивации до устойчивости и производительности. В табл. приведены актеры и роли в экосистеме артефакта программного обеспечения. Рассматриваемая экосистема относится к типу Cornerstone, так как основу экосистемы составляет технологическая платформа для разработки и сопровождения программного обеспечения, функциональность которой расширяется путем использования артефактов [14]. Таким образом, актерами экосистемы являются платформа с ролью управления, программное обеспечение с ролью программного продукта, артефакт с ролью поставщика сервиса поддержки. Таблица. Актеры и роли в экосистеме Тип экосистемы Актер Роль актера в экосистеме Cornstoun ecosystem Платформа (Platform) Управление (Orchestration) Программное обеспечение (Software) Продукт (Product) Артефакт (Artefact) Поставщик сервиса поддержки (Support service provider) Освітні та навчальні аспекти програмування 77 Между актерами можно указать общие связи. Платформа, в контексте которой рассматриваются такие составляющие как модель жизненного цикла, организационное и техническое обеспечение разработки и сопровождения, определяет и использует артефакт, как вспомогательное средство реализации процессов и заполнения структуры программного продукта. Программное обеспечение зависит от платформы, которая является основным средством реализации процессов разработки и сопровождения, и прямо, как компонент в структуре программного обеспечения или косвенно, как средство повышения эффективности процессов платформы использует артефакт. Типы, правила и атрибуты актеров, связей и действий могут уточняться для моделей конкретных экосистем атрибута программного обеспечения. Это же относится к удовлетворению требований для анализа свойств экосистемы [11]. Экосистема стиля программирования На сегодняшний день для создания и сопровождения продуктов программного обеспечения получили распространение методы и средства, которые основаны на многократном и повторном использовании. Применение этих методов и средств требует от разработчика чтения, анализа и понимания значительного количества представлений рабочих продуктов различных фаз жизненного цикла. Многократное и повторное использование сейчас распространено от спецификаций требований до исходных текстов и документации. Поэтому, к программному обеспечению, одним из главных, выдвигается требование понятности. Деятельность разработчика будет более эффективной, программное обеспечение понятным, а разработка и сопровождение дешевле, когда при создании программного обеспечения применяются стили (стандарты), обеспечивающих понятность рабочих продуктов разных фаз жизненного цикла [1]. На рис. 2 показана модель экосистемы стиля программирования, которая построена на основе обобщенной модели артефакта программного обеспечения (рис. 1). Рис. 2. Модель экосистемы стиля программирования Артефактом в этой модели является стиль программирования, а актер – программное обеспечение, - представляется той своей частью – исходным кодом, для которой применяется стиль программирования. Артефакт – стиль программирования определяется платформой, так как правила стиля зависят от ряда платформенных условий, например, языка программирования, целей менеджмента, сроков, рисков и бюджета проекта. В свою очередь, стиль программирования используется при создании исходного кода и влияет на эффективность процессов конструирования и сопровождения. Применение стиля программирования предусматривает реализацию двух процессов [2]: создание, в результате выполнения которого строится стиль языка программирования (programming language style) и использование стиля при написании программ. На рис. 3. показана онтология создания стиля программирования, которая детальнее описывает участников и действия, происходящие в связи с этим в экосистеме стиля программирования. Все концепты онтологии относятся к категории ресурсов в терминологии i*, за исключением концепта <<event>>, который представляет цель. При этом, концепты Coding phase, Party, Programming language относятся к актеру Platform, а концепты Creating work product style, Style party create guide, Style и Programming language style к актеру Programming style. Освітні та навчальні аспекти програмування 78 Has-Knowledge-in <<kind>> Coding phase <<category>> Party <<event>> Creating work products style <<associative>> Style party create guide 1 1 11 Is-part-of <<kind>> Team <<kind>> Person uses Is- created-according-to 1 ** Governs <<kind>> Programming language style * * Is-part-of 1 * <<kind>> Programming language <<category>> Style 1 1 Рис. 3. Онтология создания стиля программирования На рис. 4. показана онтология использования стиля программирования, которая также описывает соответствующих участников и действия в экосистеме стиля программирования. Концепты Party, Coding phase, принадлежат актеру Platform, концепты Program, Program style – актеру Software, а концепты Using work product style, Style party using guide, Program language style – актеру Programming style. Has-Knowledge-in <<kind>> Coding phase <<category>> Party <<kind>> Program <<kind>> Programming language style <<event>> Using work product style <<associative>> Style party using guide 1 1 1 1 Is-part-of Use <<kind>> Team <<kind>> Person 1 * uses Is- created-according-to 1 ** Governs aquire <<kind>> Program style 1 1 aquire <<kind>> Party style aquire 1 * Рис. 4. Онтология использования стиля программирования Освітні та навчальні аспекти програмування 79 Для реализации процессов создания и использования стиля программирования создаются инструменты, которые могут рассматриваться, с одной стороны, как ресурсы артефакта Programming style, а с другой стороны, как артефакты в составе артефакта Platform (рис. 5). К ним относятся база знаний стиля программирования и ризонер. Таким образом, программист, кодируя программу, применяет онтологию стиля программирования, как для изучения стиля, так и для проверки соблюдения стиля в программе. Поэтому нужны два средства – одно, для создания онтологии и поддержки программиста в процессе кодирования, а второе, для контроля за применением стиля программирования в исходном тексте программы [2]. Рис. 5. Схема использования инструментов Аналитик стиля, применяя Protégé, настраивает онтологию на соответствующий стиль программирования, создавая TBox (рис. 6). После настройки, программист, используя онтологию, с помощью Protégé знакомится со стилем программирования. Второе средство, функционально похож на ризонер, но добавляется функция идентификации ошибок соблюдения стиля (Style Errors). В терминах дескриптивной логики ризонер верифицирует совместимость онтологии. Рис. 6. База знаний стиля программирования Protégé используется для создания TBox, части онтологии, содержит термины, описывающие стиль программирования. Утверждения относительно исходного кода (ABox), написанного программистом, создаются соответствующей частью ризонером, поскольку она обеспечивает соответствующий сервис, применяя базу знаний (TBox и ABox). Сервис включает, во-первых, верификацию совместимости онтологии (прямая функция ризонера), а во-вторых, поиск стилистических ошибок в исходном тексте программы. Выводы 1. Впервые, предложена концепция экосистемы артефакта программного обеспечения. В рамках концепции описана обобщенная модель экосистемы артефакта программного обеспечения, которая относится к типу Cornstoun ecosystem и состоит из трех актеров –платформа, программное обеспечение и артефакт. Указаны роли актеров в экосистеме, описаны связи между актерами. Типы, правила и атрибуты актеров, связей и действий могут уточняться для моделей конкретных экосистем атрибута программного обеспечения. Это же относится к удовлетворению требований для анализа свойств экосистемы. 2. На основе обобщенной модели экосистемы артефакта программного обеспечения разработана декларативная модель экосистемы стиля программирования, который является артефактом, играющим важную роль в разработке и сопровождении программного обеспечения. Описание процессов создания и использования стиля программирования выполнено путем применения онтологии. Освітні та навчальні аспекти програмування 80 В продолжение описания экосистемы будет расширено описание актеров экосистемы стиля программирования и разработаны типы, правила и атрибуты актеров, связей и действий. Кроме этого, предполагается рассмотреть метрическое обеспечение экосистемы относительно определения эффективности, устойчивости и надежности экосистемы стиля программирования. Литература 1. Сидоров Н.А. Стилистика программного обеспечения. Проблеми програмування. 2018. 2, 3. С. 245–254 2. Sydorov N., Sydorova N., Sydorov E., Cholyshkina O., Batsurovska I. Development of the approach to using a style in software engineering, Eastern-European Journal of Enterprise Technologies. 2019. 4/2 ( 100 ) P. 41–51. 3. Nuwangi S.M. & Darshana S. (2015) Software artefacts as equipment: a new conception to software development using reusable software artefacts. Thirty-Sixth International Conference on Information Systems, 2015, Texas, USA. 4. Heidegger M. 1927/1962. Being and Time, Translated by John Macquarrie & Edward Robinson. USA: Harper & Row. 5. Bosch J. (2002) Maturity and Evolution in Software Product Lines: Approaches, Artefacts and Organization, Software Product Lines, Second International Conference, SPLC 2, San Diego, CA, USA, August 19–22, 2002. 6. Rational Unified Process: Best Practices for Software development Teams, Rational Software White Paper TP026B, Rev 11/01, 1998, 18 p. 7. Fernandez, D M., Bohm W., Broy M., (2018) Artefacts in Software Engineering: A Fundamental Positioning, International Journal on Software and Systems Modeling. 2018. 26. 9 p. 8. Glass R. Software maintenance documentation, SIGDOC '89, Pittsburg, Pennsylvania, USA, ACM Press. P. 18–23. 9. Dewar R.G. Managing Software Engineering Artefact Metadata, Department of Computer Science, Heriot-Watt University, Edinburgh, UK. 10. Seichter D., Dhungana D., Pleuss A., Hauptmann B. Knowledge Management in Software Ecosystems: Software Artefacts as First-class Citizens, ECSA 2010 August 23–26, 2010, Copenhagen, Denmark. P. 119–126. 11. Sadi M., Yu E. (2015) Designing Software Ecosystems: How Can Modeling Techniques Help?, Springer-Verlag, Berlin Heidelberg 2015. 15 p. 12. Сидоров Н.А. Экология программного обеспечения. Інженерія програмного забезпечення, 2010. C. 53–61. 13. Yu E.: Modelling Strategic Relationships for Business Process Reengineering. Ph.D., thesis. Dept. of Computer Science, University of Toronto. 1995. 14. Knodel J., and Manikas K. Towards a typification of software ecosystems. In Fernandes et al. Software Business – 6th International Conference, ICSOB 2015, Braga, Portugal, June 10–12, 2015, Proceedings (2015), Vol. 210 of Lecture Notes in Business Information Processing, Springer. P. 60–65. References 1. Sydorov N.A. (2005) Software Stylistics, Problems of Programming. 2018. 2, 3. P. 245–254. 2. Sydorov N., Sydorova N., Sydorov E., Cholyshkina O., Batsurovska I. (2019) Development of the approach to using a style in software engineering, Eastern-European Journal of Enterprise Technologies. 2019. 4/2 (100). P. 41–51. 3. Nuwangi S.M. & Darshana S. (2015) Software artefacts as equipment: a new conception to software development using reusable software artefacts. Thirty-Sixth International Conference on Information Systems, 2015, Texas, USA. 4. Heidegger, M. (1927/1962) Being and Time, Translated by John Macquarrie & Edward Robinson. USA: Harper & Row. 5. Bosch J.,(2002) Maturity and Evolution in Software Product Lines: Approaches, Artefacts and Organization, Software Product Lines, Second International Conference, SPLC 2, San Diego, CA, USA, August 19-22, 2002. 6. Rational Unified Process: Best Practices for Software development Teams, Rational Software White Paper TP026B, Rev 11/01. 1998. 18 p. 7. Fernandez, D M., Bohm W., Broy M., (2018) Artefacts in Software Engineering: A Fundamental Positioning. International Journal on Software and Systems Modeling. 2018. 26. 9 p. 8. Glass, R. (1989) Software maintenance documentation, SIGDOC '89, Pittsburg, Pennsylvania, USA, ACM Press. P. 18–23. 9. Dewar, R.G., (2005) Managing Software Engineering Artefact Metadata, Department of Computer Science, Heriot-Watt University, Edinburgh, UK. 10. Seichter D., Dhungana D., Pleuss A., Hauptmann B. (2010) Knowledge Management in Software Ecosystems: Software Artefacts as First-class Citizens, ECSA 2010 August 23–26, 2010, Copenhagen, Denmark. P. 119–126. 11. Sadi M., Yu E. (2015) Designing Software Ecosystems: How Can Modeling Techniques Help?, Springer-Verlag, Berlin Heidelberg 2015. 15 p. 12. Sydorov N. (2010) Software Ecology, Software Engineering. 2010. P. 53–61. 13. Yu E.: (1995) Modelling Strategic Relationships for Business Process Reengineering. Ph.D., thesis. Dept. of Computer Science, University of Toronto. (1995) 14. Knodel J., and Manikas K. (2015) Towards a typification of software ecosystems. In Fernandes et al. Software Business – 6th International Conference, ICSOB 2015, Braga, Portugal, June 10–12, 2015, Proceedings (2015), Vol. 210 of Lecture Notes in Business Information Processing, Springer. P. 60–65. Получено 17.03.2020 Об авторах: Сидоров Николай Александрович, доктор технических наук, профессор. Количество научных публикаций в общегосударственных базах данных – 18. Количество научных публикаций в международных базах данных – 2. https://orcid.org/0000-0002-3794-780X, https://www.researchgate.net/publication/242502052_Software_Product_Lines_Second_International_Conference_SPLC_2_San_Diego_CA_USA_August_19-22_2002_Proceedings https://www.researchgate.net/publication/242502052_Software_Product_Lines_Second_International_Conference_SPLC_2_San_Diego_CA_USA_August_19-22_2002_Proceedings javascript:void(0) https://www.researchgate.net/publication/242502052_Software_Product_Lines_Second_International_Conference_SPLC_2_San_Diego_CA_USA_August_19-22_2002_Proceedings https://www.researchgate.net/publication/242502052_Software_Product_Lines_Second_International_Conference_SPLC_2_San_Diego_CA_USA_August_19-22_2002_Proceedings Освітні та навчальні аспекти програмування 81 Сидорова Ника Николаевна, кандидат технических наук, доцент. Количество научных публикаций в общегосударственных базах данных – 15. Количество научных публикаций в международных базах данных – 7. https://orcid.org/0000-0002-2989-3637, Сидоров Евгений Николаевич, кандидат технических наук, доцент, старший инженер. Количество научных публикаций в общегосударственных базах данных – 13. Количество научных публикаций в международных базах данных – 5. https://orcid.org/0000-00022609-0230. Место работы авторов: National Technical University of Ukraine “Igor Sikorsky Kyiv Polytechnic Institute”. E-mail: nyksydorov@gmail.com. Тел.: 0677980361, Кафедра компьютерных и информационных технологий Межрегиональная академия управления персоналом 03039, г. Киев, Украина, ул. Фрометовская, 2. E-mail: nika.sidorova@gmail.com. Тел.: 0681006173, P&S Integrated Media Enterprise Avid Development GmbH Paul-Heyse-Straße, 29, München, Bavaria, 80336. E-mail: Eugen.sidorov@live.com https://orcid.org/0000-0002-2989-3637 https://orcid.org/0000-00022609-0230 https://scholar.google.com.ua/citations?view_op=view_org&hl=uk&org=5596117057032671997