A Domain-Specific Language (DSL), named RI language, designed for the declarative description of microservices, along with a supporting tool, TSE (Toolbox Service Executor), implemented in Python and based on the RI grammar, enables the representation of structural and operational aspects of services in a technology-agnostic manner.
It was concluded that Clean Architecture cannot be viewed solely as an ally or a villain, as its effectiveness depends on project characteristics, team experience, and the proportionate application of its principles.
Algorithm-Driven Development is introduced, a methodology developed from industrial practice to address recurring challenges in translating requirements into reliable, testable, and maintainable software behavior that provides systematic coverage of functional scenarios from the outset of development.
Philippe Jawish, Pierre Evrard, Alexandre Lemerle et al.· Journal of Systems and Softw...· 0 citations
Microservice-based systems evolve continuously through API changes, service splits and merges, dependency churn, and deployment-topology drift driven by DevOps practices. This rapid evolution erodes the assumptions encoded in formal models, test suites, and architectural descriptions, leaving practitioners with limited guidance on how to keep verification artifacts aligned with evolving implementations. Prior surveys cover microservices design, deployment, performance, and isolated verification techniques, but, to our knowledge, none consolidate the intersection of evolution and formal/rigorous verification, nor map how repository-derived signals and CI/CD pipelines support continuous verification of microservice-based systems. This paper addresses that gap through a systematic literature review (SLR). Following the Kitchenham et al. guidelines and PRISMA-style reporting, we defined a review protocol with four research questions covering (i) formal modeling and verification approaches, (ii) the impact of architectural and API evolution on verifiability, (iii) repository-derived signals for updating formal artifacts, and (iv) continuous and incremental verification in CI/CD pipelines. Structured searches in IEEE Xplore, ACM Digital Library, SpringerLink, and Scopus returned 1187 records, which were screened in seven stages and reduced to 18 included studies (13 primary studies that supply evidence and five background studies retained for transparency and framing) through inclusion/exclusion criteria and a weighted 15-item quality-assessment instrument. We synthesized the included studies thematically and compared them along five dimensions: verification technique, evolution dimension, automation level, empirical evidence, and tool/artifact availability. The synthesis shows that actor-based model checking, TLA+ control-plane verification, static code analysis, continuous certification, and runtime/self-adaptive testing form five complementary clusters, but empirical evaluation is dominated by small academic case studies, only a minority of approaches automate model updates from repository signals, and few are integrated end-to-end into CI/CD. We discuss methodological limitations of the body of work, including a lack of industrial-scale validation and shared datasets, contrast intrinsic (build-time, model-driven) and extrinsic (recovery-based) verification strategies, and outline a research agenda toward repository-aware, pipeline-integrated verification for evolving microservices. The present synthesis distils a set of immediate, evidence-based actions for practitioners together with a focused agenda of open research challenges.
R. Gómez, Ebeid Elsayed, Enrique R. Zarate et al.· Software· 0 citations
Today, IT organizations, in particular, have to provide quick, reliable and high-quality software solutions for meeting
the changing market requirements. While the development process has been structured by traditional software engineering
paradigms (Waterfall, Agile and Spiral Models), traditional workflows often involve operational bottlenecks. In particular, the
lack of communication and coordination between development and operations can lead to delivery delays. DevOps has come
about as a transformative approach that fuses software design and IT operations into a single, streamlined and automated
process that aims to overcome these systemic inefficiencies. DevOps is used to streamline the software delivery pipeline, when
paired with Cloud Computing infrastructure, including SaaS, PaaS, and IaaS solutions from AWS, Azure, and GCP. In this
project, one will be working on building a Continuous Integration and Continuous Deployment (CI/CD) pipeline using
Microsoft Azure to automate software delivery and improve overall efficiency
Ashwani Kumar, Geetanjali Amarawat· International Journal for Re...· 0 citations
Understanding large, complex software architectures is difficult and time-consuming. Software architecture recovery aims to extract explanatory artefacts from code, but existing methods often lack generalisability. To address this, we previously proposed Deductive Software Architecture Recovery (DSAR) to extend current techniques. This paper presents a qualitative evaluation of DSAR in an industrial setting. Using a large language model-assisted prototype, we examined the recovered architecture's content quality, presentation quality, and usefulness for understanding and maintaining real-world systems. To ensure practical relevance, we conducted an in-depth judgement study with software engineering teams at ASML applying DSAR to 17 Java repositories across diverse teams. We contribute: an empirical assessment indicating that DSAR supports comprehension, architectural reasoning, and communication; qualitative evidence on the strengths and limitations of the generated explanatory artefacts; and recommendations for practitioners and researchers on adopting and further developing DSAR for architectural sense-making.
S. A. Rukmono, Lina Ochoa, Thijs Bressers et al.· SIGSOFT FSE Companion· 0 citations
A guide that facilitates the step-by-step adoption of five practices: version control, change requests controlled with manual code inspection, continuous integration, static code analysis, and implementing an automated pipeline for continuous integration is proposed.
M. Pastrana, Hugo-Armando Ordoñez-Erazo, C. Cobos-Lozada et al.· 0 citations