The following is a transcript from an actual IM conversation in the recent past…
Eric Jacobson: I have a question for your blog.
EJ: I just got my ass kicked trying to convince a project team to stop calling features done without the automation done.
ManageToTest: That’s illegal! Call HR!
EJ: I had like 10 people telling me I was wrong.
MtT: That’s interesting. So why is it wrong? Does it not need to be done? What will you do in the meantime? When will there be time to do it if not now? Why is time then “less valuable” than it is now?
EJ: Their bottom-line excuse is that automation is important, but not part of the “critical path.”
MtT: Oh really? Critical path for what? This particular feature?
EJ: They say, “Yeah, it would be nice to have it, but we can go to prod without it.”
MtT: Ah, yes, of course.
MtT: Sure you can put it into prod, but what about the next feature? When will you do automation for that? Oh, well, I guess you can put that off too.
MtT: So when will you do the automation from that first feature? Is there ever a time there aren’t any features?
MtT: What is the value of having this automation? If there is none, then they are correct. Don’t do it.
MtT: But perhaps we aren’t understanding what the value is.
MtT: The value should be the safety net of knowing that new functionality hasn’t broken existing functionality. Right now the only way to do that is by doing manual regression, and the time it takes to do that will increase over time.
MtT: So if you don’t automate, you’ll have to cut some of that manual regression out, creating risk.
MtT: That amount of risk is what you need to determine. That is the “value” of the automation.
EJ: …great stuff. I wish I would have said it in my meeting.
MtT: So you’re saying I should blog about this?