Friday, July 11, 2008

How to design an 'Architecture of J2EE application'

Steps to Design ‘Architecture of the J2EE / Struts’ application

The term ‘Architecture’ of the application referes to the structure of the typical J2EE application. The term structure may refer to the following:

1. Folders structure
2. Tiers
3. Components
4. Communication between Components

These are discussed below.

Folder Structure:

The folders found in the typical J2EE application is just the arrangements of files that would be used while the user interacts to the application. For example, all the pictures can be stored under ‘image’ folder and all the documents can be stored in folders named as ‘pdfs’ or ‘docs’, etc.,


Tiers are the layers found in the applications. The various tiers are Interface tier, Business Tier, Persistence Tier, etc., This is decided based on the complexity of the application, number of developers in the team, Timelines of the delivery, etc., For example, if the application is used for a short period of time, then there would not be more number of components, we can design just with JSPs. But large applications need business tier, to enhance the reusability.


The various components used in typical j2ee application would be Forms, Business classes, Utility classes, DTOs, JDOs, Action classes, Custom Tag classes, etc. These components are not chosen arbitrarily, they are carefully observed, analysed and finalized based on the specific requirements of the applications.

Communication Between Components:

This is a bit complex for the system architect and the technical leads. This greatly influences the performance of the application. The decisions taken here would be like where the exceptions are handled how the components would interact between each other. How the data needs to be fetched and passed on to the business classes, and How the fetched data is going to be displayed to the user and by what means etc.,

Diagram to demo the Various Layers and Components :

We will discuss the architecuture details and lot more in the next blog. Keep Visiting. Thanks.


1 comment:

servlets said...

can we use a ValueObject in this arch