Software Architecture Level Of Design. Also the non-functional requirements such as scalability portability and maintainability have to be considered in this step. In simple words software architecture is the process of converting software characteristics such as flexibility scalability feasibility reusability and security into a structured solution that meets the technical and the business expectations.
Refactoring Guru - Design Patterns. In Software Development this means that derived classes must be substitutable for their base classes but this principles resemblance with Bertrand Meyers Design by Contract is how it can be applied to Distributed Architecture. When creating renderings whether it is a section elevation or plan knowing how to use Photoshop is absolutely vital.
Now were at a higher level of thinking beyond the class.
Refactoring Guru - Design Patterns. Architectural design is the greatest summarize edition of the system. A good architecture is important otherwise it becomes slower and more expensive to add new capabilities in the future. Architectural Design - The architectural design is the highest abstract version of the system.