*[[Link]Does Refactoring Violate YAGNI? (aus "Is Design Dead?")[Url=![]() |
*[[Link]Does Refactoring Violate YAGNI?[Url=![]() |
Aber:
Man kann es auch übertreiben und YAGNI zur Ablehnung lästiger Forderungen missbrauchen. Dann wird daraus ein DunklesYagni, ein Hemmschuh für Innovation, ein Scheuklappensystem, das den Entwickler daran hindert, Mängel der eigenen Software bzw. der eigenen Denkweise zu erkennen. Zusätzlich führt es zu Frustrationen beim Anwender, weil sein berechtiges FeedBack keinen positiven Response findet.
Der Sinn von YAGNI ist es, das Bauen von Systemen zu verhindern, die komplexer (und damit schwieriger zu warten und erweitern) sind, als es für den aktuellen Projektstand unbedingt notwendig ist. Jede andere Verwendung sollte kritischst auf DunklesYagni untersucht werden.
Vermutlich ist es nicht so leicht nachzuvollziehen, was damit alles gemeint sein kann, bzw. wie das in der Praxis aussieht. Vielleicht gelingt es ein Paar Beispiele zusammenzustellen, wo es darum geht, ob man etwas macht oder nicht und wo eventuell Yagni oder DunklesYagni vorliegt. -- HelmutLeitner