Hassen Ben Rebah

Website Design and Development with HTML5 and CSS3


Скачать книгу

the need to open it, the refrigerator gives you a description of the missing ingredients as well as the nearest supermarkets that sell this product.

      Figure 1.5. LCD screen of a Samsung smart refrigerator5

      1.3.1. The three levels of abstraction of an application

       – Presentation, also known as HMI, promotes interaction between the user and the application. This layer governs keyboard and mouse input, and presents information on the screen. It is strongly recommended that this aspect be ergonomic and pleasant.

       – Processing represents the tasks to be performed by the application. They are divided into two categories:- local processing, assembling the checks performed on the conversation with the HMI (e.g. checking and input assistance);- global processing, essentially forming the application. This is what is known as the business logic layer.

       – Data, more precisely access to data, which involves assembling the tools for managing data stored by the software.

Presentation Presentation management
Presentation logic Core of the application
Processing Local Processing logic
Global Processing management
Data Data logic
Data management

      NOTE.– These three levels can be nested or distributed in several possible ways between multiple computers.

      1.3.2. One-tier architecture

      Figure 1.6. Architecture of an application on a central server

Benefits Disadvantages
Meets the needs of a single user Easy to deploy Mainframe overload Maintenance is difficult

      1.3.3. Two-tier architecture

      In the case of two-tier architecture, also known as a client-data server, or first-generation client-server, the client device is satisfied with assigning data management to another service. A specific example of this architecture is a management application that runs on a Windows or Linux operating system and accesses a central DataBase Management System (DBMS). This application makes it possible to benefit from the power of calculators deployed in a network in order to provide a user-friendly interface, while ensuring consistency of the data, which are always managed centrally.

      Figure 1.7. Two-tier architecture (client-data server)

      NOTE.– The exchange of messages between the client and the server is accomplished via a network by means of a middleware (the network layers and software services promoting conversation between the components of a distributed application).

Benefits Disadvantages
User-friendly interface Centralized dataPowerful architecture for a reduced number of users (< 50) Fat client: the client supports most application processingApplication updates must be deployed for all clientsLimited number of clients: changes in the number of clients cause a degradation in server performance

      1.3.4. Three-tier architecture

      Three-tier architecture, also known as the client-distributed server, or the second-generation client-server, subdivides the application into three different service levels:

       – first level: presentation and local processing (data formatting, input checks, etc.) are accomplished by the client device;

       – second level: global processing of the application is accomplished by a web server equipped with application extensions;

       – third level: the data are accomplished by a database server (centralized DBMS).

      Figure 1.8. Three-tier architecture

Benefits Disadvantages
Thin client Easier deployment Centralized DBMS All of the complexity lies in the intermediate tier (the web server)

      1.3.5. n-tier architecture

      n-tier architecture was created to address the limitations of three-party architectures and to create robust, easy-to-maintain applications. In reality, n-tier architecture confirms the distribution of the application layer between different services and not the reproduction of the layers. The application layer consists of “business” components that are independent and specialized. They communicate with each other