If you google the therm “Military Intelligence”, among the first results you will find the following Creed of the (US) Military Intelligence Corps:
I am a Soldier first, but an intelligence professional second to none.
With pride in my heritage, but focused on the future,
Performing the first task of an Army:
To find, know, and never lose the enemy.
With a sense of urgency and of tenacity, professional and physical fitness,
and above all, INTEGRITY, for in truth lies victory.
Always at silent war, while ready for a shooting war,
The silent warrior of the ARMY team.
I couldn’t find the source to quote it, but this sounds close enough to what I know about Intelligence Officers from some friends with vast military experience.
Why am I writing this about “soldiers”?
The answer is simple.
A short while ago Jerry Weinberg commented to one of my posts (republished in Tea Time with Testers) that he was looking forward to my explanation on why I think the work of testers is in many ways similar to the job of Military Intelligence Officers.
I believe he was referring to the following quote from my post “To Protect and Serve“:
“… In many cases we are serving as (Military) Intelligence Officers to our Organizations, helping to make the most complex and challenging strategic and tactical decisions.”
Some of you may already know that Jerry is high in my list of admired testers, so I would not even dream of not answering his questions. So I decided it was time to take upon this topic with a post of its own.
Back to basics: what is the role of the QA Tester?
In the past I wrote my definition of QA (or Testing) Intelligence as follows:
To provide concrete, relevant and timely information
captured from multiple data sources and using many disciplines
to help our stakeholders make their tactical and strategic decisions.
This definition is composed of 3 parts:
(1) We provide the right information
(2) We gather the information from various sources
(3) The aim of this information is to help make the correct decisions
Before we move forward I would like you to perform the following exercise. I promise it won’t hurt, and it will take you less than 4 minutes to complete it.
Read the definition of QA Intelligence above and think about your current testing team.
– Does the definition help to define the objectives of your team?
– In a high level, does it help you to accurately prioritize your work and to explain to others in your team and outside of it what it is that you are achieving?
Now, think about a Military Intelligence Officer working alongside the Top Generals of an army, and once again read the definition of QA Intelligence but think about the Intelligence Officer’s work.
– Does the definition help to define the objectives of the Intelligence Officer?
– Does it help to prioritize his work and explain to other members of his team what are his responsibilities and tasks?
In many ways the objective of the QA Tester and of the Intelligence Officer are very similar.
Each of us in his or her own contexts, are tasked with providing information that will help our superiors and the rest of the team/unit to do their work better and to make the correct decisions.
We are in the business of Information
Just like the intelligence officer is not tasked with fighting the enemy in hand-to-hand combat, as testers we are not tasked with writing the code that will be delivered to the end users. Our job is to provide information support to the people who are making the strategic and tactical decision as well as those in the fighting and coding lines.
This doesn’t mean that we don’t have an intricate and highly technical job.
Many times our jobs are even more technical than “only doing the coding”, because we need to think about and simulate strange but realistic scenarios where customers will be using our product in unforeseen ways, and that way seek out the issues that may be hiding under these extreme conditions.
Have you ever seen testers using “counter-bug-intelligence” tactics exemplified by the phrase: “if I was a bug, where would I be hiding…”? I know I have!
Now seriously, one of the most complex jobs of QA Engineers is to make sure we are providing the correct information. By correct I don’t (only) mean the right data from our test runs, but the actual information derived from processing all our data points and putting together an image that is both accurate and informative.
Not only that, but we need to work with incomplete information, making assumptions and explaining them as risks of things that may or may not happen. Does it sound like guessing where the enemy is hiding and how they will behave?
In the end of the day our stakeholders don’t have the time to go over all the results and assumptions. They expect us to do this processing for them. All they want to receive are the synthesized pros and cons, described as simply as possible, to help them make the right decision quickly.
We gather information from multiple sources of raw data
Another thing that connects between testers and military intelligence officers is that we work with a large number of data sources and types.
Just as we need to run functional tests, API tests, Load tests, etc., intelligence officers need to gather data from satellites, personal observations, spies, etc.
For us is not only about bugs and tests but also about statistics of usage and different types of user behaviour as well as technological changes and different types of platforms and conditions where our products may be used. In a similar way, for them is not only about the enemy and their weapons, but about the general population in specific areas and the political, economical and even ethnical connections between different factions of a war.
Both us and them need to provide concrete, concise and timely readings of all this information, presenting the current status of affairs and an appraisal of the future based on a limited number of assumptions.
Integrity and truth
Finally, I couldn’t help but notice something that was written in the Creed and connect it to words mentioned both by Jerry Weinberg and James Bach in their answers to my 5 Testing Questions.
The creed says:
“…and above all, INTEGRITY, for in truth lies victory.”
When I read this, I realized it was similar to what both Jerry and James answered to some of my questions.
Like when Jerry answered that the most important piece of advice for a tester would be to:
And when James wrote that among another number of traits a tester should always have:
“…a strong sense of ethics.”
What do you think?
Are there other similarities between QA Testers and Military Intelligence officers?
Do find another profession where with which we share many of the same traits and challenges?
Please let us know by leaving your comments!