Data Patterns - Unit Of Work / Repository / Specification