Success
Today brought a great accomplishment for our team (at least, for me personally… it felt great). We had had a small project that acted like an undead monster. At the outset, it seemed simple… our customer just wasn’t satisfied with the acceptance tests we had (in their words, “something smells funny”). The project knocked around the team for a bit… getting done, turned in. Then suddenly coming back like an undead monster searching for fresh blood.
This week, I teamed up with several different team members swapping in and out as we tried to discover why we were getting bad results from our test. As we delved in deeper, we learned so many things. At the beginning of the week, we were getting IOExceptions on some of the results being read from the reports and traced it to a bug on the outbound team’s side. They fixed it, and our other cases passed… but some failed. As we delved deeper, we discovered that some records were triggering a business rule that honestly didn’t belong there. So we removed it.
Then, those records passed, but the last didn’t. It turned out while the ones failing did not did need the business rule, the last case that had been passing through all the grief did! The interesting thing was that it was again something that revealed a small (and somewhat hard to catch) bug in the outbound business logic, so after a little research and discussion with the other team, they decided they would take it up, so we contacted the customer, they submitted a story to the other teams queue, and we were left to wrap up.
So… after a few small modifications, we successfully completed our stories and turned them in. I felt quite a bit of relief… this project had been bugging us forever, and this week not only did I learn so many more things about how our system depends on the other team’s system, it really brought to the surface how much our work ties into their work and made apparent what had previously felt invisible. In essence, we became a customer to the other team.
It’s interesting how good acceptance tests can do that.
If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!








November 17th, 2006 at 10:45 am
James,
Congratulations on your success this week! Clearly having tests for this project was incredibily helpful. Were there other agile practices that helped contribute directly to the successful resolution of these problems at the end?
November 19th, 2006 at 1:49 pm
John,
Well, the biggest driver was well written acceptance tests that helped expose the problem. Also, in retrospect, customer communication needs to be improved. A lot of the struggling was due to miscommunication.