Best Practice Architecture
Often, the application architecture is given, so no decision has to be made. When it is not, three important criteria for choosing an architecture are:
Cost of Infrastructure: mainframes are expensive, which is why client-based and client-server architectures have become popular.
Cost of Development: because software is expensive to develop, client-based and client-server architectures that use off-the-shelf software tend to be much cheaper than software solutions that require in-house development.
Scalability refers to the ability to increase (or decrease) in computing capacity as network demand changes. Client-server architectures are the most scalable since both clients and servers can be added to meet network needs.