Crosscutting concerns are software system features whose implementation is spread across many modules as tangled and scattered code. Identifying such code helps developers to chan...
Gerardo Canfora, Luigi Cerulo, Massimiliano Di Pen...
Refactoring is about changing the design of existing code without changing its behaviour, but with the aim of making code easier to understand, modify, or reuse. Taking Haskell an...
Business rules change quite often. These changes cannot be handled efficiently by representing business rules embedded in the source code of the business logic. Efficient handli...
As programs evolve, their code increasingly becomes tangled by programmers and requirements. This mosaic quality complicates program comprehension and maintenance. Many of these a...
Daniel R. Licata, Christopher D. Harris, Shriram K...
Long-lived, architecture-based software systems are increasingly important. Effective process support for these systems depends upon recognising their compositional nature and the ...
R. Mark Greenwood, Dharini Balasubramaniam, Sorana...