Architecture & practice·Design, structure and tradeoffs
two teams keep editing the same class for two entirely unrelated reasons and keep colliding.
Single responsibility
Also calledsingle responsibility principle, SRP
The rule that a module should have one reason to change — which is a statement about people, not about code size. The useful reading is the original one: a responsibility is a stakeholder whose request causes an edit, so a class serving the finance team and the support team has two. It comes up whenever a shared file becomes a merge-conflict hotspot, which is the symptom the principle was invented to describe.