Software Development and Game Theory

Wednesday, July 23rd, 2008

Alistair Cockburn (pronounced co-burn) maintains that software development is a cooperative game. Others have described software development as exactly the opposite, a game where the participants do not cooperate - see Analyzing Software Development as a Noncooperative Game (pdf). I think I'm with Alistair on this one while the alternative point of ...

But what value does this have?

Saturday, September 16th, 2006

Ken Perilman asked me this. I came up with some of these at the time but added some afterward:It's a powerful analogy in the physical world for a an activity that's virtual - software.It's an engaging analogy a few nice pictures make a message more consumable.It can provide good visual ...

Failure and Learning

Saturday, September 16th, 2006

In some cases you only learn through failure. I learnt more on my first failed Scrum project than I might have if it had succeeded. I learnt that the amount of time it takes to facilitate a team successfully is significant and some of the prerequisites for setting a team ...

Common Threads - Retreat and Failure

Saturday, September 16th, 2006

Agile teams have use the concept of the "last responsible moment" - the last point at which a decision like a change in architecture, implementation or dependency can be made. In extreme cases this might include cutting the project entirely. Alpine climbers have a similar concept, the "turnaround time or ...

One Size Does Not Fit All

Tuesday, June 20th, 2006

Nordstrom's employee handbook contains just one instructiuon."Use your best judgement."The temptation in organizations, especially large ones, is for methods and practices to be applied across the whole gamut of projects regardless of their requirements or the background and experience of the people involved. Ken Schwaber's Caveat Emptor on this approach.In ...

Common Threads - Tools

Tuesday, June 20th, 2006

This got me thinking..."High Altitude Mountain Climbing has many characteristics similar to Insurance SCM [Software Change Management] and Agile development methods in general. When you climb high-altitude mountains, you do it with a small team, there’s a window of opportunity to do the assent, it requires flexibility, it is adventurous, ...

Common Threads - Failing Forwards

Wednesday, June 14th, 2006

There comes a point on most alpine climbs when going down becomes less attractive than pushing on to the summit. Climbers call this "failing upwards", or forwards. They are committed with no real possibility of escape save completing the route.Many software projects come to the same point. Often at "code ...

Software Development is a Team Sport

Wednesday, May 17th, 2006

"Software development is a team sport. A team loaded with superstars, each striving to set. individual records and be the team leader, can be embarrassed by a balanced team of solid players with a few leaders focused on the team result of winning the game."- The Rational Edge, June 2001 ...

Why "Art" ?

Wednesday, May 17th, 2006

Because agility is definitely not a science. More than anything else it's about the distinctly unscientific process of organizing people. Even at the best of times people are not interchangable "cogs".

Climbing and Software Development

Tuesday, April 11th, 2006

Why does climbing have a special relevance to the activity of software development? What lessons can we learn from climbing and apply to software development? Can these lessons be applied to a broader range of activities. Common Ground Alistair Cockburn points out the parallels between software development and climbing, both are finite, goal-terminated ...