Ecosystem research in software engineering

The application of the concept of the ecosystem in the software engineering shows the existence of the same problems regarding the definition of the concept of the ecosystem and its use for research that still exists in ecology. Justification for applying the concept of the ecosystem in an area that...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Datum:2025
1. Verfasser: Sydorov, N.A.
Format: Artikel
Sprache:English
Veröffentlicht: PROBLEMS IN PROGRAMMING 2025
Schlagworte:
Online Zugang:https://pp.isofts.kiev.ua/index.php/ojs1/article/view/679
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Назва журналу:Problems in programming
Завантажити файл: Pdf

Institution

Problems in programming
id pp_isofts_kiev_ua-article-679
record_format ojs
resource_txt_mv ppisoftskievua/50/040096a72d3cc966f10667ac0b257e50.pdf
spelling pp_isofts_kiev_ua-article-6792025-04-16T13:57:48Z Ecosystem research in software engineering Екосистемні дослідження в інженерії програмного забезпечення Sydorov, N.A. software engineering; software ecosystem, software engineering ecosystem; software engineering ecosystem cycles УДК 681.5.004.4 інженерія програмного забезпечення; екосистема програмного забезпечення; екосистемаінженерії програмного забезпечення; екосистемні цикли інженерії програмного забезпечення УДК 681.5.004.4 The application of the concept of the ecosystem in the software engineering shows the existence of the same problems regarding the definition of the concept of the ecosystem and its use for research that still exists in ecology. Justification for applying the concept of the ecosystem in an area that differs significantly from the ecology area, as in our case, requires researchers to look for analogies. This primarily applies to landscape, energy and matter transfer chains (trophic chains) and nutritional cycles. Until such analogies will be found in software engineering, the ecosystem research is nothing more than system analysis, and the concept of the ecosystem is an attractive concept. The purpose of this position article is to draw the attention of the software engineering community to ecosystem research. Three concepts of ecosystems in ecology, software and software engineering are considered. The composition and essence of ecosystem research in the software engineering are given. The literature review of on the state of ecosystem research in the software was carried out.Problems in programming 2024; 4: 114-124 Застосування концепції екосистеми в інженерії програмного забезпечення показує існування тих самих проблем щодо визначення концепції екосистеми та її використання для досліджень, які все ще існують в екології. Обґрунтування застосування поняття екосистеми на території, яка суттєво відрізняється від території екології, як у нашому випадку, вимагає від дослідників пошуку аналогій. В першу чергу це стосується ландшафту, ланцюгів переносу енергії та речовини (трофічних ланцюгів) і циклів харчування. Поки такі аналогії не будуть знайдені в інженерії програмного забезпечення, дослідження екосистеми є не чим іншим, як системним аналізом, а концепція екосистеми є привабливою концепцією. Мета цієї позиційної статті — привернути увагу спільноти інженерії програмного забезпечення до дослідження екосистем. Розглянуто три концепції екосистем, а саме в екології, програмному забезпеченні та інженерії програмного забезпечення. Наведено склад та сутність екосистемних досліджень у інженерії програмного забезпечення. Проведено огляд літератури щодо стану екосистемних досліджень у інженерії програмного забезпечення.Problems in programming 2024; 4: 114-124 PROBLEMS IN PROGRAMMING ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ ПРОБЛЕМИ ПРОГРАМУВАННЯ 2025-04-16 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/679 10.15407/pp2024.04.114 PROBLEMS IN PROGRAMMING; No 4 (2024); 114-124 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 4 (2024); 114-124 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 4 (2024); 114-124 1727-4907 10.15407/pp2024.04 en https://pp.isofts.kiev.ua/index.php/ojs1/article/view/679/731 Copyright (c) 2025 PROBLEMS IN PROGRAMMING
institution Problems in programming
baseUrl_str https://pp.isofts.kiev.ua/index.php/ojs1/oai
datestamp_date 2025-04-16T13:57:48Z
collection OJS
language English
topic software engineering; software ecosystem
software engineering ecosystem; software engineering ecosystem cycles
УДК 681.5.004.4
spellingShingle software engineering; software ecosystem
software engineering ecosystem; software engineering ecosystem cycles
УДК 681.5.004.4
Sydorov, N.A.
Ecosystem research in software engineering
topic_facet software engineering; software ecosystem
software engineering ecosystem; software engineering ecosystem cycles
УДК 681.5.004.4
інженерія програмного забезпечення
екосистема програмного забезпечення
екосистемаінженерії програмного забезпечення
екосистемні цикли інженерії програмного забезпечення
УДК 681.5.004.4
format Article
author Sydorov, N.A.
author_facet Sydorov, N.A.
author_sort Sydorov, N.A.
title Ecosystem research in software engineering
title_short Ecosystem research in software engineering
title_full Ecosystem research in software engineering
title_fullStr Ecosystem research in software engineering
title_full_unstemmed Ecosystem research in software engineering
title_sort ecosystem research in software engineering
title_alt Екосистемні дослідження в інженерії програмного забезпечення
description The application of the concept of the ecosystem in the software engineering shows the existence of the same problems regarding the definition of the concept of the ecosystem and its use for research that still exists in ecology. Justification for applying the concept of the ecosystem in an area that differs significantly from the ecology area, as in our case, requires researchers to look for analogies. This primarily applies to landscape, energy and matter transfer chains (trophic chains) and nutritional cycles. Until such analogies will be found in software engineering, the ecosystem research is nothing more than system analysis, and the concept of the ecosystem is an attractive concept. The purpose of this position article is to draw the attention of the software engineering community to ecosystem research. Three concepts of ecosystems in ecology, software and software engineering are considered. The composition and essence of ecosystem research in the software engineering are given. The literature review of on the state of ecosystem research in the software was carried out.Problems in programming 2024; 4: 114-124
publisher PROBLEMS IN PROGRAMMING
publishDate 2025
url https://pp.isofts.kiev.ua/index.php/ojs1/article/view/679
work_keys_str_mv AT sydorovna ecosystemresearchinsoftwareengineering
AT sydorovna ekosistemnídoslídžennâvínženerííprogramnogozabezpečennâ
first_indexed 2025-07-17T10:08:16Z
last_indexed 2025-07-17T10:08:16Z
_version_ 1850411912171356160
fulltext 114 Програмна інженерія виробництва програмних продуктів © М. О. Сидоров, 2024 ISSN 1727-4907. Проблеми програмування. 2024. №4 УДК 681.5.004.4 http://doi.org/10.15407/pp2024.04.114 N. A. Sydorov ECOSYSTEM RESEARCH IN SOFTWARE ENGINEERING The application of the concept of the ecosystem in the software engineering shows the existence of the same problems regarding the definition of the concept of the ecosystem and its use for research that still exists in ecology. Justification for applying the concept of the ecosystem in an area that differs significantly from the ecology area, as in our case, requires researchers to look for analogies. This primarily applies to landscape, energy and matter transfer chains (trophic chains) and nutritional cycles. Until such analogies will be found in software engineering, the ecosystem research is nothing more than system analysis, and the concept of the eco- system is an attractive concept. The purpose of this position article is to draw the attention of the software engi- neering community to ecosystem research. Three concepts of ecosystems in ecology, software and software engineering are considered. The composition and essence of ecosystem research in the software engineering are given. The literature review of on the state of ecosystem research in the software was carried out. Keywords: Software engineering, software ecosystem, software engineering ecosystem, software engineering ecosystem cycles. М.О. Сидоров ЕКОСИСТЕМНІ ДОСЛІДЖЕННЯ В ІНЖЕНЕРІЇ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ Застосування концепції екосистеми в інженерії програмного забезпечення показує існування тих самих проблем щодо визначення концепції екосистеми та її використання для досліджень, які все ще існують в екології. Обґрунтування застосування поняття екосистеми на території, яка суттєво відрізняється від те- риторії екології, як у нашому випадку, вимагає від дослідників пошуку аналогій. В першу чергу це сто- сується ландшафту, ланцюгів переносу енергії та речовини (трофічних ланцюгів) і циклів харчування. Поки такі аналогії не будуть знайдені в інженерії програмного забезпечення, дослідження екосистеми є не чим іншим, як системним аналізом, а концепція екосистеми є привабливою концепцією. Мета цієї позиційної статті — привернути увагу спільноти інженерії програмного забезпечення до дослідження екосистем. Розглянуто три концепції екосистем, а саме в екології, програмному забезпеченні та інженерії програмного забезпечення. Наведено склад та сутність екосистемних досліджень у інженерії програм- ного забезпечення. Проведено огляд літератури щодо стану екосистемних досліджень у інженерії про- грамного забезпечення. Ключові слова: інженерія програмного забезпечення, екосистема програмного забезпечення, екосистема інженерії програмного забезпечення, екосистемні цикли інженерії програмного забезпечення Introduction The application of the concept of the ecosystem in the software engineering shows the existence of the same problems regarding the definition of the concept and its use for re- search that still exists in ecology [1-3]. Justifi- cation for applying the concept of an ecosys- tem in an area that differs significantly from ecology, as in our case, requires researchers to look for analogies. This primarily applies to landscape, the energy and matter transfer chains (trophic chains) and nutritional cycles. Until similar constructions are found in the software engineering, ecosystem research will be nothing more than system analysis, and the ecosystem will be an attractive concept but without sense. The article [4] showed the expediency of applying the concept of the ecosystem in the software while preserving essence of the biol- ogy ecosystem. In the article [5], the concept of the software engineering ecosystem intro- duced. The purpose of this article is to draw the attention of software engineering community to ecosystem research. To justify position, the types of ecosystems - the biology ecosystem, software ecosystem, software engineering eco- 115 Програмна інженерія виробництва програмних продуктів system and features of the ecosystem research in software engineering are considered. The state of the ecosystem research in the software by the review of the relevant literature is pre- sented. To the using of the ecosystem concept Consider three using of concept of eco- system - the ecology ecosystem, the software ecosystem and the ecosystem of software engi- neering. Epistemology of the ecosystem con- cept can be found in article [1]. Ecology ecosystem. The term "ecosys- tem" should denote a group of organisms liv- ing in a certain area, interacting with their physical environment in such a way that the flow of energy leads to a well-defined trophic structure, biotic diversity and material cycles [6]. The concept of the ecosystem can be ap- plied to various ecological objects. This appli- cation is justified by the fact that they demon- strate similar forms of relationships (energy and material cycles). The concept of the eco- system is based on the concept of the system, but the ecosystem research differs from system research. This difference is expressed is that living components are necessarily present in the ecosystem and demands are made require- ments that include study of internal cycles of matter, energy flows, and nutrient cycle, and due to the presence of non-living components, the ecosystem is characterized interdiscipli- narity [6]. It is clear that the application of the concept in software engineering should be guided by the same requirements and a neces- sary condition for their satisfaction should be the presence of analogues of interactions spec- ified for ecological ecosystems. Software ecosystem. This a wide- spread term today that has many interpreta- tions. In the review article [7], four definitions of software ecosystems are given. Analyzing these definitions, the authors identify three main elements that combine these definitions. This is platform, business and relationships. In addition, a generalized definition of the soft- ware ecosystem as the interaction of a set of subjects on top of a general technological plat- form, leading to a number of solutions in soft- ware or services is formulated. The article [8] has no new terms, but definitions are given that are related to the software ecosystem: mobile learning ecosystems/mobile ecosystem, open source free software ecosystem, open ecosys- tem, digital (business) ecosystem. Here, these definitions stand next to the definition of the software ecosystem. As for cycles and chains, the work [7] indicates that the software ecosys- tem is an association that manages the ecosys- tem, executing the platform, creating and ap- plying rules, processes, business procedures, setting and controlling quality standards and/or organizing relationships with the actor. Software engineering ecosystems. In the work [5], based on the assumption that in software engineering, as well as in ecology, there should be a wider range of ecosystems than software ecosystems known in the litera- ture, the concept of the software engineering ecosystems was introduced. The classification of ecosystems and the concepts of flows and chains similar to biological ecosystems was proposed. As in [5], in this article we will keep to the following point of view. The ecosystem is a concept, not a real entity and is based on the concept of the sys- tem. The concept can be applied to biogeoce- nosis on the landscape that has system bound- ary, within the software engineering territory [5]. Each system, in the defined landscape of the software engineering territory that is open to material and energy flows and their analo- gies, and contains at least two living beings (organisms) and meet the requirements of the ecosystems, can studied as a software engi- neering ecosystem. However, since the re- searcher determines the boundary of the land- scape based on the goals of the study that the previously determined boundary is not always the system boundary and biogeocenosis on the landscape is not will be a system. Further will be studied only system biogeocenosis. As an analogue of energy transferred in biological ecosystems in trophic cycles, it is proposed to use the concept of value based on the energy theory of value [9]. To determine ecosystems of the software engineering territory, we will use a structural ecosystem approach [10]. Therefore, in the ecosystem, in addition to the abiotic component and value, we consider four more types of elements of the ecosystem struc- ture [10]. Namely, firstly, the types of activi- ties that determine discrete actions that must be 116 Програмна інженерія виробництва програмних продуктів carried out in order for the value proposal to materialize. Secondly, actors who are subjects and who carry out activities. Thirdly, positions that determine where subjects are in the flow of activity and characterize who transfers value to whom; fourthly, connections that determine transfers value and artifacts between subjects. There are activities at the center of the defini- tion of the ecosystem. To make the ecosystem sustainable, actors need to interact in such a way that the value materializes. Therefore, as an analogue of the trophic chain, we will use the chain of interdependent value creation by actors performing activities in the landscape using and producing the abiotic components (artifacts). The activities of the actors play an important role in the ecosystem, defining its functions and services. Sometimes one actor can own the platform (a product, service or technology) and plays the leader role in the software engineering ecosystem then the eco- system is called the platform ecosystem [11]. In the same way, we will consider soft- ware landscapes on which artificial biota can operate - computer programs, as well as land- scapes on which both types of biota (human and computer programs) act [12]. For a system formed by artificial biota, a chain of formation of the emergence function of the system can be specified as an interdependent value creation chain. The place the software engineering ecosystems in the living systems The software engineering will be con- sidered as part of human activity aimed at transforming the biosphere into an anthropo- sphere (noosphere). Transforming is carried out by human influence on the biosphere by his activity and thought. Although thought is not a form of energy, nevertheless under its influ- ence, processes occur and artifacts are created that change the biosphere. Occupying a certain area of the biosphere, software engineering carries out a variety of activities aimed at solv- ing practical tasks often occurring in other ter- ritories, thereby playing a special role in the context of the anthroposphere. In general, the following types of the software engineering ac- tivity on human activity habitats can be distin- guished (Fig. 1): - software engineering education and research. The habitat consists of universities and fundamental research organizations; - software engineering. The habitat is organizations that transform the results of the fundamental research to recommendations for practical application; - software development and mainte- nance. The habitat consists of organizations that create and maintain software products for different domains; - software market. The habitat includes organizations supplying software products; - software operation. The habitat is de- fined on other territories on that the software product is used; - executing software. The habitat is the software products themselves. It is obvious that these types of activi- ties, although specific, are carried out in the context of the biosphere and, therefore, the bi- ogeochemical cycles and the waste activities are inherent the territory of software engineer- ing and they must are studied in the software engineering ecosystems (Fig. 1). Biosphere Antroposphere Software engineering territory Education and Research Development and Maintenance Marketing Executing Sun Provides energy Heat Releases Abiotic Biotic Biogeochemical Cycle Waste Creates OperationEngineering The Software Engineering Human Activity Habitats Fig. 1. The types of the software engineering activity on human activity habitats Considering the territory of software engineering as part of the living system in which take place biogeocenosis, can apply to them the concept of the ecosystem to it and after that will study by performing the ecosys- tem research. Since the concept of a software engineering ecosystem is applied in the con- text of biological ecosystems that the relevant parts of both biotic and abiotic components, as well as biogeochemical cycles taking place 117 Програмна інженерія виробництва програмних продуктів in the territory of software engineering, may be of interest also. However, new aspects of software engineering ecosystem research should be related with locating of the territory in the anthroposphere. Here the anthropos are new biotic components and the anthropogenic artifacts are new abiotic components, and arise the new networks and cycles inherent only in the software engineering ecosystems (Fig. 2). Therefore, along with the known ones (from ecology), there should be new di- rections of the software engineering ecosys- tem research. Living system Antroposphere Ecosystem Software Engineering Ecosystem Abiotic BioticAtmo/Geo/Hydro/ Cryo/Pedo Spheres Organism Person Antropos Biogeochemical Cycle Anthropogenic Abiotic Software Engineering Ecosystem Cycle Fig. 2. Software engineering ecosystems in the anthroposphere Thus, in living systems of anthroposphere, the object of the ecosystem research in the ter- ritory of the software engineering will be the human activity habitats and its social systems (Fig. 1, 3) [5]. Applying the concept of the ecosystem, these systems can be study as the software engineering ecosystems, taking into account the additional components of biotic is anthropos and abiotic are antropogenic arti- facts that are inherent in the anthroposphere. In the software engineering ecosystem, except for artifacts that consist of assets and tools [13], data, information and knowledge should be considered, as well as the software product as territory for the software ecosystem (Fig. 3). Antroposphere Living system Human Activity System Software Engineering Ecosystem Abiotic Biotic Anthropogenic Artifact Antropos < operates in Data/ Information/ Knowledge Asset Tool Software Product < situated in Software Engineering Human Activity System Territory for Software Ecosystem Fig. 3. Software engineering ecosystem The ontology of the software engineer- ing ecosystem with its attributes is shown on Fig. 4. Living system Software Engineering Ecosystem Abiotic Biotic Landscape Boundary Service Person Software Engineering Anthropogenic Abiotic Software Engineering Ecosystem Cycle Software Engineering Activity Habitat Antropos Software Engineering Human Activity System has> part of operates in < situated in has> provides> Fig. 4. The ontology of the software engineering ecosystem In the context of the software engineer- ing habitats the activity of anthropos to lead to implementing processes that can be a linear (chains), nonlinear (networks) and repetitive (cycles). These processes must be objects for the ecosystems study regardless of the soft- ware engineering ecosystem type [5]. They are the following chains, cycles and networks (Fig. 5): - software engineering life cycle, this is the main cycle in software engineering, 118 Програмна інженерія виробництва програмних продуктів therefor inherent in application devel- opment human activity. - cycles of data, information and knowledge, especially inherent in such human activity as software engineering education and research, and software research. - software reuse cycle, analogous to nu- tritional cycles, here, these are cycles of reuse of software life cycle artifacts (requirements, design, code, and documentation) and knowledge artifacts. - value chain/web, this is a value chain and network - an analogue of energy chain in the software engineering ecosystem [9]. - waste cycle is a waste creation and disposal cycle using 3R (Reuse, Rework, and Recovery). All of the above relates to the applica- tion of the ecosystem concept in the context of living systems [14]. In the paper [5], it is shown that the software ecosystem is the appli- cation of the concept of the ecosystem to the software product is the habitat of in the sense of artificial life using analogues of the biotic component of biological ecosystems [4, 15, 16] (Table 1). Here, there are more questions than answers. Therefore, next only software engineering ecosystem research in the context of human activity habitat (living system) will be considered further. Software Engineering Ecosystem Cycle Data/Information/ Knowledge Cycle Waste CycleSoftware Reuse Cycle Value Chain/WebSoftware Engineering Life Cycle Fig. 5. Software engineering ecosystem chains, cycles and networks Table 1. Analogues of biotic components of Software ecosystem for biotic components of Biology ecosyste № Software ecosystem Biology ecosystem 1. Characters, lexemes, simple types Molecules (?) 2. Operators, complex types, Structured operators Tissues 3. Subroutines (algorithms) Cells (?) 4. Modules (Classes), mega modules (Subsystems) Organs (organisms) 5. Programs Genus 6. Computer programs Species 7. Software Subspecies 8. Software of domain Varieties 9. Software product Individual of the Varieties 10. Software products of same type on the domain territory Population 11. Software product line (family) Evolving Population 12. Populations of the Software products on the some do- main territory Community (Biocenos) 13. Populations of the Software products on the some do- main territory and abiotic Biogeocenos 119 Програмна інженерія виробництва програмних продуктів Ecosystem research In accordance with the goals of study- ing objects in software engineering using the concept of the ecosystem, we will use tradi- tional approaches to studying systems [3]. However, need take into account the following features: - Structural analysis is performed on bi- otic and abiotic components. In addition, struc- tural analysis will have study the biotic com- ponent as a community, including its various forms, such as the working community, the program community, and abiotic component as, for example, the artifacts populations. - Functional analysis is aimed at study- ing the added value chains instead of food chains, and circulation chains of artifacts of the legacy software instead of nutritional cycles. For software engineering ecosystems with a human community in the biotic component, and possibly software ecosystems, flows that lead to the emergence and elimination of waste should be investigate. - System analysis, as in the biological ecosystem, aims to study the emergence, sta- bility, self-organization, evolution and sustain- ability of the ecosystems. Ecosystem research in the software engineering Next, based on research on biological ecosystems, we will consider the main areas of research applying the concept of the ecosystem in the software engineering. The research will be divided into two groups - basic and target (Fig. 6). Basic studies are those aimed at col- lecting data and information about the ecosys- tems and are divided on long-term study and the ecosystems history study. Targeted re- search includes structural, functional and sys- tem analysis. Ecosystem research Basic studies Structural analysis Ecosystems history study Targeted research Long-term study Functional analysis System analysis Fig. 6. Software engineering ecosystem research Basic studies are those aimed at col- lecting data and information about the ecosys- tems. This will provide more complete and re- liable results of targeted studies. Long-term studies and historical research are the basic re- search. Long-term study is research con- ducted in the ecosystem, continuously for long periods of time [17, 18]. The duration of research should be at least such as long as the dominant event of the ecosystem occurs or until the event under study changes [18]. In article [19], a classification of types of long- term ecological studies is provided. There are retrospective research (passive - deep and re- cent; active - opportunistic, intentional and re- modeled) and prospective research. Research data can be directed to the following: to de- velop and test the theory; to provide general knowledge about the operation of selected ecosystems; to provide student and postgrad- uate training [17]. The long-term ecological studies have features that consider before starting research. It is, firstly, permanent providing of money, time, staff, means; sec- ondly, keeping research from complacency, if funding job is provided in the long run; third, limit by practical considerations, for example, by time [17]. Apparently, these features need 14. Software products as systems Ecosystems 15. Information flows Energy flows (?) 16. Control (algorithms) DNA, RNK (?) 120 Програмна інженерія виробництва програмних продуктів take into account for the software engineering ecosystem research. The long-term studies expedient when there are the slow processes, rare events, complex phenomena [17]. The field study and the field experiment can be used for the long-term ecological studies. The ecosystems history study. As the structure, functions, services, landscape, and terrain of the ecosystems change over time, the ecosystems have a history. For quantitative and especially comparative studies, it is critical to determine the current state of the ecosystem and state changes over time. For example, how the transformation of the ecotope into a biotope of the software engineering ecosystem was carried out. For historical research, the empiri- cal or natural-historical method, the field study, the anthropological and ethnographic studies can be use. Targeted research includes structural, functional and system analysis. Structural analysis aims to study the following components of the ecosystem as structure [10]. Firstly, activities, which specify the actions for the value proposition to materi- alize. Secondly, creating by the actors. Thirdly, positions that determine places where actors are in the flow of activity. Fourthly, links that determine the transfer of value between the ac- tors. The essence of the value may vary - ma- terial, information, influence, funds. Need to be considered that there is the transfer of en- ergy in the ecosystem, biotic and abiotic are characterized by diversity and therefore need multidiscipline study, and that the structure of the ecosystem can be multi-level. The field study, the monitoring and classification meth- ods can be used for the structural analysis. The software engineering ecologist must follow an example the ecologist in studying species of both biotic and abiotic component of the soft- ware engineering ecosystem [20]. Functional analysis contributes to the identification of functions, services and inter- actions (streams and chains) aimed at creating value. Ecosystem functions on the definition of ecosystem processes are based, which can be interactions inside biota and between the bi- otic and abiotic components of the ecosystem, covering material cycles and energy flows. The functions of the ecosystem can be defined as the ability of processes and components of the structure to provide goods and services that meet human needs, directly or indirectly. Arti- cle [21] examines the historical development of the concept of ecosystem services in eco- nomic theory and practice, which can be useful in the software engineering. Ecosystem services are defined as a set of ecosystem functions that are useful for hu- mans [22]. Thus, ecosystem services in soft- ware engineering should include the results of performing ecosystem functions that are bene- ficial to humans. In the software engineering, as with other types of the ecosystems, these functions can be divided into three groups - economic, sociocultural and environmental [22]. The first group, depending on the type of ecosystem, includes knowledge, skills, prod- ucts and artifacts. The second group is deter- mined by the presence of people in the biota of the ecosystem that bring socio-cultural values to the concept of the ecosystem. Both are re- lated to not only the culture of software engi- neering, but also to society and culture in a broad sense. The third group, these are func- tions regarding the ability of ecosystems to regulate flows that lead to waste disposal [4]. An important aspect in the study of ecosystem services is their evaluation. The papers [23, 24] offer models for evaluating ecosystem services that can be applied to software engineering ecosystems. Researching flows, chains and cycles that correspond to ecosystem functions is an important part of the functional ecosystem study. For the software engineering ecosys- tems, these are the study of the added value chains (food chain analogues), reuse cycles of the legacy software artifacts, knowledge, prac- tices (analogues of nutritional cycles). In bio- logical ecosystems, the nutrient cycle is one of the most important processes, as it ensures the transformation of "old" (legacy) matter into nutrients used by living organisms. It also maintains the balance of those nutrients that are necessary to maintain a healthy ecosystem. Biological ecosystems consider four cycles of nutrients (water, oxygen, nitrogen, carbon). In software engineering ecosystems, as an ana- logue of such cycles, we suggest using the soft- ware engineering artifacts (knowledge, po- lices, software artifacts, best practices) reuse 121 Програмна інженерія виробництва програмних продуктів cycles (Fig. 4). Without reuse cycles, software engineering ecosystems can become unbal- anced and unhealthy, similar to biological eco- systems, leading to inefficiency and disintegra- tion. In addition to them, flows that lead to gen- erated and disposal of waste should be studied. Waste cycles are important and arise for vari- ous reasons, for example, waste is a result of inappropriate organization of the activity pro- cess. For functional analysis, the technique of system functional analysis can be used. For value chains and cycles, it may will be useful to apply value chain analysis [25, 26]. System analysis is aimed at studying a part of the world as a system localized within the ecosystem. Of particular interest are the emergent functions of the system and modeling and simulation. Since ecosystems are usually open systems, connections between the ecosystem and other parts of the world presented as ecosystems are also studied. For system analysis, experimental simulation, simulation experiment, conceptual modeling, simulation should be used. Finally, it should be noted that the ecosystem research differs from systems research in that it is inter- disciplinary. Literature Review The literature review was performed. The goal of review is find out the state of the ecosystem research in context of the software. For this goal are formulated the following two research questions: (RQ1) Do software ecosystem re- searchers use biological analogies, and if so, which ones? (RQ2) What type of the ecosystem re- search have software ecosystems researchers shown interest in? Below are the results of the analysis. RQ1. Do software ecosystem research- ers use biological analogies, and if so, which ones? In the works [16, 27] are attempts to use analogies. For example, [27] offers two types of biota and an analogue of the food chain for the software ecosystem. The first type is the participants of the software project, which are represented by four categories - core developers, active developers, peripheral de- velopers and users. Between them, a connec- tion is indicated, according to the authors, sim- ilar to a trophic chain directed from core devel- opers to users. The second type are the soft- ware components and the project contributors that are compared whit the biological species in the biological ecosystem. Indicated that as in the trophic network, some of these compo- nents (such as joint development platforms and software libraries) act as producents. A wider range of analogues of components for this type can be found in the work [16]. However, it has no analogies with chains and cycles. RQ2. What type of the ecosystem re- search have software ecosystems researchers shown interest in? Basic studies (Long-term studies). The paper [28, 29] is work from this type of re- search. Author studied three aspects of the software ecosystems - how this ecosystem has emerged; how the present organization works in terms of its structure, its processes, and its product line, and how the organization relates to actors in its external environment. Basic studies (History of ecosys- tems). The paper [29] presents the results of studying how the object-oriented classes are used in software packages over time to in- crease understanding of the evolution of the software ecosystem, as well as the mainte- nance and survivability of projects. Targeted research (Structural analysis). The article [30] considers a subset of communities found on GitHub and a variety of roles is identified. The article [31], bots as parts of biotic are used to coordinate open source software projects. Four different classes of the bots that coordinate work in such projects (broker, checker, gatekeeper, and manager) have been identified. In the articles [32, 33], the workforce ecosystem as a structure focused on creating value for the organization was defined. Targeted research (Functional analysis). - Ecosystem functions and services. In the article [34], proposed an open source online platform (RECOSystem) to support the development and management of recom- mender systems. In the article [35], the defini- tion of the software testing ecosystem was pro- posed. The article [36], described the compo- nent-based software development ecosystem and its main service is the supply of compo- 122 Програмна інженерія виробництва програмних продуктів nents to the market. The article [37], described the ecosystem of scientific software, as well as the production of scientific software compo- nents. In the article [38], the program analysis platform that aims to build a data-driven eco- system is presented. The article [39], presents an ecosystem that Ericsson has developed for the systematic practice of large-scale reuse of microservices in a cloud context. The article [40] draws attention to decision-making on the design of software and systems for products, processes, projects that maximize the value created for invested resources. In the article [41], the concept of a unified software value chain and the first empirical proof of the con- cept are proposed. This article examines the value chain in the context of the software life cycle. This view supports our view of software engineering ecosystems. In the article [42], the concept of the software ecosystem service is discussed. - The reuse cycles of the legacy soft- ware. In the article [43], the concept of the eco- system applies to the software industry to en- courage developers to reuse and multiple use the software components. This view cannot be directly related to the cycles of reuse of the leg- acy software, but it can be accepted to study these cycles. In the article [44], value networks for DevSecOps are presented. - Flows of waste generation and dis- posal. The work [45] is the most famous in the software engineering about this theme. This aspect of the ecosystem research can certainly be related to issues of the sustainable and envi- ronmental software engineering [46]. Targeted research (System analysis). The article [47] the structures of known eco- systems, as well as formulated and analyzes problems related to openness, management, analysis and quality in such ecosystems are presented. The article [48] draws attention to orchestration in software ecosystems and of- fers a new understanding of it. The article [49] provides a systematic display of the descrip- tion and documentation of the software ecosys- tem through modeling. Conclusion This work is a continuation of the au- thor's works [4, 5, 50 - 52]. Represents the au- thor's view on the problem of applying the con- cept of the biology ecosystem in software en- gineering. Attention is drawn to the inade- quacy of the existing application of the concept to the software ecosystem compared to the bi- ological approach. That can be explain by the fact that the software ecosystem uses an ap- proach that considers ecosystems as networks, organized around a keystone species and char- acterized by a large number of loosely inter- connected participants who depend on each other for their mutual effectiveness and sur- vival. In paper [10], such approach was called "ecosystem-as-affiliation", and in paper [11], it was called "platform ecosystems". At the same time, the boundaries of the landscape and itself landscape are not specified and there are no an- alogues of chains and cycles, the presence of which determines the essence of biological ecosystems. Therefore, now the software eco- system, in our opinion, is nothing more than a fashionable term [53]. In this article, attention is drawn to a different approach "ecosystem- as-structure", when ecosystem is configuration of activities that are defined by a value propo- sition. In this context, attention is drawn to the ecosystem research and the need to find analo- gies that are known in ecology. References 1. R. V. O’neill, Is it time to bury the ecosystem concept (with full military honors, of course!), Ecology, 82(12), (2001) 3275–3284. 2. E. Becker, B. Breckling, Border zone between ecology and systems theory, Ecology Revis- ited, Springer, 2011, 385–403. 3. A. Mittwollen, Unity in Ecology? An Investi- gation of Patterns, Problems and Unifying Concepts of Population Ecology, Systems Ecology and Evolutionary Ecology (Biology), Ph.D. thesis, Bremen, 2002. 4. N.A. Sydorov, Software ecology, Software en- gineering, 1 (2010), 53-61 (in Ukrainіan). 5. N. Sydorov, Software Engineering Ecosys- tems, in: Proceedings of the 13th International Scientific and Practical Programming Confer- ence UkrProg 2022Kyiv, Ukraine, October 11- 12, 2022.CEUR-WS: 10-Oct-2023, Vol-3501, pp. 91-100. 6. E P. Odum, Fundamentals of Ecology, Saun- ders Company, Philadelphia-London, 1971. 7. K. Manikas, Software ecosystems – A system- atic literature review, The Journal of Systems and Software 86 (2013), 1294–1306. 123 Програмна інженерія виробництва програмних продуктів 8. O. Barbosa, C. Alves, A Systematic Mapping Study on Software Ecosystems, in: Proceed- ings of the Workshop on Software Ecosystems, 2011, pp. 15-26. 9. R. Costanza, C. J. Cleveland, Value theory and energy, in: Encyclopedia of energy, 6, 2004, pp. 337 - 346. 10. R. Adner, Ecosystem as Structure: An Action- able Construct for Strategy, Journal of Man- agement Vol. 43 No. 1, January (2017), 39–58. 11. K. Kapoor, A. Ziaee Bigdeli, Y.K. Dwivedi, A socio-technical view of platform ecosystems: Systematic review and research agenda, Jour- nal of Business Research 128 (2021) 94–108. 12. D. H. Ackley, Real artificial life: Where we may be, in: The Proceedings of Artificial Life VII, Portland, Oregon, August, 2000. 13. E. Zabardast, J. Frattini, Assets in Software Engineering: What are they after all?, Journal of Systems and Software 193(2022), 111485. 14. F. Capra, P. L. Luisi, The systems view of life: a unifying vision / University Printing House, Cambridge, United Kingdom, 2014. 15. D. H. Ackley, Real artificial life: Where we may be, in: The Proceedings of Artificial Life VII, Portland, Oregon, August, 2000. 16. T. N. Nguyen, The Ecology of Software: A Framework for the Investigation of Business- IT Integration Issues and Trends of Infor- mation Technology Management in Contem- porary Organizations, in: Proceedings of the Information Resources Management Associa- tion International Conference, 2002. 17. D. Strayer, J. S. Glitzenstein, Long-Term Eco- logical Studies: an Illustrated Account of Their Design, Operation, and Importance to Ecol- ogy, in: Occasional Publication of The Institute of Ecosystem Studies Number 2, August, 1986. 18. G. E. Likens, The ecosystem approach: its use and abuse, Germany, 1992. 19. S. T. Jackson, Repurposing long-term ecologi- cal studies for climate change https://doi.org/10.1073/pnas.2314444120. 20. D. Kirsh, Explaining Artifact Evolution. in: Cognitive Life of Things: Recasting the Boundaries of the Mind. Malafouris, L. (Ed.), McDonald Institute for Archaeological Re- search, Cambridge, April 7-9, 2009. Cam- bridge University press. 21. E. Gómez-Baggethun, The history of ecosys- tem services in economic theory and practice: From early notions to markets and payment schemes, Ecological Economics, vol. 69 (2010), 1209-1218. 22. R. S. de Groot, A Typology for the Classifica- tion Description and Valuation of Ecosystem Functions, Goods and Services, Ecological Economics, Ecological Economics Volume 41, Issue 3, (2002) 393-408. 23. L. Hein, K. van Koppen, Spatial Scales, Stake- holders and the Valuation of Ecosystem Ser- vices, Ecological Economics, 57, (2006), 209– 228. 24. J. J. Kaufman, Stimulating innovation in prod- ucts and services: with function analysis and mapping, John Wiley & Sons, Inc., Hoboken, New Jersey, 2006. 25. J. R. Wixson, Function Analysis and Decom- position Using Function Analysis Systems Technique, in: International Council on Sys- tems Engineering Annual Conference (IN- COSE ’99), 1999. 26. B. Boehm, A Value-Chain Analysis or Soft- ware Productivity Components, TRW Inc., 1976. 27. T. Mens, P. Grosjean, The Ecology of Soft- ware Ecosystems, Computer, October (2015), 112-114. 28. G. K. Hanssen, A longitudinal case study of an emerging software ecosystem: Implications for practice and theory, The Journal of Systems and Software 85 (2012) 1455–1466. 29. T. Mens, M. Claes, P. Grosjean, ECOS: Eco- logical Studies of Open Source Software Eco- systems (2014), Antwerp, Belgium 978-1- 4799-3752-3/14, 2014. 30. D, Mendez, B, Baudry, M, Monperrus, Empir- ical Evidence of Large-Scale Diversity in API Usage of Object-Oriented Software, in: Pro- ceedings of IEEE 13th International Working Conference on Source Code Analysis and Ma- nipulation (SCAM), July 2013. 31. F. Hukal, N. Berente, Bots Coordinating Work in Open Source Software Projects, Computer, 52(9) (2019), 52-60. 32. E.J. Altman, J. Schwartz, D. Kiron, R. Jones, and D. Kearns-Manolatos, Workforce Ecosys- tems: A New Strategic Approach to the Future of Work, MIT Sloan Management Review and Deloitte, April 2021. 33. A. T. Gorski, I. Gligorea, Workforce and workplace ecosystem – challenges and oppor- tunities in the age of digital transformation in: Proceedings of the International Conference knowledge-based organization, Vol. XXVIII ,No 1, 2022. 34. A. Abdalla, A Software Ecosystem platform for the development of Recommender Sys- tems, June, 2020, DOI: 10.21203/rs.3.rs- 34335/v1. 124 Програмна інженерія виробництва програмних продуктів 35. I. Santos, Software testing ecosystems insights and research opportunities, in: Proceedings of the XXXIV Brazilian Symposium on Software Engineering, 2020, pp. 421–426. 36. J. Arndt, J. Dibbern, The Tension between In- tegration and Fragmentation in a Component Based Software Development Ecosystem, in: Proceedings of the 39th Hawaii International Conference on System Sciences, 2006. 37. J, Howison, Understanding the scientific soft- ware ecosystem and its impact: Current and fu- ture measures, Research Evaluation 24 (2015), 454–470. 38. C. Sadowski, Tricorder: Building a Program Analysis Ecosystem, in: Proceedings of the 37th IEEE International Conference on Soft- ware Engineering, Florence, Italy, May 2015, pp. 598-608, DOI: 10.1109/ICSE.2015.76. 39. M. Usman, D, Badampudi, An Ecosystem for the Large-Scale Reuse of Microservices in a Cloud-Native Context, IEEE Software, (39)5, Sept.-Oct., 2022. 40. B. Boehm, Software Economics: A Roadmap, March 2000, doi: 10.1145/336512.336584. 41. A. Pussep, The Software Value Chain as an Analytical Framework for the Software Indus- try and Its Exemplary Application for Vertical Integration Measurement, in: Proceedings of the Seventeenth Americas Conference on In- formation Systems, Detroit, Michigan August 4 -7, 2011. 42. K. Manikas, K. M. Hansen, Software ecosys- tems – A systematic literature review, the Jour- nal of Systems and Software, 86, (2013), 1294–1306. 43. J. Arndt, J. Dibbern, The Tension between In- tegration and Fragmentation in a Component Based Software Development Ecosystem, in: Proceedings of the 39th Hawaii International Conference on System Sciences, 2006. 44. J. Morales, R. Turner, Guide to Implementing DevSecOps for a System of Systems in Highly Regulated Environments, Technical Report CMU/SEI-2020-TR-002, 2020. 45. M. Poppendieck, T. Poppendieck, Implement- ing Lean Software Development: An Agile Toolkit, Addison-Wesley, 2003, 240p. 46. E. Kern, Green software and green software engineering - definitions, measurements, and quality aspects, in: Proceedings of the First In- ternational Conference on Information and Communication Technologies for Sustainabil- ity, ETH Zurich, Feb, 14-16, 2013. 47. J.V. Joshua, Software Ecosystem: Features, Benefits and Challenges, International Journal of Advanced Computer Science and Applica- tions (IJACSA), 8(4), (2013), 242-247. 48. L. M. Maruping, S. Matook, The evolution of software development orchestration: current state and an agenda for future research, Euro- pean Journal of Information Systems, 29:5 (2020), 443-445, DOI: 10.1080/0960085X.2020.1831834. 49. O. Pettersson, J. Andersson, A Survey of Mod- eling Approaches for Software Ecosystems, Springer International Publishing Switzerland, 2016, pp. 79-93. 50. N. Sydorov, Programming Style as an Artefact of a Software Artefacts Ecosystem, in: Pro- ceedings of the Advances in Computer Science for Engineering and Education Applications, Springer, Cham, 2021, 244-255. 51. N.A. Sydorov, N. N. Sydorova, E.N. Sydorov, Description model of programming style eco- system, Problems in programming, 2-3(2022), 74-81. 52. N.A. Sydorov, Toward a software artifacts ecosystem, Problems in programming, 4 (2020), 11. 53. S. Hyrynsalmi, S. M. Hyrynsalmi, Ecosystem: A Zombie Category? 2019 IEEE International Conference on Engineering, Technology and Innovation (ICE/ITMC). Одержано: 25.10.2024 Внутрішня рецензія отримана: 01.11.2024 Зовнішня рецензія отриман: 02.11.2024 Про автора: Сидоров Микола Олександрович, д.т.н., професор ORCID 0000-0003-0800-1668 Місце роботи автора: НТУ України «Київський політехнічний інститут імені Ігоря Сікорського», кафедра інформатики та програмної інженерії, Моб. тел.: 067 7980361. E-mail: nyksydorov@gmail/com