Project Planning: Quality Assurance

I am currently completing the Orbital Project Plan prior to submission to JISC next week. The writing of a Project Plan, using JISC’s template, which I think is a derivation of PRINCE2 documentation, is undeniably a useful exercise in defining the project we’re embarking on. It is also undeniably a tedious process, too, as it requires a particular style of thinking and writing: granular, incremental and forward looking, yet reflective; ambitious and creative yet restrained; serious yet mostly in a dumb tabular form. I find myself having intense bursts of concentrated writing and then having to step away from the document  to restore myself both physically and mentally.

I’m currently at the Quality Assurance section of the document, which is in a tabular format to aid both author and reader. However, what I really want to write is this, taken from the Agile Manifesto:

We follow these principles:

Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.

Welcome changing requirements, even late in
development. Agile processes harness change for
the customer’s competitive advantage.

Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter timescale.

Business people and developers must work
together daily throughout the project.

Build projects around motivated individuals.
Give them the environment and support they need,
and trust them to get the job done.

The most efficient and effective method of
conveying information to and within a development
team is face-to-face conversation.

Working software is the primary measure of progress.

Agile processes promote sustainable development.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.

Continuous attention to technical excellence
and good design enhances agility.

Simplicity–the art of maximizing the amount
of work not done–is essential.

The best architectures, requirements, and designs
emerge from self-organizing teams.

At regular intervals, the team reflects on how
to become more effective, then tunes and adjusts
its behavior accordingly.

I think I will print this on A3 and stick it to our wall.

What attracts me most to Agile methods of software development (I lean towards XP), is the emphasis on human interaction and the focus on values such as trust, respect, simplicity, autonomy and courage. All too often when running a project, the objective of delivering the product dominates and diminishes the creative and social process of producing something that improves our environment.

For me, as Project Manager, the Orbital Project is not only an interesting Research and Development project but also an opportunity to practise a method of human sociability and creativity over a defined period of time. Although I’ve tried to use attributes of Agile methods on projects in the past, this is the first time that I’ve started a project from scratch with this is as the principle method, and a project where I know the Lead Researcher and Lead Developer are likewise keen to work in this way.

This blog is a record of our project over the next 18 months or so. For my part, I’ll be reflecting honestly about the ups and downs of running the project and learning to work closely with people according to the principles quoted above. I’m sure we will fail at times and the process will get lost to the product, but we will learn, even during those times. And gradually, we’ll get better and produce better.