set up backend data model