During software evolution, adaptive, and corrective maintenance are common reasons for changes. Often such changes cluster around key components. It is therefore important to anal...
James M. Bieman, Anneliese Amschler Andrews, Helen...
A large amount of research is devoted to software evolution and program understanding, but these topics are often neglected in software engineering curricula. The CCSE initiative ...
Arie van Deursen, Jean-Marie Favre, Rainer Koschke...
In the last decades several tools and environments defined and introduced languages for querying, navigating sforming abstract syntax trees. These environments were meant to supp...
Giuliano Antoniol, Massimiliano Di Penta, Ettore M...
Many applications have one or more important modules that are written in a language other than conventional procedural or object oriented languages. These languages are often tran...
Parsing programming languages is an essential component of the front end of most program comprehension tools. Languages such as C++ can be difficult to parse and so it can prove ...
Emerging application domains such as interactive vision, animation, and multimedia collaboration display dynamic scalable parallelism, and high computational requirements, making ...
Video on Demand (VoD) services are very appealing these days. In this work, we discuss four distinct alternatives for the architecture of a VoD server and compare their performanc...
Daniela Alvim Seabra dos Santos, Alex Borges Vieir...
Power-performance optimization is a relatively new problem area particularly in the context of server clusters. Poweraware request distribution is a method of scheduling service r...
This paper presents a statistical model for explaining why skewed-associativity removes conflicts better than setassociativity. We show that, with a high probability, 2-way skewe...