Software design can be seen as a way of solving problems or even creating new ones. IN order to solve these problems, designers can follow few steps or recommendations from others. One of the most important topics regarding the software design is software requirements analysis. This SRA lists some specifications that might be useful most of the time.
The following points are some recommendations of the software design principles:
- The designer needs to have the ability to search for new solutions to the problems
- The model of the software must be able to be traceable in order to find a solution in an easier way.
- It is accepted to use solutions that have been discovered by others.
- The design needs to be reachable, that means that it needs to be possible to take it into the real world.
- The design must show coherence.
- The designs must be well structured.
- The design must be able to accept or adapt changes.
- The idea of a software design is to solve problems, not to get worse.
There are some points that are needed to be taken into account, such as the compatibility, extensibility, security, usability, performance, scalability, etc. These considerations may lead you to a great software design.
Retrieved from https://en.wikipedia.org/wiki/Software_design.