desgin data access layer class
Merge origin/master