I started my first ever iterative project with a very complete exhaustive requirements iteration, then a design and prototying iteration, and then three iterations where we delivered code, then a system test iteration, and finally a deployment iteration. Booyah! My first iterative project!
At the end I looked back and felt pretty much like other projects I’d run in the past. I had read up on RUP, but misapplied it badly because I made what is apparently a fairly common mistake. Basically it runs RUP as a waterfall. A lot of this was because I didn’t have the advantage of actually being on a well run iterative project. I’d been part of a team or even run several projects, but I was always one of the few who knew anything about methodology. A lot of this harkens back to dotcom days when even knowing about a basic software development lifecycle was something to toss on the old resume.
The funny part was the project was successful for the most part, basically because of the people on the project who did what was needed to get the job done. People very often can trump pretty bad processes.
Anyway I find myself in a similar position now implementing Scrum. I have no examples to go by so my information is again from books, conference presentations, and blogs. Still Scrum is a pretty straightforward process, but all sorts of things can still crop up and the implementation details can kill you. One of these days it would be really, really nice to have a mentor who knew a lot more than I did. Still showing any attention to Agile methodologies is still pretty bleeding edge for most corporate IT shops, so it’s hard to find a mentor unless you can manage to hire one in.