Sunday, January 13, 2008

Mike Griffith Turns the Declaration of Interedependence into a Narrative People Understand Better

I've not yet met Mike Griffith, but I like the way he thinks already.

Here's a recent post from his blog on how to make the Declaration of Interdependence more memorable:

1) We increase return on investment by making continuous flow of value our focus.

1) Amaze your users, keep giving them what they ask for!

Concentrate of developing features the business asks for. This is how we can get the best business benefits and support for the process. When your projects consistently deliver business results they are hard to ignore, cancel or deny requests from.

2) We deliver reliable results by engaging customers in frequent interactions and shared ownership.

2) When planning interaction with the business, try to be more like the good neighbor who you see frequently and can easily call on, than the intrusive relative who moves in for a while and then disappears for a year.

We want business interaction that is regular and engaging, not a huge upfront requirements gathering phase followed by nothing until delivery. Frequently show how the system is evolving and make it clear the business drives the design by listening and acting on their feedback.

3) We expect uncertainty and manage for it through iterations, anticipation, and adaptation.

3) Since software functionality is hard to describe, technology changes quickly and so do business needs, software project typically have lots of unanticipated changes. Rather than trying to create and follow a rigid plan that is likely to break, it is better to plan and develop in short chunks (iterations) and adapt to changing requirements.

4) We unleash creativity and innovation by recognizing that individuals are the ultimate source of value, and creating an environment where they can make a difference.

4) We manage property and lead people, if you try to manage people they feel like property.

Projects are completed by living, breathing people, not tools or processes. To get the best out of your team we must treat them as individuals, provide for their needs and support them in the job. Paying people a wage might guarantee that they show up, but how they contribute once they are there is governed by a wide variety of factors. If you want the best results, provide the best environment.

5) We boost performance through group accountability for results and shared responsibility for team effectiveness.

5) Everyone needs to share responsibility for making the project, and the team and as a whole, successful.

6) We improve effectiveness and reliability through situationally specific strategies, processes and practices.

6)Real projects and complex and messy, rarely do all the ideal conditions of agile development present themselves. Instead we have to interpret the situation and make best use of the techniques, people and tools available to us. There is no single cookbook for how to run successful projects; instead we need to adjust to best fit the project ingredients and environment we are presented with.

No comments: