Cybernetics, among its more general definitions, is about effective governance of dynamic probabilistic systems. First order cybernetics is concerned with [software] processes gov...
Programmers often have to perform change tasks that involve unfamiliar portions of a software system’s code base. To help inform the design of software development tools intende...
Jonathan Sillito, Kris De Volder, Brian Fisher, Ga...
Component-Based Software Engineering, Separation of Concerns, Model-Driven Architecture, and Aspect-Oriented Programming are four active research areas that have been around for s...
Code duplication, plausibly caused by copying source code and slightly modifying it, is often observed in large systems. Clone detection and documentation have been investigated b...
Magdalena Balazinska, Ettore Merlo, Michel Dagenai...
Software engineering community has proposed several methods to evaluate software architectures with respect to desired quality attributes such as maintainability, performance, and...