Solutions

picture

Client/Server

Client/Server Architecture:

 As a result of the limitations of file sharing architectures, the client/server architecture emerged. This approach introduced a database server to replace the file server. Using a relational database management system (DBMS), user queries could be answered directly. The client/server architecture reduced network traffic by providing a query response rather than total file transfer. It improves multi-user updating through a GUI front end to a shared database. In client/server architectures, Remote Procedure Calls (RPCs) or standard query language (SQL) statements are typically used to communicate between the client and server.

N-tier Architecture:

In this model, sometimes also known as the 3-tier model, clients remain focused on presenting information and receiving input from users. This is known as the presentation tier.

Data, meanwhile, is hosted on one or more data servers in the data tier. Only that processing required to access data and maintain its integrity gets implemented on this tier. This includes SQL query engines and transaction managers for commercial software, as well as triggers and stored procedures written by database administrators. Unlike the client-server model, however, these triggers and procedures are limited in scope to managing the integrity of the data residing on this tier.

Business rules are moved to the application logic tier, sometimes referred to as the business services or middle tier.

Stored procedures on the database are sometimes used to implement and to enforce business rules. While this can lead to performance gains, the approach does not go along with the purist concept of n-tier or DNA, where the data tier is kept strictly for data.

The term n-tier comes from the fact that the application logic tier is often subdivided into further logical tiers dedicated to one task or another; the application tier is seldom homogeneous. Some programmers view the division as three tiers, while others view the different classes of application logic as individual tiers.

Dividing a task into three or more tiers brings the following benefits:

      > Separation of presentation from function
      > Ability to optimize each tier in isolation for scaling and performance.
      > Limited parallelism during development.
      > Reuse of functional modules.
      > Ability to select the appropriate platform for each task.

Mindwave solutions provide solutions in the following technologies:

      > Java, J2EE, MVC, JSP, Hibernate, Struts
      > .net, C#, VB, ASP.net
      > Oracle, SQL Server