As someone from the publishing industry observed recently, "we're all in the technology business now." So delivering successful projects for new technology platforms and applications is now as important a skill for the industry as is commissioning great content.
If that responsibility is part of your remit, I'm sure you'll be familiar with the first meeting with the developer for, say, a new App when the question of project management methodology is discussed. "Let's use 'Agile' says the developer. Everyone nods sagely. Unlike the classic 'Waterfall' approach to software development which is based on pre-defined funtional specifications, 'Agile' is designed for a more iterative approach which is more 'friendly' to web and mobile based applications.
The topic of 'Agile' was discussed at a recent excellent 'Society for Computers & Law' seminar.
The starting point for an 'Agile' development is the 'user stories' which express the business outcomes that the client wants to achieve. Selected 'user stories' are then developed on an incremental approach in short - typically 30 day - sprints, with testing on a sprint by sprint basis.
So is this right for you? This is not a yes/no question. But bear these golden rules in mind:
- It isn't right for all developments. If the development can be fully defined at the outset, taking a 'Waterfall' approach may be safer in achieving the outcome you want within a pre-set budget.
- 'Agile' needs clients and developers who have 'hands on' experience of working in this way. So don't try this at home!
- 'Agile' needs a genuinely collaborative approach between client and developer. Not everyone can work in this way.
- The client's 'Product Owner' must fully and actively integrate him or herself into the develper's team.
- The Developer's 'Scrum Master' must act as the Client's advocate within the developer as the Client's advocate. That's a tough role.
- In its pure form, 'Agile' is a time and materials contract for services with no fixed price. That's risky in inexperienced hands. That said, I recently heard a developer saying that they work in 'Agile' but to fixed prices! Definitely, a point for upfront negotiations.
- There is no 'one size fits all' solution for Agile. Fori nstance, there are lots of 'hybrid' pricing solutions to manage the pricing risk.
- Contracts for 'agile' need to create clear processes for communication between the client and developer teams.
So get all this right, and 'Agile' can work really well. My personal view? Based on my experience, I'm an advocate of an approach which I call 'Agifall'. This takes the key elements of 'Agile's' iterative and flexible approach to software developments but 'encases' it within certain 'hard' outcomes in terms of minimum requirements, price etc.
I'm happy to tell you more about that if you're interested.
Have a great week