Software-intensive systems evolve continuously under the pressure of new and changing requirements, generally leading to an increase in overall system complexity. In this respect,...
—Code smells are poor implementation choices, thought to make object-oriented systems hard to maintain. In this study, we investigate if classes with code smells are more change-...
The architecture of a software system has a significant impact on its quality of service (QoS) as measured by several performance metrics such as execution time, availability, th...
This paper addresses not only the question of testability measurement of OO designs but also focuses on its practicability. While detecting testability weaknesses (called testabil...
This work presents a descriptive and analytic study of classes playing zero, one, or two roles in six different design patterns (and combinations thereof). First, we answer three...