creating domain modeling