Good Resources about Object Oriented Design On the Criteria To Be Used in Decomposing Systems into Modules Sandi Metz - Less - The Path to Better Design Jim Weirich - The Building Blocks of Modularity Uncle Bob - Active Record vs Objects Gregory Moeck - Why You Don't Get Mock Objects