A few years ago a few of us asked ourselves the question - "what would we need a person to know before we trusted them to touch code?" We put together a set of competencies that we felt were the minimum that was required. The rationale was that if they didn't know these, then faced with a situation that called for one of them, the person would likely write code that was of insufficient quality. We put this list together in a roadmap form. That is, start at one end of the list and keep going until you've learned all of what it details. We call this the "Roadmap to Lean-Agile Programming Competencies." Although you'll have to register at our site to look at it, it's likely worth your while if you are a developer.
Anyway, I recently got the same idea with process. What would someone have to know in order for me to let them run a project of mine? Interestingly enough, the list is not contingent on the type of projects they'd be working on. Much of the knowledge centers on Lean and Agile. For example, there are many Lean principles they'd have to be familiar with:
Poppendieck's 7 principles of Lean Software Development
Basic Lean Concepts of Flow, and Just In Time (JIT), and Utilization Theory
There are others, of course. There are many Agile practices people should know as well. People should know how to do:
And, of course, there are certain Agile practice they should understand:
I can see a new project coming up to explicitly detail all of this.
What strikes me, however, is how little of this is in Scrum. And, with the exception of those Scrum trainers who also endorse Lean (Jean Tabaka, Hubert Smits, Jim York, for example) I've never seen these concepts talked about in a ScrumMaster training endorsed by the Scrum Alliance.
In fact, when I think about it, most of the Scrum Master training I have seen focuses on practices and coaching ability. But where are the concepts that one must have to be successful?
Do people think we don't need these for process? We certainly have a lot of them on the technical side. It's true process may be more difficult to define, but I think the principles on which it is based are getting more and more understood.
I've posted these items at the Lean-Agile Yahoo User Group Wiki. I'll update that as time permits. I invite suggestions from people for what they would include.