Add data mapper design pattern