Concerns express a specific interest in some topic regarding a particular system of interest. Separation of concerns (originally invented by Dijkstra) is essential in the software development process: It is an important paradigm in software engineering to cope with the increasing number of special purpose concerns in today's applications. To deal with that increasing complexity, several new approaches like Composition Filters, Hyperslices and last but not least Aspect-Oriented Programming (including programming languages like AspectJ) have been proposed. But what about legacy systems, where separation of concerns could only be applied in a restricted way within the object-oriented paradigm? It is possible to find and to encapsulate them without changing software behavior, improving maintainability and e-usability, reducing tangled and scattered code.