IT people is often scared when I say that I don’t like the traditional testing phase in IT projects.
I understand, it’s so relaxing to know that you have a bunch of people to blame when projects go the wrong way: “we did 3 month of testing, we really couldn’t do more to save this project!”.
And if it’s not the testing team, you can always blame the requirements team for gathering them badly. But this is another story, another post :). Let’s get back to testing.
What I generally don’t like about testing is that you do some operations based on … what the system is designed to do. Someone writes a requirement, someone (else) writes one or more test cases to prove it, someone (else) writes some code and finally someone (else) reads the test case and uses the system giving his interpretation of the behavior … giving a GO/NO GO.
Should I explain why I feel uncomfortable? I hope not but let me add an unobvious thing: where is reality in this long chain? Who’s in charge of saying if the system is doing what is needed and not what someone (else) thinks it should be doing?
Scary, isn’t it?
PierG
7 comments
Comments feed for this article
February 1, 2013 at 10:32 am
Asa
Probably the involvement of the final user from the kickoff of the project would avoid a lot of confusion ;-), imho.
ciao
February 1, 2013 at 7:17 pm
Loris
Testing software by means of “operations based on what the system is designed to do” does not seem a bad thing to me.
Computer programs are designed to work under well-defined conditions. Yep, reality is, usually, miles away. I don’t know how the final user is going to use my software.
The skills of a software tester, IMHO, rely in his/her ability to fill this gap, that is, trying to imagine all the possible real-world events that may happen within the predefined range of conditions in which the software must be reliable.
my2cents
February 1, 2013 at 7:58 pm
PierG
The question is what’s th value of having a SW who’s completely compliant to specs … of it’s nor used?
Is there a way to comply to ‘being useful’ instead of to specs?
February 2, 2013 at 10:43 pm
Loris
What do you mean by “being useful”?
February 2, 2013 at 10:58 pm
PierG
Being useful for people who’s using your system .. whatever useful means for them
February 3, 2013 at 5:43 pm
Loris
I once read here [1] that the main task of an engineer is predicting the future. This fits particularly well to software engineers, who have, to some extent, to predict how the final users are going to use the sw he/she is writing.
Your point is really nice and deserves some extra investigation:
new, more concrete, research questions can be derived from this (and maybe lead to some interesting new ideas). 🙂
[1] http://neurohack.com/arts/CommCheck.html
February 3, 2013 at 9:29 pm
PierG
Well, I usually let predictions to the divino Otelma 🙂