The discussion of agile project management seem to be coming from a variety of positions - if I read the forums right. Some approach APM from a software development methodology point of view. Some from the view there are alternatives to traditional methods that need to be replaced with agile. Others from a generalist view.
What dawned on me on the way home today (a 1 hour drive provides lots of think time, once NPR starts to repeat) was there needs to be a layered approach to the concept of Agile Project Management.
- Managing the development of software - this management activity deals with coding, requirements for coded elements, and the verification that the coded elements meet some set of immediate needs. Software development team management (if there is such a thing) is an example.
- Managing the delivery of software - this management activity interacts with customers and providers at the boundaries of the software system. Product management, SW Development Management are examples of this.
- Managing the delivery of services implemented by the software - this style treats software as a COTS entity. Program management is an example.
The core issue is, this - or some other separation of concerns taxonomy - needs to be in place for a useful conversation to take place about Agile Project Management. Without this distinction, conversations about managing code production leak into conversations about business strategy and visa versa.
My interest is at the #3 level, where nearly no code is written, but million dollar software systems are procured and installed. Most of the effort is in requirements elicitation, mapping business process improvement to the purchased products, and system integration activities to make all the moving parts work together. Lots of database connections, scripting, screen definition (Oracle Forms, PeopleWare scripts, ABAP, etc.) and workflow definitions to have everything flow nicely. In #1 there is lots of coding, XP iterations, and the like. In #2 middle managers have to deal with both ends.
So when we talk about "project management" and especially Agile Project Management which is these three "projects" are we talking about?