# Introduction

A business logic addon should follow the conventions and guidelines used to develop Soffid IAM.

It must be composed of:

<span style="color: #a6d100; font-weight: bold; font-size: 18px;">1.</span> Hibernate entities and mappings.

<span style="color: #a6d100; font-weight: bold; font-size: 18px;">2.</span> DAOs to access those hibernate entities. They must contain transformation methods to build value objects from entities and vice versa.

Service objects to manage value objects.

<span style="color: #a6d100; font-weight: bold; font-size: 18px;">3.</span> EJBs that wrap access to service objects. They are responsible for security access control. They must be Stateless Session Beans with Container transaction management.

<span style="color: #a6d100; font-weight: bold; font-size: 18px;">4.</span> Authorizations descriptor.

<span style="color: #a6d100; font-weight: bold; font-size: 18px;">5.</span> Spring descriptor.