Professor Jeff Offutt Provides Some Insight to LogiGear Magazine on How to Become a Software Tester

Professor Jeff OffuttJeff Offutt – Professor of Software Engineering in the Volgenau School of Information Technology at George Mason University – homepage – and editor-in-chief of Wiley’s journal of Software Testing, Verification and Reliability,

LogiGear: How did you get into software testing? What do you find interesting about it?

Professor Offutt:
When I started college I didn’t know anything about computers. I was a math major and in my first semester, my adviser convinced me to take an introductory programming course that was being specialized for math majors. Programming was taught in the business department, so a math-focused class was quite different and the faculty wanted to make sure enough students took it.

I was immediately hooked. Programming was fun and it was easy! (Unlike calculus, which I didn’t like.) It took me a few semester to find out that the pre-engineering majors who thought calculus was easy and fun often found programming hard. I was shocked to find that companies actually paid good money to programmers!

But I was frustrated by how much effort it took to write really good software. Design was poorly done, languages and programming tools were terrible (I started with BASIC and COBOL on punched cards!), and debugging was horrible. So I wanted to do whatever I could to help build quality software. When I got to graduate school I met a professor who was working on testing and I quickly found I could apply my love for discrete math (not continuous math) to making better software. So I’ve worked on testing, and especially automated testing, ever since.

LogiGear: What kind of work are you doing? How did you pick those specific topics, anyway?

Professor Offutt: I’ve found the hardest problem in testing is the key issue of getting test values. Most other aspects are either easy, straightforward, mechanical, or automated. And I’ve had a passion for inventing criteria and algorithms that can automatically generate good tests since my PhD thesis work.

A few years ago I agreed to teach a class on designing and building Web applications. I immediately realized that deploying software on the Web affected every aspect of software engineering, including testing. So I developed a technique for modeling Web software component interactions that can be used for testing (and other activities). I also invented a black-box technique called bypass testing, and I am currently working on a mutation model to test the novel control and state interactions that Web applications use.

I pick problems based on what I have trouble with as a programmer or as a user. And it helps if the problems are interesting to students.

LogiGear: How can a college student prepare to go into software testing and become really good at it? What should he or she look for in teachers, courses, and methods?

Professor Offutt: Testing is truly entering a golden age. The need for software quality has been increasing dramatically, and new ideas like Agile processes put a heavy emphasis on testing. A tester should have two qualities: (1) an innate need to have high quality software, and (2) a very logical mind.

Give me someone who programs a little slowly, but who turns in programs without faults.

LogiGear: What sort of graduate programs should college graduates consider?

Professor Offutt: A testing researcher should be very good at discrete math. Logic and set theory, graphs, grammars and finite state machines — and abstract algebra if she can get it. Look for programs that are based on 21st-century concerns. Look for universities that have lots of software engineering classes instead of the standard one. Do they have an undergrad and graduate course in testing? Do they have more than one? How many faculty list software engineering and software testing as their FIRST research area? Many CS programs are teaching the same material that I learned as a student in the early 1980s. The industry has changed completely — how can all that material still be relevant? The answer is easy: Most of it is not.

LogiGear: Also, in your opinion, what are some of the more interesting research questions people are asking now and what do you think they’ll be researching in, say, 5 years?

Professor Offutt: New technologies (like the Web) are great sources for new software testing research problems. Emergent properties like security and usability are also major growth areas for the near future. Research is like science fiction — it takes 15 or 20 years to go from research ideas to practical use; so what will we need 15 years from now? The Web is a great example. All the ideas were laid out in PhD theses and conference papers in the 1970s and 1980s, then the Web was created from those ideas in about 1990, and finally Web applications were being developed a few years later.

LogiGear: Thank you, Professor Offutt.

 

LogiGear Corporation

LogiGear Corporation LogiGear Corporation provides global solutions for software testing, and offers public and corporate software-testing training programs worldwide through LogiGear University. LogiGear is a leader in the integration of test automation, offshore resources and US project management for fast and cost-effective results. Since 1994, LogiGear has worked with hundreds of companies from the Fortune 500 to early-stage startups, creating unique solutions to exactly meet their needs. With facilities in the US and Vietnam, LogiGear helps companies double their test coverage and improve software quality while reducing testing time and cutting costs. For more information, contact Joe Hughes + 01 650.572.1400

LogiGear Corporation
LogiGear Corporation provides global solutions for software testing, and offers public and corporate software testing training programs worldwide through LogiGear University. LogiGear is a leader in the integration of test automation, offshore resources and US project management for fast, cost-effective results. Since 1994, LogiGear has worked with Fortune 500 companies to early-stage start-ups in, creating unique solutions to meet their clients’ needs. With facilities in the US and Viet Nam, LogiGear helps companies double their test coverage and improve software quality while reducing testing time and cutting costs.

The Related Post

This article was originally featured in the July/August 2009 issue of Better Software magazine. Read the entire issue or become a subscriber. People often quote Lord Kelvin: “I often say that when you can measure what you are speaking about, and express it in numbers, you know something about it; but when you cannot express ...
LogiGear Magazine March Issue 2021: Metrics & Measurements: LogiGear’s Guide to QA Reporting and ROI
Having developed software for nearly fifteen years, I remember the dark days before testing was all the rage and the large number of bugs that had to be arduously found and fixed manually. The next step was nervously releasing the code without the safety net of a test bed and having no idea if one ...
Training has to be fun. Simple as that. To inspire changed behaviors and adoption of new practices, training has to be interesting, motivating, stimulating and challenging. Training also has to be engaging enough to maintain interest, as trainers today are forced to compete with handheld mobile devices, interruptions from texting, email distractions, and people who think they ...
  Explore It! is one of the very best software testing books ever written. It is packed with great ideas and Elisabeth Hendrickson’s writing style makes it very enjoyable to read. Hendrickson has a well-deserved reputation in the global software testing community as someone who has the enviable ability to clearly communicate highly-practical, well-thought-out ideas. ...
Internet-based per-use service models are turning things upside down in the software development industry, prompting rapid expansion in the development of some products and measurable reduction in others. (Gartner, August 2008) This global transition toward computing “in the Cloud” introduces a whole new level of challenge when it comes to software testing.
With this edition of LogiGear Magazine, we introduce a new feature, Mind Map. A mind map is a diagram, usually devoted to a single concept, used to visually organize related information, often in a hierarchical or interconnected, web-like fashion. This edition’s mind map, created by Sudhamshu Rao, focuses on tools that are available to help ...
Do testers have to write code? For years, whenever someone asked me if I thought testers had to know how to write code, I’ve responded: “Of course not.” The way I see it, test automation is inherently a programming activity. Anyone tasked with automating tests should know how to program. But not all testers are ...
When You’re Out to Fix Bottlenecks, Be Sure You’re Able to Distinguish Them From System Failures and Slow Spots Bottlenecks are likely to be lurking in your application. Here’s how you as a performance tester can find them. This article first appeared in Software Test & Performance, May 2005. So you found an odd pattern ...
This is an adaptation of a presentation entitled Software Testing 3.0 given by Hung Nguyen, LogiGear CEO, President, and Founder. The presentation was given as the keynote at the Spring 2007 STPCON conference in San Mateo, California. Watch for an upcoming whitepaper based on this topic. Introduction This first article of this two article series ...
This article was developed from concepts in the book Global Software Test Automation: Discussion of Software Testing for Executives. Introduction When thinking of the types of Software Testing, many mistakenly equate the mechanism by which the testing is performed with types of Software Testing. The mechanism simply refers to whether you are using Manual or ...
Alexa Voice Service (AVS): Amazon’s service offering for a voice-controlled AI assistant. Offered in different products. Source: https://whatis.techtarget.com/definition/Alexa-Voice-Services-AVS Autopilot Short for “automatic pilot,” a device for keeping an aircraft on a set course without the intervention of the pilot. Source: https://en.oxforddictionaries.com/definition/us/automatic_pilot Blockchain Infrastructure: A complex, decentralized architecture that orchestrates many systems running asynchronously over the ...

Leave a Reply

Your email address will not be published.

Stay in the loop with the lastest
software testing news

Subscribe