“Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.”
In software development…
- In order to satisfy the customer you have to truly understand what the customer needs.
- Sometimes what a customer wants is very different than what a customer needs.
- Keep asking “Why? Why? Why?”
- This requires the customer to be very much engaged in what is happening. They need to be able to express whether or not they are satisfied in real-time.
- Early and continuous delivery of valuable software is pretty difficult to do.
- What is “early”? Perhaps “incremental” is more appropriate. I’m assuming this wasn’t intended to be “early” in the traditional, calendar-time based meaning.
- Continuous delivery == constantly changing, hopefully for the better.
- There is no such thing as “scope creep” in Agile!
- It is of value if it satisfies the customer, therefore the customer must determine what “valuable” means.
- But… If delivery is continuous, when are we “done”? Perhaps never. Satisfaction is a tricky beast.
- In order to be satisfied, you must actually understand what you really need to be happy.
- What you want is not necessarily what you need.
- Perhaps in order to get at the core of what you really need, you have to ask myself “Why do you want X?”
- You can’t “check-out”. In order for this to work you need to be present and engaged in your life and incrementally improving it.
- You also need to start NOW and continuously deliver on those needs in the form of changes for the better.
- “Working software” in life is a means by which the need is satisfied. This could be anything from eating well, getting enough rest, to treating yourself with the same kindness and respect you give your friends.
- The key is to first really understand what your needs are — what will it take to be satisfied?
- And finally, admitting that you am a work-in-progress. There is no “done”.