| |
|
|
|
|
Introduction |
This section is a quick overview of how software architecture has changed and its effect over software development. Software development has become complex as architecture has evolved. The software architecture evolution was mostly based on accessibility, security, deployment and maintenance. |
Monolithic Applications |
| |
- Designed for single user, single machine.
- Exploits the machine’s capability to the maximum.
- Security was not high priority.
- Difficult to upgrade as each machine has to be updated, e.g. Text editors, Spread sheets.
- Software languages used: C/C++.
|
Client/Server Applications |
| |
- Server was designed for multiple users, whereas client was designed for single user.
- Proprietary protocol for communication between client and server.
- Security was a priority.
- Server was easy to upgrade, but Client was difficult as each machine has to be updated.
- Security was a priority.
- The importance of RDBMS, acts as the server, has increased, e.g. Email server, ERP.
- Software languages used: C/C++/VB for client, stored procedures (PL/SQL, TSQL) for the server side.
- Architecture concerns: the load on the server should be optimized as the server needs to be scalable; caching was used to reduce server load.
|
|
|
| |