A well-designed software application based on the Client/Server model is divided into separate logical parts called layers or levels. Each layer has a different responsibility in the overall architecture. These layers are purely abstractions, and do not correspond to physical distribution. The logic levels and the interconnection between them represent the most common design of a transaction processing.
Typical layers in a client/server system are as follows:
. Presentation layer - this layer includes components that handle the user interface and user interaction process. It is used for communications between the end user and the processing system, which can be for example a business logic oriented server with the role of managing the information. Presentation logic in an application program uses these services to interact with the presentation management facilities of the server. One example of presentation layer can be made up by JSP pages which are basically HTML files with special tags, having the possibility to provide dynamic content to the clients, by including Java code. The content of pages interacts with the servlet engine placed into a Web Server which is the one who runs them.
. Business logic layer. This layer contains components that handle the programming logic of the application, performing data manipulation and computation required by transactions of reply/request. Business logic is typically subdivided into several modules, each providing a separate service. Modules could be: checking the validity of input data, handling communications, performing data access, accessing system information, setting up the processing environment requesting system services; An example of components of a business layer are the Java Beans, with which one can create platform-independent components. Other definition of the business logic: Business logic refers to the logic that embodies business rules rather than the view of data or storage, with the consumers of the business process. The core of any application is the business functionality it provides. An application performs a business process that consists of one or more tasks. For more complex business processes that require multiple steps and long running transactions, the application needs to have some way of orchestrating the business tasks and storing state until the process has completed. One can design the logic in your business layers to be used directly by presentation components or to be encapsulated as a service and called through a service interface. The core of the business logic is sometimes also referred to as domain logic. The business components may also make requests of external services, in which case you may need to implement service agents to manage the conversation required for the particular business task performed by each service you need to use.