I have found that the service layer adds unnecessary complexity in most cases. In theory is to avoid to have businesses logic in the dao layer but at the end this just lead to confusion, even some people have disused to remove completely the dao layer as they feel it does not add value. [http://ayende.com/blog/4784/architecting-in-the-pit-of-doom-the-evils-of-the-repository-abstraction-layer][1]


But if you have multiple business logics then yes It is a good idea.  [https://softwareengineering.stackexchange.com/questions/162399/how-essential-is-it-to-make-a-service-layer][2]


  [1]: http://ayende.com/blog/4784/architecting-in-the-pit-of-doom-the-evils-of-the-repository-abstraction-layer
  [2]: https://softwareengineering.stackexchange.com/questions/162399/how-essential-is-it-to-make-a-service-layer