An e-contract is a contract modeled, specified, executed, controlled and monitored by a software system. Econtract evolves over a period of time and there are many scenarios of ch...
When trying to understand the evolution of a software system it can be useful to visualize the evolution of the system’s architecture. Existing tools for viewing architectural e...
The notion of functional or modular dependency is fundamental to understand the architecture and inner workings of any software system. In this paper, we propose to extend that no...
Clones are code segments that have been created by copying-and-pasting from other code segments. Clones occur often in large software systems. It is reported that 5 to 50% of the ...
Software evolution plays a key role in the overall lifecycle of a software system. In this phase, software developers extend the capabilities and functionality of the system to me...
Andrejs Jermakovics, Marco Scotto, Giancarlo Succi
In a software system, it is inevitable that components will occasionally fail to produce acceptable results and become unavailable to serve its clients. Replication is the techniq...
Empirical performance evaluation is the process of measuring and calculating performance metrics of deployed software systems. It is a part of performance validation during testin...
The source code of a software system is in constant change. The impact of these changes spreads out across the software system and may lead to the sudden manifestation of failures...
Developers rely on the mechanisms provided by their IDE to browse and navigate a large software system. These mechanisms are usually based purely on a system’s static source cod...
More than 90% of the cost of software is due to maintenance and evolution. Understanding the evolution of large software systems is a complex problem, which requires the use of va...