There is a growing consensus that crosscutting concerns harm code quality. An example of a crosscutting concern is a functional requirement whose implementation is distributed acro...
Marc Eaddy, Thomas Zimmermann, Kaitin D. Sherwood,...
One of the most difficult tasks in software development is that features are implemented by changing the code of other features. This problem cannot be solved with existing general...
With the development of embedded and mobile systems, Java is widely used for application programs and is also considered for implementing systems kernel or application platforms. I...
As domain-specific modeling begins to attract widespread acceptance, pressure is increasing for the development of new domainspecific languages. Unfortunately these DSLs typicall...
One of the important activities in re-engineering process is detecting design flaws. Such design flaws prevent an efficient maintenance, and further development of a system. Th...