Monday, December 28, 2015

Ethics of Software Testing

As best I can remember, every company I have ever worked for had an official Code of Conduct. In them, workers are reminded that integrity and ethical conduct are expected in the course of performing their jobs and acting in the best interest of their clients.


There are numerous ways in which this applies to us as testers.  Put succinctly: Don’t Do Fake Testing.  Be honest, don’t plagiarize, act congruently.


James Bach has a good list of ethical principles and among them are:


·         Report everything that I believe, in good faith, to be a threat to the product or to the user thereof, according to my understanding of the best interests of my client and the public good.

·         Apply test methods that are appropriate to the level of risk in the product and the context of the project.

·         Alert my clients to anything that may impair my ability to test.

·         Recuse myself from any project if I feel unable to give reasonable and workman-like effort.

·         Make my clients aware, with alacrity, of any mistake I have made which may require expensive or disruptive correction.

·         Do not deceive my clients about my work, nor help others to perpetrate deception.


It’s not just about managing conflicts of interest and reporting outside business interests (although that’s important too.)  For testers, being ethical means we study about the relationship between our products and the world in which they run.  We don’t cheat, we don’t take credit for work we haven’t done.  We allow ourselves to grow by working through our assignments for ourselves.  We put our clients first because we report findings that we suspect may be problems for our users.  Expert testers are by definition, ethical.


No comments: