The amount of quality assurance work required for a project will generally scale with project size. However, there are a large number of tangential and “soft” factors which also have a strong influence on the amount of time needed to complete a quality assurance initiative. Consider the following wide categories of factors:
- Software Product Size
- Desired Quality Level
- Experience of Staff
- Level of Staffing
- Technology Used
- Scope of Work
- Complexity of the Product
- Overhead (e.g. Coordination with Stakeholders)
- Process Maturity
Tools like COCOMO, from the University of Southern California, provide estimations for a full software project. However, tools for the estimation of quality assurance initiatives are less widespread. More often than not, leading quality assurance engineers within an organization will use knowledge of previous projects to make unprepared predictions for quality assurance project schedules. Estimating schedules for quality assurance initiatives is important for decision making - this information can, among other things, impact decision making about testing scope and release dates. The approach to schedule estimation should ideally be both structured and holistic. These characteristics may at first seem incompatible, but that doesn’t have to be the case. For example, a simple approach to estimating a quality assurance project schedule might be to:
- Develop a work breakdown structure which details the smaller tasks involved in the quality assurance project.
- Consider small task estimations in combination with the “soft” factors previously discussed. Analyze and adjust estimations as needed.
- Further improve the aggregate estimation with additional thoughts arising from expert experience, estimation models, and historical data. From this collection of ideas, establish a final estimation. Best and worst possible outcome estimations may provide even greater understanding for your stakeholders.