In today's competitive environment for software products, quality is a
n important characteristic. The development of large-scale software pr
oducts is a complex and expensive process. Testing plays a very import
ant role in ensuring product quality. Improving the software developme
nt process leads to improved product quality. We propose a queueing mo
del based on re-entrant lines to depict the process of software module
s undergoing testing/debugging, inspections and code reviews, verifica
tion and validation, and quality assurance tests before being accepted
for use. Using the re-entrant line model for software testing, bounds
on test times are obtained by considering the state transitions for a
general class of modules and solving a linear programming model. Sche
duling of software modules for tests at each process step yields the c
onstraints for the linear program. The methodology presented is applie
d to the development of a software system and bounds on test times are
obtained. These bounds are used to allocate time for the testing phas
e of the project and to estimate the release times of software.