Friday, November 7, 2008

White paper ideas on Iterations

This is a good white paper regarding developing in iterations on Agile teams. As you will notice, it does not mention Use Cases or requirements documents.


You could assume the requirements are reviewed in the iteration planning meetings or in a previous meeting. In that case, you would use the iteration planning meeting to ask questions, review the requirements and estimate the work for the iteration.

http://tig.cmptechnetwork.com/cgi-bin4/DM/y/nBNCe0Nsnos0YLp0GyYS0ED

Wednesday, November 5, 2008

Article on Dev and Testing schedules during an iteration

This is a good article addressing developing features and QA testing them during the same iteration. Chris offers a good example process. I like the comments that followed because you see different points of views regarding the topic. This brings to light some of the issues with Dev and QA cohesion.

I think the example Chris provides makes sense but I also sympathise with the QA person explaining the issues of retesting changing features. IMHO, I think QA has to catch up with development in "agile" thinking. Developers know code is going to change and it will change a lot. With CI, Unit Testing and refactoring, the features evolve over time. QA needs to follow the same pattern in Agile environments. They are not retesting features, they are testing. Features are not half complete, they are not done. (Done means a feature is developed, tested, and accepted) QA should work closer with developers and should us continuous testing (CT) throughout the iteration. Then, at the end of the iteration the whole team does internal acceptance testing.

One key issue with CT is team size. One QA person cannot do CT with 6 developers. I think an effective ratio should be created that can balance the output of dev to the input of QA.

I like the idea of developers writing the automated test that are identified by QA. This is a good checks and balance system.

http://edgehopper.com/qatesting-in-an-agile-environment/

Tuesday, November 4, 2008

Why is success measured by estimates?

http://blog.cutter.com/2008/11/04/software-estimation-a-tough-beast-to-control/

This article was posted under a quoted title "“a tough beast to control”. I agree with the title but 100% disagree with the survey. Meeting estimates IS all about "control." If you want to meet an estimate you have to give the customer exactly what you agreed and control (Deny) any changes they want.

Here is an analogy which is similar to one Robert Martin used. You go to your doctor and they say you have a tumor in your liver.(arbitrary organ). They schedule the surgery and open you up. While removing the tumor they find another one in your pancreas .(arbitrary organ).
Using estimates as a measure of success would encourage the doctor to sow you back up, let you heal and then say, we did not estimate the pancreas tumor so we could not remove it because we would exceeded our estimate by 10%. Also, I will not get my bonus if we do that and you might not pay for it.

The doctor is more successful by removing the additional tumor. It cost less to do it while the patient is already under and is open at the table. He is also more successful because he helped the patient more than originally planned.

I am not saying estimates are not important. They are important to create a schedule but success should be driven by the value to the customer not random numbers.

As leaders we must work to set customer expectations regarding success. I would like the survey to review how well the customer expectations were defined and managed.