I use this technique to start pulling the design apart, and it's one of the fundamental techniques in my "Surviving Legacy Code" training course. If you now Replace Inheritance with Delegation, you arrive at a client depending on a Virtual Clock, and then you arrive at the start of this article.