what is design principles
Software design principles represent a set of guidelines that helps us to avoid having a bad design. The design principles are associated to Robert Martin who gathered them in Agile Software Development: Principles, Patterns, and Practices. According to Robert Martin there are 3 important characteristics of a bad design that should be avoided: 1  Rigidity-It is hard to change because every change affects too many other parts of the system. 2  Fragility-When you make a change, unexpected parts of the system break.