Software Architecture typically refers to the bigger structures of a software system, and it deals with how multiple software processes cooperate to carry out their tasks. Software Design refers to the smaller structures and it deals with the internal design of a single software process. By the end of this tutorial, the readers will develop a sound understanding of the concepts of software architecture and design concepts and will be in a position to choose and follow the right model for a given software project.
This tutorial is designed for all software professionals, architects, and senior system design engineers. Managers of architecture teams also will be benefited from this tutorial.
There is no exact prerequisite for this tutorial. Any software professional can go through this tutorial to get a bigger picture of how high quality software applications and products are designed.