A reference software architecture for a domain defines the fundamental components of the domain and the relations between them. Research has shown the benefits of having a referen...
In agile software development, test code can considerably contribute to the overall source code size. Being a valuable asset both in terms of verification and documentation, the ...
Past software engineering literature has firmly established that software architectures and the associated code decay over time. Architectural decay is, potentially, a major issu...
Scripting is a powerful, high-level, cross-platform, dynamic, easy way of composing software modules as black boxes. Unfortunately, the high runtime overhead has prevented scripti...
Even when working on a well-modularized software system, programmers tend to spend more time navigating the code than working with it. This phenomenon arises because it is impossi...