Abstract
The architectural design of a client/server system affects the initial development cost, day-to-day transactional performance, ongoing maintenance costs, and long-term flexibility and scalability of the application. The choice between a two- and three-tier architecture should be based on the scope and complexity of a project, the time available for completion, and the expected enhancement or obsolescence of the system. A three-tier architecture requires more planning and support than a two-tier architecture, but it offers advantages in openness, flexibility, scalability, and integration.