(SRP) The Single Responsibility Principle. * Each responsibility should be a separate class, because each responsibility is an axis of change. * A class should have one, and only one, reason to change. * If a change to the business rules causes a class to change, then a change to the database schema, GUI, report format, or any other segment of the system should not force that class to change. Related: * OneResponsibilityRule ''(MergeMe? Merge ORR into SRP?)'' * PrinciplesOfObjectOrientedDesign * ResponsibilityDrivenDesignConflictsWithYagni ---- CategoryModellingLawsAndPrinciples