b. Application layers

EIS (Enterprise information system) layer

This layer contains the application DAOs; it encapsulates the data from different application data sources and passes business entities to the middle tier. The application uses Hibernate as ORM, Spring framework for datasource configuration, session factory and components declaration(annotations). All DAOs have their own interface and manage only one application entity. Application entities are annotated using JPA and some Hibernate annotations (this is minimal).

Sims supports MySql by default.

Middle Tier

This layer contains all business logic; its services components use the EIS layer components (DAOs) to retrieve the application data from different data sources. The application uses Spring framework for component declaration and transaction management. All services have their own interfaces, the services shouldn’t have any 3rd party technology dependencies other than Spring. Spring Security is used to handle service method invocation permissions (using AOP).

middle-tier1

User interface tier

This is the presentation layer; uses the Middle tier components to retrieve the information that will be displayed to the user. The application is configured to use Spring MVC (annotated) and Jsp  and tag libraries. Spring security is used to manage Url and interface components access.

web-tier

Web services tier

This layer uses the middle tier components to retrieve the information requested by 3rd party clients; it is also integrated to Spring framework, and it uses Apache Cxf and Jaxrs API. Spring security is used to handle the permissions in this tier. Model entities are mapped to value objects annotated with JaxB.

web-services-tier

Leave a comment