Software design

Overview#

Software design is design of an Application and is typically part of the Software Development Life Cycle!! Software design Concepts The design concepts provide the software designer with a foundation from which more sophisticated methods can be applied. A set of fundamental design concepts has evolved. They are as follows:

In his object model, Grady Booch mentions Abstraction, Encapsulation, Modularisation, and Hierarchy as fundamental software design principles.[4] The acronym PHAME (Principles of Hierarchy, Abstraction, Modularisation, and Encapsulation) is sometimes used to refer to these four fundamental principles. Some will use the four fundamental principles adding Polymorphism.

All Software design#

All Software design has two primary items to deal with: Each application has two categories of requirements. Non-functional requirements also define development time qualities including maintainability, testability, extensibility and deployability. The architecture that you choose for Software design determines how well it meets these quality requirements.

Software design Architectures Classifications#

Software design might be classified in many different Architectures. There might be more information for this subject on one of the following: