Source code obfuscation is a protection mechanism widely used to limit the possibility of malicious reverse engineering or attack activities on a software system. Although several...
Mariano Ceccato, Massimiliano Di Penta, Jasvir Nag...
Understanding aspect-oriented systems, without appropriate tool support, is a difficult and a recognized problem in the research community. Surprisingly, little has been done to ...
In this paper, we introduce a technique for applying Independent Component Analysis to vector space representations of software code fragments such as methods or blocks. The dista...
A common static software bug detection technique is to use path simulation. Each execution path is simulated using symbolic variables to determine if any software errors could occ...
We present a static analysis framework for inference of security-related program properties. Within this framework we design and implement ownership, immutability and information ...
Identification of design patterns can deliver important information to designers. Therefore, automated design pattern detection (DPD) is highly desirable when it comes to underst...
Comprehending an unfamiliar code fragment requires an awareness of explicit usage directives that may be present in the documentation of some invoked functions. Since it is not pr...
Impact analysis is a specialized process of program comprehension that investigates the nature and extent of a planned software change. Traditionally, impact analysis inspects dep...
The classical comprehension theories study relations between extensions, intensions, and names. Originally developed in linguistics and mathematics, these theories are applicable ...