Objective 2.1: Recognize the effect on each of the following characteristics of two tier, three tier and multi-tier architectures: scalability, maintainability, reliability, availability, extensibility, performance, manageability, and security

Objective 2.2: Recognize the effect of each of the following characteristics on J2EE technology: scalability, maintainability, reliability, availability, extensibility, performance, manageability, and security

Maintainability

Maintainability is the ability to correct flaws in the existing services without impacting other components of the system

Maintainability is enhanced by low coupling, modularity and documentation.

Effects

1 tier:

Poor. 1 tier systems are tightly coupled.

2 tier:

Poor. Business logic and data manipulation are often mixed.

n tier:

Good. Using layering and modularity, components can be modified independently.

J2EE:

J2EE supports extensibility because it has built-in support for modularity.
E.g: JSPs can handle presentation, Servlets can handle routing, and EJBs can handle business logic.

Coupling
Coupling is the level of interdependency between an element and its environment (other elements)
An element with low coupling is not dependent on too many other elements, and can thus more easily be isolated than elements with high coupling.

Cohesion
Cohesion is a measure of uniformity of the responsibilities of an element. An element with highly related responsibilities has high cohesion.

Modularity
Modulatiry is the property of a system that measures the extent to which it is composed out of separate parts called modules. Modules should be encapsulated through a separation between its interface and its implementation. A good module is characterized by low coupling and high cohesion.

Hall of fame

  • Me: Part I 81%
  • Heros