I just got an email where someone said that their group does not have a real project-type project. This got me thinking.
Key idea: How do we know our Agile teams are getting the best work?
It seems to me we have the theory that, magically, "the users" will ask us for the best work we could possibly do.
So, let's parse this a bit. The users might be the business or management or the customer. And the best work might be the most important thing we could do, or the most valuable or the highest business value, etc.
OK, so as soon as we make transparent the hypothesis we can see at least 4 holes.
1. The users are always human, and almost never can identify the highest value things. Consistently, reliably.
2. Identifying the highest value things (product, project, story, whatever) is, in large part, cost-benefit analysis. Only if the decision maker has complete understanding of all the benefits and all the costs (risks), can she make the best decision. If we technologists don't tell the business folks about the costs, how can they possibly give us the best stuff?
3. Do you know what you are really capable of? For sure, most business guys do not know what technology is really capable of. And they don't know what your Dev team is capable of.
4. Are we technologists capable of keeping up with all the extensions inherent in existing technology? Or keeping up with technology innovation? Even less can the business guys do that.
How do we fix this mess?
The issue here is that, although we are doing important work, we are still "failing" if it is not the most important work.
Well, I will suggest we need to get business and technology people together more, and the technologists need to ask: "How could we be more sure that we are getting the best work... so we, together, can make the greatest possible contribution around here?"
There are about 250 business days each year. I bet there are 250 ways to phrase that question.