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. (Which is Extensibility)
  • Most of the database applications have one similarity - the requirement to access data and work with it. For this we write a data access component, which in turn provides a data access layer. Using the Layers concept, you can develop a generic data access component that can plug into any .NET application. First and foremost, the data access component will make interaction with data much easier, whether we retrieve, add or modify data.
  • The ‘LAYERS’ approach allows us to build large enterprise applications. Multiple layer approach (Which is N-tier) allows us (developers) to alter applications or add to them more easily. Maintaining existing code, user interfaces and databases is also easier and better. Although earlier technologies allowed such architecture to be used, the implementation was more difficult.
  • Higher standards of design and rules can be implemented as validations pertaining to data or user interface or reporting, are all grouped one place or logically tied up.
  • The reporting functionality, which is a separate layer, can work independently of the daily functioning or real time application.
  • Applications developed using the ‘LAYERS’ concept are more stable as the parts of the application are more stable.
  • Applications developed using business layers enables its use with the presentation layer, regardless of whether an application is a browser, a Microsoft smart phone, a pocket PC or Microsoft Xbox.

Twitter Updates

    follow me on Twitter
    AddThis Social Bookmark Button
    Blog powered by TypePad
    My Photo