Modern software systems are highly interconnected and have been under constant change for many years. IT decision makers find it difficult to predict and plan change projects due ...
Architecture-based software development is the implementation of a software system in terms of its architectural constructs (e.g., components, connectors, ports). It has been show...
— Software evolution and update play a vital role in software engineering. It has many advantages, such as improving the efficiency of programming, reducing the cost of maintena...
In this paper, we present DeployWare to address the deployment of distributed and heterogeneous software systems on large scale infrastructures such as grids. Deployment of softwa...
Software systems today often run in malicious environments in which attacks or intrusions are quite common. This situation has brought security concerns into the development of so...
During the last decades, performance of available hardware resources constantly increased [15], which enabled the assignment of more and more complex tasks to software systems. As...
Jens Bruhn, Christian Niklaus, Thomas Vogel, Guido...
The proliferation of smart spaces and emergence of new standards, such as Web Services, have paved the way for a new breed of software systems. Often the complete functional and Qo...
Abstract—The increasing need for continuously available software systems has raised two key-issues: self-adaptation and design evolution. The former one requires software systems...
Brice Morin, Thomas Ledoux, Mahmoud Ben Hassine, F...
Many software systems rely on third-party components during their build process. Because the components are constantly evolving, quality assurance demands that developers perform ...
Il-Chul Yoon, Alan Sussman, Atif M. Memon, Adam A....
Abstract—Change coupling is the implicit relationship between two or more software artifacts that have been observed to frequently change together during the evolution of a softw...