Direct responsibility means an individual, or a team, is responsible for everything necessary to turn a customer need into results for the customer. Results should have a measurable impact on the customer. An impact that those that are responsible should be a part of measuring and understanding, such that they seek to achieve the impact.
Direct responsibility avoids splitting up the work into skill sets and creating a pipeline of people that rarely communicate other than to hand off the work to the next stage of the process. For example, in software development it’s common to split design, development, testing, release, and support into separate responsibilities. This means a customer need goes through five distinct individuals or groups. Five groups that rarely communicate other than to hand work off to the next group.
Of course the consequences are dire, exponentially proportional to the degree of separation. Think about the game of telephone, where a message is whispered from person to person, now imagine that’s how a customer need is handled. Is that how you want your customers treated?