In 2022, most of the software testing is done with the help of QA automation tools, but we all know that before the invention of automated software testing all the scripts were written and run manually. How has a human being come to the concept of testing itself? Who was the father of software testing and who coined the term “bug”? Read in our new article on the history of software testing.
Who Coined the Term
If you ask what software testing is, we will easily answer that it is an activity of checking whether the actual results match the expected so that a software product or application does what it is supposed to do. Logically, this term appeared far after the invention of the first mechanical computer – “The Babbage machine”, which has happened in 1822 by an English inventor Charles Babbage.
Right since that time, from the 19th century, the history of system faults and arranging software testing to eliminate them has begun. The term “bug” is believed to be used for the first time and then coined by Thomas Edison in 1878. Although Edison worked mostly with hardware, he wrote a letter to his associate, in which he coined the word “bug”. The association was brilliant, and soon it has become a worldwide term used to name faults in software:
“It has been just so in all of my inventions. The first step is an intuition and comes with a burst, then difficulties arise – this thing gives out and [it is] then that “Bugs” – as such little faults and difficulties are called – show themselves and months of intense watching, study and labor are requisite before commercial success or failure is certainly reached”.
The Father of Software Testing
During World War II, people greatly advanced computer technology, building powerful electronic computers able to break the secret codes and discover the secrets of enemies’ communication. By the end of the war in 1945, the terms “computer bug” and “debugging” were officially coined in the history of software testing by Grace Murray Hopper.
Of course, there are numerous differences between software testing and debugging, as the last one is only a part of the whole testing process. Engineers all over the world also realized that and sought a methodology that could not only erase bugs but make the final product work just as it was expected to. In 1951, Joseph Juran, who is now considered to be the father of software testing, for the first time marked the importance of software quality assurance in his book “Quality control handbook”. He had also defined 3 parts of QA management: quality planning, control, and improvement.
Coming to the modern history of software testing, in 1957 Charles L. Baker finally distinguished program testing from debugging in a book review, and just a year later the first testing team was formed by Gerald M. Weinberg for the Project Mercury – the first human spaceflight program in the USA.
Since then, the software testing terminology was developing, changing, and supplementing, till it was clearly distinguished in the book “Art of Software Testing” by Glenford J Myers in 1979. There, just as today, errors are referred to as human mistakes, leading to bugs in the software, and causing its failure or improper work.
Testing Standards of Today
In 1999 the first book on software automation was written by Mark Fewster and Dorothy Graham, in which they comprehensively treated software test automation issues, strategies, and tactics. In 2003 Cem Kaner has come to the history of software testing by discussing the use of scenarios in testing in his article “The Power of “What If” and “Nine Ways to Fuel Your Imagination”. He defined a scenario as a hypothetical story, used to help a person think through a complex problem or system, enterprising its uses and characteristics.
By that time, the quality assurance of software has become the question of the highest priority not for the whole industry, but for the world economics, as it could avoid setbacks in companies’ and governments’ budgets. For example, the project Ariane 5 flight 501 rocket, estimated at $8 billion dollars, failed due to a software defect in 1996. In 2003, several United States and the capital of Canada Ontario had the second most widespread blackout just because of a software bug in an alarm system.
That’s why in May 2007 ISO formed a working group to develop a new standard on software testing that contributed toward standardizing the procedures, artifacts, methods & techniques of software development & testing – ISO 29119.
By now, software testing has proved to be the major instrument for delivering high-quality engineering solutions and has become an inseparable procedure in software development with a huge glossary of testing terminologies, procedures, standards, approaches, frameworks, and tools. Each year this field opens numerous job and business opportunities for QA engineers, software testing institutes, and vendors of testing tools.
Stay with us to be aware of the novelties and cutting-edge technologies in the world of QA, and you are always welcome to leave your comments and ask any testing-related questions on our social media profiles. And feel free to try our codeless testing platform!