So I hope I’ve made clear that imposing agile methods is a very red flag.
Comprehensiveness is the enemy of comprehensibility.
If you're afraid to change something it is clearly poorly designed.
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
A pattern is an idea that has been useful in one practical context and will probably be useful in others.
One of the things I've been trying to do is look for simpler or rules underpinning good or bad design. I think one of the most valuable rules is avoid duplication. "Once and only once" is the Extreme Programming phrase.