English
Related papers

Related papers: Tackling Software Architecture Erosion: Joint Arch…

200 papers

Architectural decay imposes real costs in terms of developer effort, system correctness, and performance. Over time, those problems are likely to be revealed as explicit implementation issues (defects, feature changes, etc.). Recent…

Software Engineering · Computer Science 2021-02-22 Duc Minh Le , Suhrid Karthik , Marcelo Schmitt Laser , Nenad Medvidovic

At our behest or otherwise, while our software is being executed, a huge variety of design assumptions is continuously matched with the truth of the current condition. While standards and tools exist to express and verify some of these…

Software Engineering · Computer Science 2016-05-09 Vincenzo De Florio

Modern software development methodologies include reuse of open source code. Reuse can be facilitated by architectural knowledge of the software, not necessarily provided in the documentation of open source software. The effort required to…

Software Engineering · Computer Science 2011-10-11 Eleni Constantinou , George Kakarontzas , Ioannis Stamelos

Architectural degradation, also known as erosion, decay, or aging, impacts system quality, maintainability, and adaptability. Although widely acknowledged, current literature shows fragmented definitions, metrics, and remediation…

Software Engineering · Computer Science 2025-07-22 Noman Ahmad , Ruoyu Su , Matteo Esposito , Andrea Janes , Valentina Lenarduzzi , Davide Taibi

Software architecture decision-making is critical to the success of a software system as software architecture sets the structure of the system, determines its qualities, and has far-reaching consequences throughout the system life cycle.…

Software Engineering · Computer Science 2016-10-31 Sandun Dasanayake , Jouni Markkula , Sanja Aaramaa , Markku Oivo

Computer systems are so complex, so they are usually designed and analyzed in terms of layers of abstraction. Complexity is still a challenge facing logical reasoning tools that are used to find software design flaws and implementation…

Software Engineering · Computer Science 2021-06-18 Ramy Shahin

Software architecture is receiving increasingly attention as a critical design level for software systems. As software architecture design resources (in the form of architectural specifications) are going to be accumulated, the development…

Software Engineering · Computer Science 2009-09-25 Jianjun Zhao

Complex software systems must be maintained for years or decades, and the effort and cost to maintain them are often high, involving continuous refactoring to ensure their longevity in the face of changing requirements. In this article, we…

Software Engineering · Computer Science 2018-02-13 Rafael Capilla , Elisa Yumi Nakagawa , Uwe Zdun , Carlos Carrillo

Context: Software architecture is a knowledge-intensive field. One mechanism for storing architecture knowledge is the recognition and description of architectural patterns. Selecting architectural patterns is a challenging task for…

Software Engineering · Computer Science 2020-05-19 Siamak Farshidi , Slinger Jansen , Jan Martijn van der Werf}

In Software Engineering, early detection of architectural issues is key. It helps mitigate the risk of poor performance, and lowers the cost of repairing these issues. Metrics give a quick overview of the project which helps designers with…

Software Engineering · Computer Science 2019-01-29 Théo Coulin , Maxence Detante , William Mouchère , Fabio Petrillo

Automatically constructing a program based on given specifications has been studied for decades. Despite the advances in the field of Program Synthesis, the current approaches still synthesize a block of code snippet and leave the task of…

Software Engineering · Computer Science 2022-01-26 Ali Shokri

In the last 15 years, software architecture has emerged as an important software engineering field for managing the development and maintenance of large, software- intensive systems. Software architecture community has developed numerous…

Software Engineering · Computer Science 2017-01-24 Davide Falessi , Muhammad Ali Babar , Giovanni Cantone , Philippe Kruchten

To promote engineering self-aware and self-adaptive software systems in a reusable manner, architectural patterns and the related methodology provide an unified solution to handle the recurring problems in the engineering process. However,…

Software Engineering · Computer Science 2020-04-02 Tao Chen , Rami Bahsoon , Xin Yao

The main problems of Software Engineering appear as a result of incompatibilities. For example, the quality of organization of the production process depends on correspondence with existent resources and on a common understanding of project…

Software Engineering · Computer Science 2009-03-13 Kirill A Sorudeykin

Software architecture related issues are important for robotic systems. Architecture centric development and evolution of software for robotic systems has been attracting researchers attention for more than two decades. The objective of…

Software Engineering · Computer Science 2017-01-20 Aakash Ahmad , Muhammad Ali Babar

Software architecture has been an active research field for nearly four decades, in which previous studies make significant progress such as creating methods and techniques and building tools to support software architecture practice.…

Software Engineering · Computer Science 2023-08-23 Zhiyuan Wan , Yun Zhang , Xin Xia , Yi Jiang , David Lo

Software architecture is receiving increasingly attention as a critical design level for software systems. As software architecture design resources (in the form of architectural descriptions) are going to be accumulated, the development of…

Software Engineering · Computer Science 2007-05-23 Jianjun Zhao

With the increased dependence on software, there is a pressing need for engineering long-lived software. As architectures have a profound effect on the life-span of the software and the provisioned quality of service, stable architectures…

Software Engineering · Computer Science 2019-12-12 Maria Salama , Rami Bahsoon , Rajkumar Buyya

Orientation of modern software systems towards data-intensive processing raises new difficulties in software engineering on how to build and maintain such systems. Some of the important challenges concern the design of software…

Software Engineering · Computer Science 2023-12-07 Aleksandar Dimov , Simeon Emanuilov , Boyan Bontchev , Yavor Dankov , Tasos Papapostolu

The nature of software re-engineering is to improve or transform existing software so it can be understood, controlled and reused as new software. Needs, the necessity of re-engineering software has greatly increased. The system software…

Software Engineering · Computer Science 2011-12-20 Phuc V. Nguyen