Two Pillars of the Lean Thinking House

The Toyota approach to lean is quite sophisticated and is based on a model called the Lean Thinking House (Larman & Vodde, 2009). The Toyota model includes two pillars:

  • Respect for People
  • Continuous Improvement

These pillars struck a cord with me.  I’m normally more interested in what practices work than in values and principles however these two phrases seemed to nicely summarise my approach to work and are key themes in my career.

References

Larman, C., and Vodde, B. (2009). Scaling Lean & Agile Development: Thinking and Organizational Tools for Large-Scale Scrum. Addison-Wesley.

Difference between programme, project, portfolio and product management

P3M stands for "programme, portfolio and project management". Product management is a closely related discipline and as most software organisations do product development I’ll include it in the discussion.

P3M Levels: programme, project, portfolio and product management

P3M Levels:
programme, project, portfolio
and product management

That bit is simple. The tricky bit is agreeing what a project, product, portfolio or programme is. Projects and products are pretty straight forward but definitions vary quite a lot for programme and portfolio. A portfolio for some people is a set of products where for others it is a group of projects. I have, for example, met a portfolio manager who was responsible for some projects and within the same division met a another portfolio manager who was responsible for the product portfolio of the entire division. Programmes are sometimes seen as simply as a complex project or set of projects, or, more interestingly, as an initiative to deliver business benefit.
Continue reading

Scale and Performance Suggestions for High Usage Websites

I work at the BBC and scale and performance is a big deal. After talking to Mark Gledhill (one of the Senior Software Engineers) and Andy Macinnes (head of ops) I put together some notes on scale and performance. It isn’t rocket science; just good common sense.

The general message is to avoid unnecessary repetition. If you’re a scalability/performance problem then you could explore …
Continue reading

Agile Quality Management

Quality Management, in a project context, is concerned with having the right processes to ensure both quality product and a quality project. This article describes Traditional Quality Management, Agile versus Traditional Quality Management, Agile Product Quality, Agile Project Quality, Agile Product Quality, Agile Quality Assurance and Control, and Agile Quality Improvement.
Continue reading

Agile Project Estimating

Estimates are an essential part of Agile Project Planning.  Software estimation has always been problematic and people have proposed many different ways to do estimating.  Different methods are on a spectrum from formal to informal and from supposedly objective to seemingly subjective.  Different methods also get individuals estimate or groups.  And some methods estimate size and derive effort while others estimate effort directly.  Estimating in the Agile world has settled a certain approach which might be characterised as expert group estimation of size. this article covers Traditional Project Estimation, Agile versus Traditional Estimating, Estimating User Stories, Estimating Tasks, Contingency, and Agile Ballpark Estimates.
Continue reading

Agile Project Execution

Executing is one of the five project management process groups in the Project Management Body of Knowledge (PMBOK) from the Project Management Institute (2004).

Project Execution is where you build the project deliverables and hand them over to your customer, i.e. where you build and deliver the software. This is where most of the project effort is invested. Agile Project Planning says what you intend to do, when, and Agile Monitoring & Control helps you stay on track but Agile Project Execution is where you do the business.
Continue reading

Agile Project Monitoring and Control

No battle plan survives contact with the enemy

Field Marshal Helmuth Graf von Moltke

Life is what happens to you
while you’re busy making other plans

John Lennon

Agile Project Planning tells us what we expect to do, but, to paraphrase the quotes above, plans often turn to custard. The job of the Agile Project Manager is to guide the team to successful delivery despite the challenges the world throws at the project. This article is about monitoring the project against the plan and intervening when we notice things going off track. In particular it covers Traditional Project Monitoring & Control, Agile versus Traditional Monitoring & Control, Agile Project control, Agile project metrics, Agile Project Reporting, and Agile Project Monitoring.
Continue reading

Agile Roles and Responsibilities

Each of the Agile methods includes defined roles.  Some have more, some have, less.  DSDM is the only one of the methods that makes a big deal of making role responsibilities explicit but I think this is important. To work effectively as a team people need to know what their role is and the roles of their peers. I have often had to coach teams on the demarcation between key roles on the team – typically the leadership roles, i.e. project owner, agile project manager (or scrum master) and technical lead.
Continue reading

Agile Change Management

My background is running Agile projects for external customers in the context of a contract, often fixed price.  That influences my focus on good project management and specifically change management. Change Management is the mechanism to combat scope/feature creep.

Within the Agile world scope change is expected and time is considered more important than functionality. So if something has to give to allow change then functionality/scope loses and time wins. To do this the customer must make Requirements Trade-offs. The Customer directs development in Timebox and minor changes are just accepted. Big changes are handled different depending on whether it is a change to the Release Plan or Timebox Plan.
Continue reading