Prototyping is a technique widely used in many engineering fields. However, in software engineering, its usage is limited to requirement elicitation. Little research has been done ...
As a program evolves, it becomes increasingly difficult to understand and reason about changes in the source code. Eventually, if enough changes are made, reverse engineering and ...
We propose test-based pointcuts, a novel pointcut mechanism for AspectJ-like aspect-oriented programming languages. The idea behind the test-based pointcuts is to specify join poi...
During software evolution, programmers spend a lot of time and effort in the comprehension of the internal code structure. Such an activity is often required because the available...
Heteregenous multiprocessor SoCs are becoming a reality, largely due to the abundance of transistors, intellectual property cores and powerful design tools. In this project, we ex...