Abstract. The build architecture of legacy C/C++ software systems, groups program files in directories to represent logical components. The interfaces of these components are loos...
Homayoun Dayani-Fard, Yijun Yu, John Mylopoulos, P...
Program slicing has many applications in software engineering activities including program comprehension, debugging, testing, maintenance, and model checking. In this paper, we pr...
Modularity is one of the most important properties of a software design, with significant impact on changeability and evolvability. However, a formalized and automated approach i...
— One of the main tasks software testing involves is the generation of the test inputs to be used during the test. Due to its expensive cost, the automation of this task has beco...
Component-Based Software Engineering, Separation of Concerns, Model-Driven Architecture, and Aspect-Oriented Programming are four active research areas that have been around for s...