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

LogiGear Magazine – July 2011 – The Test Methods & Strategies Issue
Think you’re up for a challenge? Print this word search out! See if you can find all the words and learn a few new software testing terms in the process. To see how you’ve done, check your answers in the answer key below. *You can check the answer key here.
It’s a bird! It’s a plane! It’s a software defect of epic proportions.
Introduction Keyword-driven methodologies like Action Based Testing (ABT) are usually considered to be an Automation technique. They are commonly positioned as an advanced and practical alternative to other techniques like to “record & playback” or “scripting”.
Companies generally consider the software they own, whether it is created in-house or acquired, as an asset (something that could appear on the balance sheet). The production of software impacts the profit and loss accounts for the year it is produced: The resources used to produce the software result in costs, and methods, tools, or ...
LogiGear Magazine – May 2011 – The Test Process Improvement Issue
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 ...
In today’s mobile-first world, a good app is important, meaning an effective Mobile Testing strategy is  essential.  
At VISTACON 2011, Jane sat down with LogiGear Sr. VP, Michael Hackett, to discuss complex systems.
The V-Model for Software Development specifies 4 kinds of testing: Unit Testing Integration Testing System Testing Acceptance Testing You can find more information here (Wikipedia): http://en.wikipedia.org/wiki/V-Model_%28software_development%29#Validation_Phases What I’m finding is that of those only the Unit Testing is clear to me. The other kinds maybe good phases in a project, but for test design it ...
Most have probably heard the expression ‘less is more‘, or know of the ‘keep it simple and stupid‘ principle. These are general and well-accepted principles for design and architecture in general, and something that any software architect should aspire to. Similarly, Richard P. Gabriel (a major figure in the world of Lisp programming language, accomplished poet, and currently ...
This article was originally featured in the May/June 2009 issue of Better Software magazine. Read the entire issue or become a subscriber. In my travels, I’ve worked with a number of companies that have attempted to assess the quality of their testing — or worse, their testers — using poorly considered metrics. Sometimes the measurement ...

Leave a Reply

Your email address will not be published.

Stay in the loop with the lastest
software testing news

Subscribe