SEJul 8, 2024
6GSoft: Software for Edge-to-Cloud ContinuumMuhammad Azeem Akbar, Matteo Esposito, Sami Hyrynsalmi et al.
In the era of 6G, developing and managing software requires cutting-edge software engineering (SE) theories and practices tailored for such complexity across a vast number of connected edge devices. Our project aims to lead the development of sustainable methods and energy-efficient orchestration models specifically for edge environments, enhancing architectural support driven by AI for contemporary edge-to-cloud continuum computing. This initiative seeks to position Finland at the forefront of the 6G landscape, focusing on sophisticated edge orchestration and robust software architectures to optimize the performance and scalability of edge networks. Collaborating with leading Finnish universities and companies, the project emphasizes deep industry-academia collaboration and international expertise to address critical challenges in edge orchestration and software architecture, aiming to drive significant advancements in software productivity and market impact.
SYJan 7, 2017
Modeling Actuation Constraints for IoT ApplicationsBharathan Balaji, Brad Campbell, Amit Levy et al.
Internet of Things (IoT) promises to bring ease of monitoring, better efficiency and innovative services across many domains with connected devices around us. With information from critical parts of infrastructure and powerful cloud-based data analytics, many applications can be developed to gain insights about IoT systems as well as transform their capabilities. Actuation applications form an essential part of these IoT systems, as they enable automation as well as fast low-level decision making. However, modern IoT systems are designed for data acquisition, and actuation applications are implemented in an ad-hoc manner. We identify modeling constraints in a systematic manner as indispensable to support actuation applications because constraints encompass high-level policies dictated by laws of physics, legal policies, user preferences. We explore data models for constraints inIoT system with the example of a home heating system and illustrate the challenges in enforcing these constraints in theIoT system architecture.
NAOct 5, 2016
An Iterative Approach for Time Integration Based on Discontinuous Galerkin MethodsXiaozhou Li, Pietro Benedusi, Rolf Krause
We present a new class of iterative schemes for solving initial value problems (IVP) based on discontinuous Galerkin (DG) methods. Starting from the weak DG formulation of an IVP, we derive a new iterative method based on a preconditioned Picard iteration. Using this approach, we can systematically construct explicit, implicit and semi-implicit schemes with arbitrary order of accuracy. We also show that the same schemes can be constructed by solving a series of correction equations based on the DG weak formulation. The accuracy of the schemes is proven to be $\min\{2p+1, K+1\}$ with $p$ the degree of the DG polynomial basis and $K$ the number of iterations. The stability is explored numerically; we show that the implicit schemes are $A$-stable at least for $0 \leq p \leq 9$. Furthermore, we combine the methods with a multilevel strategy to accelerate their convergence speed. The new multilevel scheme is intended to provide a flexible framework for high order space-time discretizations and to be coupled with space-time multigrid techniques for solving partial differential equations (PDEs). We present numerical examples for ODEs and PDEs to analyze the performance of the new methods. Moreover, the newly proposed class of methods, due to its structure, is also a competitive and promising candidate for parallel in time algorithms such as Parareal, PFASST, multigrid in time, etc.
SEFeb 24, 2021Code
OSS PESTO: An Open Source Software Project Evaluation and Selection TOolXiaozhou Li, Sergio Moreschini
Open source software (OSS), playing an increasingly critical role nowadays, has been commonly adopted and integrated in various software products. For many practitioners, selecting and adopting suitable OSS can help them greatly. Though many studies have been conducted on proposing OSS evaluation and selection models, a limited number are followed and used in the industry. Meanwhile, many existing OSS evaluation tools, though providing valuable details, fall short on offering intuitive suggestions in terms of framework-supported evaluation factors. Towards filling the gap, we propose an Open Source Software Project Evaluation and Selection TOol (OSS PESTO). Targeting OSS on Github, the largest OSS source code host, it facilitates the evaluation practice by enabling practitioners to compare candidates therein in terms of selected OSS evaluation models. It also allows in-time Github data collection and customized evaluation that enriches its effectiveness and ease of use.
SEFeb 19, 2021Code
Exploring Factors and Metrics to Select Open Source Software Components for Integration: An Empirical StudyXiaozhou Li, Sergio Moreschini, Zheying Zhang et al.
[Context] Open Source Software (OSS) is nowadays used and integrated in most of the commercial products. However, the selection of OSS projects for integration is not a simple process, mainly due to a of lack of clear selection models and lack of information from the OSS portals. [Objective] We investigate the factors and metrics that practitioners currently consider when selecting OSS. We also investigate the source of information and portals that can be used to assess the factors, as well as the possibility to automatically extract such information with APIs. [Method] We elicited the factors and the metrics adopted to assess and compare OSS performing a survey among 23 experienced developers who often integrate OSS in the software they develop. Moreover, we investigated the APIs of the portals adopted to assess OSS extracting information for the most starred 100K projects in GitHub. [Result] We identified a set consisting of 8 main factors and 74 sub-factors, together with 170 related metrics that companies can use to select OSS to be integrated in their software projects. Unexpectedly, only a small part of the factors can be evaluated automatically, and out of 170 metrics, only 40 are available, of which only 22 returned information for all the 100K projects. Therefore, we recommend project maintainers and project repositories to pay attention to provide information for the project they are hosting, so as to increase the likelihood of being adopted [Conclusion] OSS selection can be partially automated, by extracting the information needed for the selection from portal APIs. OSS producers can benefit from our results by checking if they are providing all the information commonly required by potential adopters...
28.1SEApr 9
A Comparative Study of Semantic Log Representations for Software Log-based Anomaly DetectionYuqing Wang, Ying Song, Xiaozhou Li et al.
Recent deep learning (DL) methods for log anomaly detection increasingly rely on semantic log representation methods that convert the textual content of log events into vector embeddings as input to DL models. However, these DL methods are typically evaluated as end-to-end pipelines, while the impact of different semantic representation methods is not well understood. In this paper, we benchmark widely used semantic log representation methods, including static word embedding methods (Word2Vec, GloVe, and FastText) and the BERT-based contextual embedding method, across diverse DL models for log-event level anomaly detection on three publicly available log datasets: BGL, Thunderbird, and Spirit. We identify an effectiveness--efficiency trade off under CPU deployment settings: the BERT-based method is more effective, but incurs substantially longer log embedding generation time, limiting its practicality; static word embedding methods are efficient but are generally less effective and may yield insufficient detection performance. Motivated by this finding, we propose QTyBERT, a novel semantic log representation method that better balances this trade-off. QTyBERT uses SysBE, a lightweight BERT variant with system-specific quantization, to efficiently encode log events into vector embeddings on CPUs, and leverages CroSysEh to enhance the semantic expressiveness of these log embeddings. CroSysEh is trained unsupervisedly using unlabeled logs from multiple systems to capture the underlying semantic structure of the BERT model's embedding space. We evaluate QTyBERT against existing semantic log representation methods. Our results show that, for the DL models, using QTyBERT-generated log embeddings achieves detection effectiveness comparable to or better than BERT-generated log embeddings, while bringing log embedding generation time closer to that of static word embedding methods.
7.3SEApr 28
Key Developer Roles and Organizational Coupling in Microservices: A Longitudinal AnalysisXiaozhou Li, Nariman Mani, Jose Sosa Rodriguez et al.
Microservice-based systems impose significant organizational coordination challenges, yet the role of individual developers in shaping organizational coupling (OC) remains underexplored. Prior work largely focuses on structural architectural aspects, leaving gaps in understanding how developer roles influence coordination dynamics over time. This study investigates how different developer roles contribute to OC in a large-scale microservices system. The analysis focuses on three key roles, namely Jacks, representing broad knowledge holders, Mavens, representing deep specialists, and Connectors, representing organizational bridges. A longitudinal repository mining analysis of GitHub data, including commits and issue and pull request interactions, is conducted to operationalize OC and quantify its evolution over time. The results show that Connectors are consistently associated with higher levels of OC, while the co-occurrence of multiple roles within the same developer further amplifies coupling effects. In contrast, Jacks and Mavens exhibit more localized and role-specific influences. These findings indicate that OC in microservices is primarily a role-driven phenomenon rather than an inevitable structural property, providing a foundation for role-aware organizational design and targeted decoupling strategies.
2.6SEApr 24
Gamifying Architectural Governance to Reduce Organizational Coupling in Microservice SystemsXiaozhou Li
Microservice is a popular software architecture that relies on decentralized teams and clear service ownership to support modularity and scalability. However, in practice, developers frequently contribute across multiple services, creating organizational coupling (OC) that gradually erodes architectural boundaries and increases coordination overhead. This study proposes a vision for behavior-driven architectural governance through gamification in microservice systems to influence developer behavior and reduce OC. Our approach introduces a gamified framework that continuously mines repository data to detect architectural boundary violations and increasing service dependencies, and translates those signals into gameful designs, including points, badges, leaderboards, and architecture improvement quests. We outline a conceptual framework that integrates repository mining, architectural metrics, and gamification mechanisms to encourage developers to maintain service boundaries and improve architectural maintainability. Furthermore, we present an evaluation roadmap to assess the impact of gamified OC governance and developer engagement. This work aims to open a new research direction at the intersection of software architecture governance, socio-technical analysis, and gamification, highlighting the potential of behavioral incentives to support sustainable microservice evolution.
SEMar 17, 2025
Generative AI for Software Architecture. Applications, Challenges, and Future DirectionsMatteo Esposito, Xiaozhou Li, Sergio Moreschini et al.
Context: Generative Artificial Intelligence (GenAI) is transforming much of software development, yet its application in software architecture is still in its infancy, and no prior study has systematically addressed the topic. Aim: We aim to systematically synthesize the use, rationale, contexts, usability, and future challenges of GenAI in software architecture. Method: We performed a multivocal literature review (MLR), analyzing peer-reviewed and gray literature, identifying current practices, models, adoption contexts, and reported challenges, extracting themes via open coding. Results: Our review identified significant adoption of GenAI for architectural decision support and architectural reconstruction. OpenAI GPT models are predominantly applied, and there is consistent use of techniques such as few-shot prompting and retrieved-augmented generation (RAG). GenAI has been applied mostly to initial stages of the Software Development Life Cycle (SDLC), such as Requirements-to-Architecture and Architecture-to-Code. Monolithic and microservice architectures were the dominant targets. However, rigorous testing of GenAI outputs was typically missing from the studies. Among the most frequent challenges are model precision, hallucinations, ethical aspects, privacy issues, lack of architecture-specific datasets, and the absence of sound evaluation frameworks. Conclusions: GenAI shows significant potential in software design, but several challenges remain on its path to greater adoption. Research efforts should target designing general evaluation methodologies, handling ethics and precision, increasing transparency and explainability, and promoting architecture-specific datasets and benchmarks to bridge the gap between theoretical possibilities and practical use.
SEMay 25, 2023
AI Techniques in the Microservices Life-Cycle: A Systematic Mapping StudySergio Moreschini, Shahrzad Pour, Ivan Lanese et al.
The use of AI in microservices (MSs) is an emerging field as indicated by a substantial number of surveys. However these surveys focus on a specific problem using specific AI techniques, therefore not fully capturing the growth of research and the rise and disappearance of trends. In our systematic mapping study, we take an exhaustive approach to reveal all possible connections between the use of AI techniques for improving any quality attribute (QA) of MSs during the DevOps phases. Our results include 16 research themes that connect to the intersection of particular QAs, AI domains and DevOps phases. Moreover by mapping identified future research challenges and relevant industry domains, we can show that many studies aim to deliver prototypes to be automated at a later stage, aiming at providing exploitable products in a number of key industry domains.