Database Software Programming

January 05, 2008

Database Software based on the LAYERS concept

The unprecedented demand for web and mobile applications, advent of .Net, AJAX and C# has lead to sophisticated and superior application design. The design methodologies used today is far more complicated and superior as compared to say 10 or even 5 years ago.

Today, a software architect builds database software based on the layers concept. What is this Layers concept? A layer is a logical grouping of code including classes and components. Commonly, three layers can be identified for an application. Presentation Layer, the Business Layer and Data Layer. We can also extend this by adding layers for specific purposes like security.

One important benefit of developing an application based on layers concept is its reuse for different platforms and other applications.

For example, a billing software developed only for a single computer system, or what we call a stand-alone computer, when developed based on the layers concept, can be deployed and used simultaneously on the network and the Internet. Of course, it will require changes but they will be minimal and required only to the extent to adapt to new environment.

.Net programming is all about developing applications using the Layers concept and visual studio lets you achieve this effortlessly.

Let me list out the various benefits and issues relating to developing applications based on Layers concept.

  • For an evolving organization, needs keep growing, which means incorporating new design requirements. Technologically too, the software and hardware technology keeps improving and accommodating these is a must. Developing database applications based on the concept of ‘LAYERS’ ensures that these changes are accommodated and the investments are optimized.
  • The ‘LAYERS’ concept allows building applications with business logic centralized. Building application based on this concept also allows isolation of the presentation layer (front end) from the database layer. This helps us to change the database from SQL to ORACLE or from ORACLE to MySQL, as and when we think it is feasible and appropriate.
  • Centralizing the business logic helps to allow multiple client applications like Windows and web applications to use the same business logics, which is near a Database server.
  • Centralizing the business logic in one place (which is business layer) enables that when the business rules of the organization change, the entire database software need not be changed.