7 research outputs found

    Visualizing Anti-Patterns in Microservices at Runtime : A Systematic Mapping Study

    Get PDF
    In the world of microservices, companies must be able to create systems that operate in the most efficient way. To achieve this, anti-patterns must be avoided because of their detriment to the quality of the system. Some of the most troubling anti-patterns are hard to detect because of their appearance at runtime. Effectively removing anti-patterns from a system requires dynamic analysis because of the large size of microservice-based systems. While the detection of anti-patterns is helpful, being able to visualize them offers a great benefit to companies working with microservices. Seeing how the overall system is flowing and recognizing the existence of anti-patterns can help improve microservice-based systems. In this paper, a systematic mapping study was performed to find the current state of research on visualizing anti-patterns in microservices from the dynamic perspective. Several hundred papers were examined and a total of 31 were found to be relevant to the research topic. The papers, when analyzed, revealed that there are mechanisms to detect anti-patterns at runtime in microservices, and there are also mechanisms for visualizing the architecture of a microservice-based system. This study's findings could help to identify and remove anti-patterns that occur during runtime in microservices, as well as a means of visualizing these anti-patterns.publishedVersionPeer reviewe

    Tapir: Automation Support of Exploratory Testing Using Model Reconstruction of the System Under Test

    No full text

    Selected Code-Quality Characteristics and Metrics for Internet of Things Systems

    No full text
    Software code is present on multiple levels within current Internet of Things (IoT) systems. The quality of this code impacts system reliability, safety, maintainability, and other quality aspects. In this paper, we provide a comprehensive overview of code quality-related metrics, specifically revised for the context of IoT systems. These metrics are divided into main code quality categories: Size, redundancy, complexity, coupling, unit test coverage and effectiveness, cohesion, code readability, security, and code heterogeneity. The metrics are then linked to selected general quality characteristics from the ISO/IEC 25010:2011 standard by their possible impact on the quality and reliability of an IoT system, the principal layer of the system, the code levels and the main phases of the project to which they are relevant. This analysis is followed by a discussion of code smells and their relation to the presented metrics. The overview presented in the paper is the result of a thorough analysis and discussion of the author’s team with the involvement of external subject-matter experts in which a defined decision algorithm was followed. The primary result of the paper is an overview of the metrics accompanied by applicability notes related to the quality characteristics, the system layer, the level of the code, and the phase of the IoT project

    Architectural languages in the microservice era:a systematic mapping study

    No full text
    Abstract In modern software systems, Microservice Architecture (MSA) has gained popularity over monolithic design by providing the ability for flexible and independently upgradable services. Although there are considerable benefits that MSA provides, as new microservices are introduced into these MSA-based systems, they can become increasingly complex and hard to understand. Architectural languages are a potential solution to this problem because they can provide a comprehensive overview of system’s architecture as it changes. In this paper, the authors conduct a systematic mapping study to identify the architectural languages discussed in academia. In particular, the authors observe the architectural languages that have the capability of representing MSA-based systems. Through the use of a detailed query in 4 reliable indexers, a collection of 402 papers were filtered down to a small set of 19 relevant papers. This filtration was done based on a research paper inclusion criteria and a language inclusion criteria. With these papers, a total of 12 architectural languages were investigated for the representation of MSA-based systems
    corecore