Click a method · then click its ownergod class · reasons to change 3
The god class
Employeedoes everything · answers to 3 bosses
Which boss owns each job?
Pick a method to begin
Each method secretly belongs to a different boss. Click one on the left, then click the boss on the right who would ever ask to change it. Sort all six and the refactor appears.
✓ Sorted — refactored into three focused classes
▸Same behaviour, but each class now answers to one boss and has dropped from 3 reasons to change down to 1. That drop is SRP.
▸Try the "and" test: "Employee calculates pay and saves to the DB and formats reports…" — every and is a second reason to change.
Click a card above
SRP isn't about ugliness — it's about accidental breakage. When two bosses share one class, a change for one can silently break the other's feature. These cards show why one-actor-per-class keeps changes from colliding.
▸One reason to change = one actor. The real question isn't "how many things does this class do?" but "how many different people would ask me to change it?"