« Adding client-side markup to web pages | Main | Joel versus the Agilisti »
April 25, 2005
Risk if you do, risk if you don't
For the last couple of weeks, I've had the chance to do some "pure" consulting for a new client with a collegue of mine. The engagement is principally to advise how Agile development methods might be used on a large-ish software project that's currently in requirements analysis. The client does not have any Agile experience, but a desire to respond more rapidly to changes in customer requests and mitigate the considerable integration work inherent in all their development projects has led them to speak to my employer. It's been fascinating work for a number of reasons:
- I've never had the chance to work with this collegue before and he's a more experienced consultant than I am, so it's been good to watch him work and learn
- This is the first time I've been involved with a project from Day 0 (as far as our engagement with the client is concerned). My involvement in previous projects has always commenced well after development has started and this time I on the ground several months before the first line of code will be written in anger
- Everyone we've spoken from the client has been very interested and hugely helpful in our efforts to get a handle on the size of the project itself. The "interest" is somewhat expected, since our work could result in a huge change to the way they work, but I've been more blown away by the generous nature of the staff we've been working with and their desire to really understand what Agile brings to the table. Sure, there have been some concerns expressed for how Agile deals with issues close to their heart: the usual chessnuts of Architecture and Design (note the capitals :-)), documentation, and accuracy of estimates but they've also been quite understanding of the strengths of Agile and the potential trade-offs required, should you wish a project to play to these strengths.
The most interesting part of the initial work we've been doing is considering and documenting what form of Agile development will best suit this client. To all involved, this project is viewed as risky on a number of axes; tools chosen, processing complexity, strategic business value, staff skill requirements, etc... and to this already full pot they want to add a (potentially large) variation to their development process!
Now I'm one of the first to trumpet the use of Agile methods as a means of risk mitigation, but when the introduction of Agile itself further increases the overall risk profile of the project, how much is too much?
One possible solution is to draw the line with the current amount of uncertaintly and say any additional risk in the form of a new development process will only serve to cause more problems - the safest way forward is to not adjust any more project variables contributing to the overall sense of risk. Conclusion: no Agile.
As counterpoint, given the amount of risk already involved, the feedback provided by adopting Agile techniques (assuming the risk of their adoption itself can be managed) is vital to ensure the project stays on track, or at least come off the tracks in as noisy a way as possible as soon as possible. Conclusion: Agile all da way!
As possible, the truth lies somewhere between these two cases and the exact location of this position is something my collegue and I will be struggling to determine over the next few days.
Posted by Andy Marks at April 25, 2005 08:43 PM
Comments
Remembering that agile is more of a mindset and a philosophy than any set of techniques, "adopting agile" can be as simple as changing how you look at things. This, in and of itself, is a very low-risk activity.
Once this is done, I would look into each major risk and see how (and if) agile techniques would mitigate them. At this point, it's okay if the new techniques introduce risk; presumably, it's less than the risk being mitigated.
Posted by: Robert Watkins at April 26, 2005 08:13 AM
Post a comment
Thanks for signing in, . Now you can comment. (sign out)
(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)