Розроблено пiдхiд керованого онтологiєю застосування стилiв в iнженерiї програмного забезпечення. Сутнiсть пiдходу полягає у використаннi онтологiї не тiльки для представлення стилiв, но також для контролю застосування стилiв пiд час створення i супроводження програмного забезпечення. При цьому, для представлення стилю створюється вiдповiдна онтологiя та засоби пiдтримки розробника, а для контролю застосування стилю в робочих продуктах фаз життєвого циклу програмного забезпечення створюються засоби (ризонери) на основi онтологiчної бази знань. За представленням у дескриптивнiй логiкi база знань мiстить двi складовi-термiнологiчну (TBox) та фактичну (ABox). Перша складова створюється заздалегiдь, шляхом виконання доменного аналiзу. Друга складова створюється пiд час аналiзу представлення вiдповiдного робочого продукту. З метою типiзацiї, в контекстi пiдходу, що розроблено, створено шаблони стилю онтологiї ядра iнженерiї програмного забезпечення, шляхом аналiзу поняття стилю в рiзних доменах. Сформульованi основнi характеристики стилю як доменне незалежного поняття, якi представлено в шаблонах. При цьому, для обрання кiлькостi шаблонiв, що необхiднi для представлення стилю, застосовано паттерн Work Product Pattern Application з Unified Foundational Ontology. Паттерн описує дiї, що можуть iснувати вiдносно стилю робочого продукту (Work product). Розглянуто приклад реалiзацiї пiдходу, шляхом дослiдження запропонованого методу, керованого онтологiєю застосування стилю програмування в iнженерiї програмного забезпечення та архiтектури засобу, що його реалiзує. З застосуванням Protege показано побудову онтологiї стиля програмування i асистування програмiсту. Розроблено i реалiзовано архiтектуру засобу контролю застосування стилю в робочому продуктi фази конструювання-текстi програми. Основу архiтектури складає база знань про вiдповiдний стиль. Термiнологiчна складова бази знань мiстить iнформацiю вiдносно мов i стилю програмування i створюється заздалегiдь розробником онтологiї. Фактична складова створюється ризонером для кожного представлення робочого продукту-тексту програми. Засоби, що створено в контекстi запропонованого пiдходу, автоматизують процеси, якi мають мiсце пiд час застосування стилiв в робочих продуктах фаз життєвого циклу програмного забезпечення Ключовi слова: iнженерiя програмного забезпечення, шаблон стиля, онтологiя, дескриптивна логiка, стиль програмування UDC 004.415.2(043.3
Software engineering is an own scientific and practice aria with an own structure, terminology, products, processes and resources. The software product is a knowledge-based product and it is the result of the knowledgebased actions. In this research, categorization of ontologies in software engineering are presented. The known criterion (process, domain, structure) are used for the categorization of ontologies but two criterion (process and domain) was modified. The process criterions is looked in the connection whit time period and the predevelopment time added to time period. The domain criterions is making whit help of the representation of software engineering world in the form of domains. The ontologies are involved in representing knowledge of three types of the software engineering domains. In the first, the application domain, the focus is on understanding the customer needs and what the software product must do. In the second, the implementation domain, the focus is on understanding how the software product must behave and respond to the customer needs. In the third, the problem domain, the focus is on understanding the software engineering problems, which can be during software life cycle processes of the software product. Our research goal is to develop categorization of the software engineering ontologies on the base of adding known criterion. Ontological representation of software engineering knowledge; categorization; domain analysis; object-oriented programming; ontologydriven utilizing of programming styles. Categorization of the software engineering ontologies. The results of case study, using ontologies by categorization are presented. Had developed categorization of ontologies, it is possible exactly to define types of software engineering ontologies and its places into software processes. This is demonstrating on the examples of the case studies.
Nowadays, the fundamental science of software engineering is being formed. It should represent knowledge that meets the requirements of the concept of sustainable development. This fundamental science could be named as the Software Engineering Ecology. Along with others, it should include a section containing knowledge about software engineering ecosystems. This section of the future science has been intensively developing for more than fifteen years. However, today, there is no consen- sus among researchers regarding the definitions of the software ecosystem. Naturally, it does not contribute to the creation of an appropriate section of emerging science. All authors offer only a software ecosystem, considering it in different contexts and defining it in different ways. The term “software ecosystem” is now used to refer to a wide range of ecosystems that are actually software engineering ecosystems. The purpose of this paper is to propose a basis for defining software engineering ecosystems. By analogy with the concepts of the landscape and the trophic chain of biological ecosystems, the concepts of software landscape and software engineering value chain are proposed. Based on these concepts, the diversity of software engineering ecosystems is shown. A model of the software engineering ecosystems and a classification of the software engineering ecosystems are proposed.
Software engineering is a mature industry of human activity focused on the creation, deployment, marketing and maintenance of software. The fundamental concepts of engineering are life cycle model; three main components of life cycle phases - products, processes and resources; engineering and methodologies for creating, deployment and maintaining software. Software is the foun- dation of technological advances that lead to new high performance products. As the functionality of products grows, so does the need to efficiently and correctly create and maintain the complex software that enables this growth. Therefore, in addition to solving its own problems, software engineering serves the solution of the problems of creating and maintaining software in other domains, which are called application domains. Information technology is a well-known application domain. The basis of this domain is data. Information systems are being implemented in an organization to improve its effectiveness and efficiency. The functionality of information systems has grown dramatically when big data began to be used. This growth has led to the emergence of a wide variety of software-intensive big data information systems. At the same time, the role and importance of software engineering for solving the problems of this application domain has only intensified. Modern possibilities of software engineering are shown. The aspects of interaction between software engineering and big data systems are analyzed. The topics for the study of big data software ecosystems and big data system of systems are outlined.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.