I agree. I think that SRP is not only a software design principle, but a system design principle. I think any kind of complex system can benefit from this principle!
Organizations, departments and teams are complex systems, just like software.
The departments that make up an organization can have responsibilities within that organization, to help the organization achieve its goals. The teams within a department have responsibilities to help the organization achieve its goals. And the individual roles within a team also have their own responsibilities to contribute towards the teams success. (I say role and not person, because multiple people can have the same role in a team).
Using single responsibility principle, keeps teams focussed, stops them from getting overloaded, and stops other teams doing duplicate work.
In practice, it might not be practical to adhere to just one responsibility, but over time as an organization grows and changes, the principle can be used to "refactor" your organization and team structures. For example, if one job role is having to do lots and lots of different things, maybe you need to split the role up and hire somebody else to take responsibility for some of the work.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
I agree. I think that SRP is not only a software design principle, but a system design principle. I think any kind of complex system can benefit from this principle!
Organizations, departments and teams are complex systems, just like software.
The departments that make up an organization can have responsibilities within that organization, to help the organization achieve its goals. The teams within a department have responsibilities to help the organization achieve its goals. And the individual roles within a team also have their own responsibilities to contribute towards the teams success. (I say role and not person, because multiple people can have the same role in a team).
Using single responsibility principle, keeps teams focussed, stops them from getting overloaded, and stops other teams doing duplicate work.
In practice, it might not be practical to adhere to just one responsibility, but over time as an organization grows and changes, the principle can be used to "refactor" your organization and team structures. For example, if one job role is having to do lots and lots of different things, maybe you need to split the role up and hire somebody else to take responsibility for some of the work.