2005-01-21

Responsibility, Power and Duty

Latest discussions in my current company drew some thoughts in mi mind about the responsibility and authority. I concluded that one of the most important reasons for the bad result in the company was not matching levels of responsibility power. To be clearer, I'll give some typical scenarios:

Scenario 1: manager "decides" that feature A is very important and must be implemented immediately. The developer estimates the time necessary (not precisely), but the management cuts half of it ("but our clients need it ASAP") and gives first class priority on this task. Because of the shorten time, the feature is developed using the approach "quick and dirty". Its working but some other places are possibly spoiled. After few months out in the market, the feature is not used by anybody (or less than 3% of the users) i.e. from the financial point of view it's total disaster. I leave you to guess who is blamed for this and who is not responsible at all. The same scenario happens if you substitute the feature with "awful and disastrous" bug.

Scenario 2: 3-4 cases like scenario 1 are happing simultaneously. The decisions, which tasks have, the highest priority is taken by the manager. Since of the frequent task switching and cut development time, no one of the features is delivered as 100% working properly, nor on time. Again I leave to you the exercise to guess who is accused for these failures.

Scenario 3: Since the process of collecting requirements is very poor (or doesn't exist at all), developers makes a lot of "assumptions" during implementation. Latter on, these assumptions are proven bad, but the cost to correct them is very high and they are left "as they are". This limits the product not to grow and to be not so successful as it was planned. As you see here the responsibilities and duties are much more blurred. The same could happen even with written but not precise requirements. (more about wrong assumtions and reading people's mind here )

Now few questions about responsibility, power and duty in the upper contexts:
1. Whose is the responsibly when a feature is a financial disastrous even if it's build on time and as requested?
2. Whose is the responsibility and power to cut development time?
3. Whose is the responsibility about low effectiveness since frequent tasks switching? (or may be it's not recognized that such tasks switching reduce it?)
4. Whose is the responsibility and duty about gaps in the requirements?
6. Whose is the power and responsibility to make assumptions and take decisions about unclear feature(s) instead of communication with the client? ....

Do you think that these scenarios are bad? I do, but worse is to repeat them all the time.