During software development it is helpful to obtain early estimates of the defect density of software components. Such estimates identify fault-prone areas of code requiring furth...
Past software engineering literature has firmly established that software architectures and the associated code decay over time. Architectural decay is, potentially, a major issu...
Capturing the technical knowledge, contextual information, and rationale surrounding the design decisions underpinning system architectures can greatly improve the software develo...
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...
– Building large software systems out of existing software components can save time and cost. These software components range from architectural and design components to binary c...