Check out Extract Product Lines by Martin Fowler. Here is an excerpt:
To do effective legacy displacement, we need to figure out how to break
down the problem into manageable pieces. Extract Product Lines does this
by identifying product lines and…
The full article is available here.