Q

When to begin testing in the SDLC

Testing is one of the most important components of the software development lifecycle, but when to begin testing depends on a number of factors. Expert Mike Kelly discusses how certain issues affect the timing of testing in the SDLC.

During the SDLC for a Web-based application, when is the best time to present the application for testing and access to the business users? Should it be presented prior to the development and approval of the test conditions? What is the proper protocol?

This is a difficult question to answer because it really depends on your context: the business users, the development team, and what style of development you're doing. There isn't one development lifecycle that works for all companies, or even all teams within a company. Each context is unique, and what works at one company may fail at another because of small -- possibly initially undetectable -- differences.

For example, if you're working in an agile environment, then I think the answer would be to get the application in front of testing and the business as soon as you get something working. Even if there might be some issues, the early and rapid feedback is important. If you're working in a more contact-heavy environment, and there are political or contractual ramifications to the business users finding issues, then you might want to wait until testing has covered the significant risks and areas of the product.

In your context, if you wanted to release the application to testing and business users earlier, you might want to answer the following questions:

  • Do we have a method for capturing early feedback from testers and users? This may or may not be your normal testing processes and tools.
  • How will the development team (that's not only the programmers, but other testers, project managers, analysts, and other stakeholders) respond to early feedback if they get it?
  • How will the testers respond to getting application earlier, perhaps in a less stable state? Will it make their jobs easier or more difficult? What would that team need to change to support that new process?
  • How will the business users respond to getting application earlier, perhaps in a less stable state? Will it make their jobs easier or more difficult? What would that team need to change to support that new process?
  • Are there any metrics that we currently capture that we may need to re-evaluate if we change when we release our software to testing or the business users?
  • Are there any existing contract stipulations that might prevent us from changing when we release our software to testing or the business users?

There are probably other questions to ask, but that should get you started. Other questions will likely emerge as you get the answers to those. If it looks like earlier releases might be a good fit for your team, try it. If not, use the same questions, slightly modified, to determine if perhaps you're already releasing the application too early and check to see if you might benefit from slowing things down.

This was first published in May 2008

Dig deeper on Software Testing and QA Fundamentals

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

-ADS BY GOOGLE

SearchSOA

TheServerSide

SearchCloudApplications

SearchAWS

SearchBusinessAnalytics

SearchFinancialApplications

SearchHealthIT

Close