The middle tier receives and processes requests from the client tier. This eliminates the need for client programs to deal with the complexity of databases and other complex back end systems. The middle tier is made up of the following:
• Web Tier
• Business Application Tier
• Infrastructure Services Layer (Application Framework)
4.1.2.1
Web Tier
Web Tier will have two main layers and they are: • Application Request Controller Layer • Presentation Layer
Application Request Controller Layer
The Application Request Controller Layer receives the request from the client tier and forwards to the appropriate User Interface (UI) model of the Presentation Layer and also to the Business Control Layer for processing. It also acts as a mediator between the Presentation Layer and the Business Layer.
Presentation Layer
Most of the end user interactions (except batch processing and internal messaging invocation for workflow components) with the system will be through the Presentation Layer. The Presentation Layer will be used to display information and for receiving inputs from the end user. This layer has been sub-divided into four parts:
• User Interface (UI) View • User Interface (UI) Model
Figure 3: Presentation Layer
The UI view layer is responsible for managing the user interaction and visual aspects of the system. Examples of user interaction management are:
• Navigation scheme (Both screen and field navigation)
• Graphical widgets used for capturing data and to issue a command Examples of visual aspects are:
• The static text displayed in a screen • The language used to display static text
• Graphical Widgets used to display dynamic/static system information • The order in which the information is presented
The main focus of the presentation layer is to provide the ability to change the visual aspects of the system without affecting other parts of the system. This is achieved by separating the UI model from the UI view layer. UI model is the layer beneath the UI view layer. UI Model is a non-graphical representation of the UI view layer. The advantages of dividing the presentation layer are:
• UI view (see Figure 3) is not required to drive other layers. This facilitates automated testing of components belonging to other layers and independent development of other layers without requiring any UI to drive them.
• Provides flexibility to choose from a variety of widgets and canvases and have different views of the same model.
UI view will be an extremely thin layer, which will capture the user inputs and will have the ability to perform very basic functions and then pass the information to the UI model. The UI model retains all the information that is displayed in presentation and will interact with the application layer to accomplish the end user’s request. One UI model can be linked to a number of UI views.
UI View
Widgets (Controls), Canvases (Containers)
4.1.2.2
Business Application Tier
Business Application Tier will have four main layers and they are:
• Business Control Layer • Business Processing Layer • Business Rules Delegate • Interface Access Layer • Data Access Layer
Business Control Layer
The Business Control Layer passes the request from the application request controlling layer to the business processing layer. This is the only way for the UI model of the presentation layer to get data from the business processes.
Business Processing Layer
The Business Processing Layer contains the “business rules” or the main processing logic of the application. Business processing layer will have two sub layers:
• Business Service Layer (also known as the Business Function Layer) • Business Object Layer
The Business Object Layer houses all the real world entities (physical as well as logical) that are stakeholders of the system. Each entity has attributes and operations that can be performed by the entity / on the entity. Business objects are connected to the database through the Data Access Layer. The Business Service Layer assembles the information from business object layer to serve a distinct business purpose. Each assembly represents a method in Business Service Layer. This layer receives inputs from UI Layer, invokes business objects and subsequently modifies the state of the system.
Business Rules Delegate
The Business Rules Delegate implements the delegate pattern for Business Rules Implementation. The implementation contains of following two sub layers:
• Business Rules Access Layer • Business Rules Object Layer
The Business Rules Access Layer represents the framework classes that abstract the logic of accessing the Business Rules Knowledgebase from the calling Business objects. The Business Rules Object Layer consists of the Fact model required for Business Rules implementation. The Business Rules Delegate is explained in detail in the Business Rules Framework and Guidelines document checked in at:
“<consortium_main_view>\ACCESS_CONSORTIUM_VOB\20-Standards And Guidelines\Business Rules\ Business Rules Framework and Guidelines Doc.docx”
Interface Access Layer
The Interface Access Layer will manage the abstractions for any external and internal systems. Business Processing Layer will be the only layer that interacts with this layer, which helps in isolating the dependencies of other system.
Data Access Layer
The Data Access Layer helps the components of business layer to access data and hides the implementation details of the underlying Enterprise Information System Tier.
4.1.2.3
Infrastructure Service Layer
The Infrastructure Service Layer is also called the Application Framework and has been described in detail in the Application Framework section of this document.