824 research outputs found
Microservice Transition and its Granularity Problem: A Systematic Mapping Study
Microservices have gained wide recognition and acceptance in software
industries as an emerging architectural style for autonomic, scalable, and more
reliable computing. The transition to microservices has been highly motivated
by the need for better alignment of technical design decisions with improving
value potentials of architectures. Despite microservices' popularity, research
still lacks disciplined understanding of transition and consensus on the
principles and activities underlying "micro-ing" architectures. In this paper,
we report on a systematic mapping study that consolidates various views,
approaches and activities that commonly assist in the transition to
microservices. The study aims to provide a better understanding of the
transition; it also contributes a working definition of the transition and
technical activities underlying it. We term the transition and technical
activities leading to microservice architectures as microservitization. We then
shed light on a fundamental problem of microservitization: microservice
granularity and reasoning about its adaptation as first-class entities. This
study reviews state-of-the-art and -practice related to reasoning about
microservice granularity; it reviews modelling approaches, aspects considered,
guidelines and processes used to reason about microservice granularity. This
study identifies opportunities for future research and development related to
reasoning about microservice granularity.Comment: 36 pages including references, 6 figures, and 3 table
Framework for collaborative knowledge management in organizations
Nowadays organizations have been pushed to speed up the rate of industrial transformation to high value products and services. The capability to agilely respond to new market demands became a strategic pillar for innovation, and knowledge management could support organizations to achieve that goal. However, current knowledge management approaches tend to be over complex or too academic, with interfaces difficult to manage, even more if cooperative handling is required. Nevertheless, in an ideal framework, both tacit and explicit knowledge management should be addressed to achieve knowledge handling with precise and semantically meaningful definitions. Moreover, with the increase of Internet usage, the amount of available information explodes. It leads to the observed progress in the creation of mechanisms to retrieve useful knowledge from the huge existent amount of information sources. However, a same knowledge representation of a thing could mean differently to different people and applications.
Contributing towards this direction, this thesis proposes a framework capable of gathering the knowledge held by domain experts and domain sources through a knowledge management system and transform it into explicit ontologies. This enables to build tools with advanced reasoning capacities with the aim to support enterprises decision-making processes. The author also intends to address the problem of knowledge transference within an among organizations. This will be done through a module (part of the proposed framework) for domain’s lexicon establishment which purpose is to represent and unify the understanding of the domain’s used semantic
A Large-Scale Empirical Study on Semantic Versioning in Golang Ecosystem
Third-party libraries (TPLs) have become an essential component of software,
accelerating development and reducing maintenance costs. However, breaking
changes often occur during the upgrades of TPLs and prevent client programs
from moving forward. Semantic versioning (SemVer) has been applied to
standardize the versions of releases according to compatibility, but not all
releases follow SemVer compliance. Lots of work focuses on SemVer compliance in
ecosystems such as Java and JavaScript beyond Golang (Go for short). Due to the
lack of tools to detect breaking changes and dataset for Go, developers of TPLs
do not know if breaking changes occur and affect client programs, and
developers of client programs may hesitate to upgrade dependencies in terms of
breaking changes.
To bridge this gap, we conduct the first large-scale empirical study in the
Go ecosystem to study SemVer compliance in terms of breaking changes and their
impact. In detail, we purpose GoSVI (Go Semantic Versioning Insight) to detect
breaking changes and analyze their impact by resolving identifiers in client
programs and comparing their types with breaking changes. Moreover, we collect
the first large-scale Go dataset with a dependency graph from GitHub, including
124K TPLs and 532K client programs. Based on the dataset, our results show that
86.3% of library upgrades follow SemVer compliance and 28.6% of no-major
upgrades introduce breaking changes. Furthermore, the tendency to comply with
SemVer has improved over time from 63.7% in 2018/09 to 92.2% in 2023/03.
Finally, we find 33.3% of downstream client programs may be affected by
breaking changes. These findings provide developers and users of TPLs with
valuable insights to help make decisions related to SemVer.Comment: 11 pages, 4 figure
Using empirical studies to mitigate symbol overload in iStar extensions
UID/CEC/04516/2019Modelling languages are frequently extended to include new constructs to be used together with the original syntax. New constructs may be proposed by adding textual information, such as UML stereotypes, or by creating new graphical representations. Thus, these new symbols need to be expressive and proposed in a careful way to increase the extension’s adoption. A method to create symbols for the original constructs of a modelling language was proposed and has been used to create the symbols when a new modelling language is designed. We argue this method can be used to recommend new symbols for the extension’s constructs. However, it is necessary to make some adjustments since the new symbols will be used with the existing constructs of the modelling language original syntax. In this paper, we analyse the usage of this adapted method to propose symbols to mitigate the occurrence of overloaded symbols in the existing iStar extensions. We analysed the existing iStar extensions in an SLR and identified the occurrence of symbol overload among the existing constructs. We identified a set of fifteen overloaded symbols in existing iStar extensions. We used these concepts with symbol overload in a multi-stage experiment that involved users in the visual notation design process. The study involved 262 participants, and its results revealed that most of the new graphical representations were better than those proposed by the extensions, with regard to semantic transparency. Thus, the new representations can be used to mitigate this kind of conflict in iStar extensions. Our results suggest that next extension efforts should consider user-generated notation design techniques in order to increase the semantic transparency.authorsversionpublishe
Facilitating the Quantitative Analysis ofComplexEvents through a Computational Intelligence Model-Driven Tool
Complex event processing (CEP) is a computational intelligence technology capable of analyzing big data streams for event
pattern recognition in real time. In particular, this technology is vastly useful for analyzing multicriteria conditions in a pattern,
which will trigger alerts (complex events) upon their fulfillment. However, one of the main challenges to be faced by CEP is how to
define the quantitative analysis to be performed in response to the produced complex events. In this paper, we propose the use of
the MEdit4CEP-CPN model-driven tool as a solution for conducting such quantitative analysis of events of interest for an
application domain, without requiring knowledge of any scientific programming language for implementing the pattern
conditions. Precisely, MEdit4CEP-CPN facilitates domain experts to graphically model event patterns, transform them into a
Prioritized Colored Petri Net (PCPN) model, modify its initial marking depending on the application scenario, and make the
quantitative analysis through the simulation and monitor capabilities provided by CPN tools
Proceso y progreso de la formalización de requisitos
Los métodos formales son un área de las Ciencias Computacionales que ha evolucionado ampliamente en las últimas dos décadas. Actualmente tienen mayor uso en el desarrollo de software crítico, pero varios investigadores vienen trabajando en su incorporación en todo tipo de producto software. En este proyecto se averiguará por el estado actual de este proceso, desde el punto de vista de la formalización de los requisitos. El objetivo es encontrar cuál ha sido el proceso y el progreso de esta formalización, para tener un mapa de la temática y pensarla como contenido del plan de estudios en la Ingeniería de Sistemas.Ingeniero de Sistemaspregrad
Agent-oriented software engineering methodologies : analysis and future directions
The Internet of Things (IoT) facilitates in building cyber-physical systems, which are significant for Industry 4.0. Agent-based computing represents effective modeling, programming, and simulation paradigm to develop IoT systems. Agent concepts, techniques, methods, and tools are being used in evolving IoT systems. Over the last years, in particular, there has been an increasing number of agent approaches proposed along with an ever-growing interest in their various implementations. Yet a comprehensive and full-fledged agent approach for developing related projects is still lacking despite the presence of agent-oriented software engineering (AOSE) methodologies. One of the moves towards compensating for this issue is to compile various available methodologies, ones that are comparable to the evolution of the unified modeling language (UML) in the domain of object-oriented analysis and design. These have become de facto standards in software development. In line with this objective, the present research attempts to comprehend the relationship among seven main AOSE methodologies. More specifically, we intend to assess and compare these seven approaches by conducting a feature analysis through examining the advantages and limitations of each competing process, structural analysis, and a case study evaluation method. This effort is made to address the significant characteristics of AOSE approaches. The main objective of this study is to conduct a comprehensive analysis of selected AOSE methodologies and provide a proposal of a draft unified approach that drives strengths (best) of these methodologies towards advancement in this area.publishedVersio
Semantic discovery and reuse of business process patterns
Patterns currently play an important role in modern information systems (IS) development and their use has mainly been restricted to the design and implementation phases of the development lifecycle. Given the increasing significance of business modelling in IS development, patterns have the potential of providing a viable solution for promoting reusability of recurrent generalized models in the very early stages of development. As a statement of research-in-progress this paper focuses on business process patterns and proposes an initial methodological framework for the discovery and reuse of business process patterns within the IS development lifecycle. The framework borrows ideas from the domain engineering literature and proposes the use of semantics to drive both the discovery of patterns as well as their reuse
Challenges of migrating legacies web to mobile: A systematic literature review
The multi-device era comes thanks to mobile computing which gives remote access to resources from anywhere changing the people’s life and opening new business opportunities. However, the legacy systems do not render the content properly in mobile devices because they were thought to be only compliant with Web browsers. Economic availability is often the reason why these have not been modernized. This work proposes a systematic literature review about the approaches used for the portabilization or modernization of web 1.0 business applications to mobile devices in the period 2006-2017, from SCOPUS, IEEE, and ACM. The search obtained 824 articles, where 37 were selected based on the inclusion criteria. The research questions were: PI1. What have been the contribution to the portability of business applications to mobile devices? PI2. What methods have been used? PI3. What is the nature of the contribution found? PI4. What are the objectives that are pursued in the research work?. The conclusions were obtained through the classification of selected papers with respect to focus, scope, type of research and type of contribution to give an answer to research questions. Then, the state of the art determines the main approaches such as model-driven development, content reorganization, augmentation, and specific migrations. However, certain research gaps were detected and detailed which represent exploration opportunities.Fil: Cajas, Viviana. Universidad Tecnologica Indoamerica.; EcuadorFil: Urbieta, Mario Matías. Universidad Nacional de La Plata. Facultad de Informática; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - La Plata; ArgentinaFil: Rossi, Gustavo Héctor. Universidad Nacional de La Plata. Facultad de Informática; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - La Plata; ArgentinaFil: Domínguez Mayo, Francisco. Universidad de Sevilla; Españ
- …