Robert C. Martin fa apparire il termine " fragile design" in connessione con SRP : Il principio di responsabilità unica :
If a class has more then one responsibility, then the responsibilities
become coupled. Changes to one responsibility may impair or inhibit
the class’ ability to meet the others. This kind of coupling leads to
fragile designs that break in unexpected ways when changed.
Definisce la fragilità come:
Closely related to rigidity is fragility. Fragility is the tendency of
the software to break in many places every time it is changed. Often
the breakage occurs in areas that have no conceptual relationship
with the area that was changed. Such errors fill the hearts of
managers with foreboding. Every time they authorize a fix, they fear
that the software will break in some unexpected way.
As the fragility becomes worse, the probability of breakage increases with time,
asymptotically approaching 1. Such software is impossible to maintain.
Every fix makes it worse, introducing more problems than are solved.
Such software causes managers and customers to suspect that the
developers have lost control of their software. Distrust reigns, and
credibility is lost.
( Principi di progettazione e modelli di progettazione )
Il termine "fragile" come una decrizione di una classe si verifica anche nel problema della classe base fragile .