Everything I
Know About Testing I Learned From the Bible
A realization struck me some while ago during a
time of Bible study that many of the basic principles that are
foundations for good testing practice are found in the Bible. Since
that realization, it has been interesting to search for scripture
passages that teach basic testing and quality principles.
This article is not written to force my religious
beliefs upon you, but to edify those who share similar beliefs. If, as
a result of reading this article, you are interested in knowing more
about the source of these teachings, I would be happy to share that
information with you. Regardless, it is my joy to put some of these
principles in writing and hope that it spurs your own study of the
scriptures to find other passages.
The Bible and My View of It
The word "Bible" literally means "book of books."
The Bible consists of sixty-six books that were chosen by men under the
inspiration of God to be included in this collection. Some of the books
are called the Old Testament (or covenant). These books were written
before the birth of Jesus and include books of the history of Israel,
poetry, and prophecy (things to come). Other books were written after
the life of Jesus. These books comprise the New Testament and include
the gospels (literally "good news") of Jesus, the epistles (letters to
believers) and prophecy.
There is debate as to how to view the inspiration
of the Bible. Some feel that the Bible conveys the essence of God's
word to mankind, but cannot be taken literally in all cases. Others
feel that the Bible is inerrant and contains exactly what God inspired
men to write, even to the point of precise word meanings. I hold the
latter view of scripture. There are many reasons I hold this position,
but the bottom line is that man has limited knowledge of the universe
(even though some think otherwise) and when compared to an infinite
God, man's knowledge is small indeed. If the Bible seems to convey
something that does not line up with human experience, there is a
strong possibility that we are wrong and God is right.
The Bible is not a book about science, but it
doesn't contradict science either. The Bible is also not a book about
history, but no historical event in the Bible has been proven incorrect
by either historical accounts or archaeological evidence. The Bible is a
book about life and about how to live a joyful and abundant life. It is
amazingly accurate in detail.
What About Testing?
During my study to date, I have found many themes
that relate to what we do as software testers. To keep this article
manageable, I will list a few of the topics and save the rest for a
Part II to be written at a later date. Here are the themes for which I
will provide references and additional discussion:
- The value of planning
- The value of inspections
- The importance of a quality foundation
- The value of accurately estimating the work to be
done
- Why it's good to only have one test team leader
- The value of hiring the right people for the job
- The reality that everything will be tested
- The importance of dealing well with others
- The importance of giving accurate information
- Excellence starts at the top
- God is the master tester
- The way to success is to build your skills
Let's look at each topic individually.
The Value of Planning
Make level paths for your feet and take
only ways that are firm. Proverbs 4:26
The Bible is full of stories about good planning.
Noah planned ahead and built an ark that saved his family and the
entire animal kingdom. Joseph planned ahead and stored food for seven
years in anticipation of a severe famine in Egypt. Nehemiah planned and
successfully rebuilt the wall of Jerusalem.
Although Jesus was clear that we should not worry
about tomorrow (Matthew 6:34), the overall experience of biblical
characters is that a little faith and a lot of planning goes a long way.
Likewise, in testing, the more complete the plan,
the better the test goes. Many projects and tests have failed because
the plans were not complete or were too ambitious.
The Value of Inspections
For lack of guidance a nation falls, but
many advisers make victory sure. Proverbs 11:14
The concept of advisers is another common theme in
scriptures. It's also common sense to have another set of eyes (or many
sets of eyes) look at something before diving right in.
Bill Perry first told me about the application of
this verse to inspections a few years ago. The concept of many advisers
in software engineering has been proven to be effective in reducing the
cost of software and the time to delivery. If this is a well-known
fact, then why do people ignore it? I think it is because people are in
such a rush, the idea of taking the time for review is just one more
extra corner to be cut. Of course, there is always time to do the job
over.
The Importance of a Quality Foundation
Therefore whoever hears these sayings of Mine, and
does them, I will liken him to a wise man who built his house on the
rock; and the rain descended, the floods came, and the wind blew and
beat on the house; and it did not fall, for it was founded on the rock.
But everyone who hears these sayings of
mine, and does not do them will be like a foolish man who built his
house on the sand; and the rain descended, the floods came, and the
winds blew and beat on that house; and it fell. And great was its fall.
Matt.7:24 - 27
Jesus taught about the importance of making sure we
build our lives on the one true foundation - Jesus Christ. Any other
foundation is temporal and will fail.
Modern business gurus also write about the folly of
reaching the end of one's career only to discover that their ladder of
success has been leaning against the wrong wall.
We can also extend this idea to testing. Many
times, organizations try to improve testing processes but do not
consider the foundation of such efforts. The foundation of testing is a
function to manage quality. This is the role of a true Quality
Assurance (QA) function. That's why when a QA group is primarily
concerned with testing, they are not laying a foundation of the
management of quality. There must be a way to implement, monitor, and
improve processes.
The idea of a quality foundation can also be
applied to building software without a quality process. When software
development or maintenance processes are poor, defects are high. In
addition, people must be motivated and knowledgeable to apply processes
and tools. Testing alone cannot compensate for poor development
processes. The foundation of good processes and people must be in place
for quality software.
The Value Of Accurately Estimating The Work To Be
Done
If a man digs a pit, he will fall in it;
If a man rolls a stone, it will roll back on him. Proverbs
26:27
In one sense, this verse means that sometimes the
things you start can ultimately be your downfall. Another
interpretation is that if you try to do too much, the volume of the
work will consume you.
In testing, a key success factor is the ability to
accurately and reasonably define the scope of testing. If you try to
test too much, you will not have enough time and will be left with
tough decisions at the end of the project as to what to test and what
to ignore. The problem with making this kind of decision at the end of
the project is that critical functions may go untested for the sake of
time. People also underestimate the amount of work needed to maintain
the test data they build during the test.
Why It's Good To Only Have One Test Team Leader
When a country is rebellious, it has many
rulers, but a man of understanding and knowledge maintains order.
Proverbs 28:2
When there is more than one leader, people are
confused as to who to follow. Multiple leaders indicate a lack of
"followership". This is sometimes called rebellion or mutiny.
One problem that can really add instability to a
test is when more than one person on the test team wants to drive.
There should be only one test team leader and it should be the
appointed one!
The Value Of Hiring The Right People For The Job
Like an archer who wounds at random is he
who hires a fool or any passer-by. Proverbs 26:10
One of the best things you can do in any aspect of
the project is to hire the right people. I know that sounds simplistic,
but many times - especially on a test team, people are chosen either
based on technical background or on availability. There is seldom a
consideration of the person's overall personality and fit on the team.
Sometimes it just takes a "gut feel" to know when you've found the
right person. I would rather hire on attributes and train on skills.
The Reality That Everything Will Be Tested -
Eventually
For no other foundation can anyone lay
than that that which is laid, which is Christ Jesus. Now, if anyone
builds on this foundation with gold, silver, precious stones, wood,
hay, straw, each one's work will become clear; for the Day will declare
it, because it will be revealed by fire; and the fire will
test each one's work, of what sort it is.( I Cor.
3:4)
The context of this passage is that we start with
Christ as our foundation and build our lives upon it. Some of the
things we build on it are very good and are considered gold, silver,
and precious stones. This could be things like helping others with pure
motives, reaching out to the poor, and other worthy acts. We can also
build things that have absolutely no eternal value, such as doing works
for our own glory. The Bible indicates that God will test our works as
to their eternal value. That will be an interesting day, indeed. Some
people who appear to be great on earth will have little left after the
test and some who are obscure will have great wealth. Everything we do
will be tested -perhaps not in this lifetime, but in the hereafter.
I apply this principle to testing also. We start
with a quality foundation, hopefully, and then build on it. While it is
true that we can't test everything in software before it is released to
the customer, it is a false assumption to believe that it will never be
tested. The customer will test your work for sure!
The Importance of Dealing Well With Others
Cast out the scoffer and contention will
leave; Yes, strife and reproach will cease. Proverbs 22:10
Do unto others as you would have them do
unto you. Matt. 7:12
In leading test teams, one of the problems you will
face is dealing with the "problem person." This is the person who
seldom has anything positive to say or contribute and gets their
self-worth by cutting others down. You can easily get into the
situation of spending more time repairing the ill will this person has
spread than actually leading the test. Sometimes the only way to deal
with a person like this is to replace them. Although it is good to
extend grace and not deal harshly with the person, Proverbs gives the
advice of casting out the scoffer with the result of ending contention.
Another angle of getting along with others can
apply to everyone. This is known as "The Golden Rule." Of everything
Jesus said, perhaps this is the most quoted and recognized phrase.
Truly, these are words to live by.
The Importance of Giving Accurate Information
Fear of man will prove to be a snare, but
whoever trusts in the Lord is kept safe. Proverbs 29:25
Wounds from a friend can be trusted, but
an enemy multiplies kisses. Proverbs 27:6
One of the toughest things a tester has to do is to
deliver the bad news that the software has defects or other problems. I
have often said that about the only way a tester can fail is to see a
defect and fail to report it. Given in the right way, the "bad news"
should ultimately result in a better product. If you are in an
organization that doesn't want to hear bad news, be prepared. You will
likely be blamed for problems after the software goes into production.
The reporting of test results should be part of the
testing process and should be objective, not political or blaming, in
nature.
Defects are Destructive
One who is slack in his work is brother to
one who destroys. Proverbs 18:9
Doing quality work is the result of an inner
conviction that quality is important. If someone does not believe in
doing their very best, they will do just what it takes to get by.
Quality work adds value. Defective work causes rework and sometimes
actually destroys a project.
The Way to Success is to Build Your Skills
Do you see a man skilled in his work? He
will serve before kings. He will not serve before obscure men.
Proverbs 22:29
Quality is more than just an attribute of a
product. It is the way we should live our lives. Of course, we'll never
be perfect, but that doesn't mean we should not strive for excellence.
The best way to succeed in your work is to build your skills. This
takes time and effort, but it is well worth it. I remember hearing
someone say one time that if you spend just thirty minutes a day
studying your own chosen profession, your income will double at least.
I tried it and it worked for me. It is amazing to see how opportunity
and preparation meet.
Excellence Starts at the Top
Thus Moses did; according to all that the
Lord had commanded him, so he did. Exodus 40:16
Moses had a huge job in leading the people of
Israel. Some commentators estimate the number of people Moses led at
six to seven million people! Moses set an example by doing the job God
called him to do. This example was the benchmark for the rest of the
people. During the wilderness wandering, the people built a temple to
precise specifications. This meant that the other leaders and workers
had to do their jobs precisely also. The excellence in Moses? life was
seen and modeled by others.
In today's organizations, the senior management
team must lead the way by setting an example of excellence. Far too
many times, a very few people at the top set a negative example of
greed, jealousy and rage. Attitudes, both good and bad, filter down to
all levels in the organization. You can always tell a quality minded
organization by the way the senior management leads. If quality and
ethics are not utmost in the minds of senior managers, it will not be
important to anyone else in the organization.
God is the Master Tester
I know, my God, that you test the heart
and are pleased with integrity. I Chronicles 29:17
For a man's ways are in full view of the
Lord, and he examines all his paths. Proverbs 5:21
This is the ultimate path test! It has been said
that integrity is who you are when no one you know is around. I know
that in my life, God knows my actions and has unique ways of letting me
know when I have violated his standard of integrity. God never fails to
find the places in my life that need improvement and He always has new
and unique ways to test me!
To find out more about the bible and how it relates
to quality, or to just comment on this article, e-mail Randy from the contact
page.
All materials on this site
copyright 1996 - 2008, Rice Consulting Services, Inc.
Rice
Consulting Services, Inc.
P.O. Box 892003
Oklahoma City, OK 73189
405-691-8075
"Leaders
are made, they are not born. They are made by hard effort,
which is the price which all of us must pay to achieve any goal that is
worthwhile." -- Vince Lombardi

This site best
viewed with the Mozilla Firefox
browser!
|