There are several questioning comments on my post Testing is Not a Service: What do I mean by testing and how do I reconcile my statement with the context-driven school of testing?
Let me clarify what I mean by service first. The way the participants were discussing testing as a service, they meant a common service to the organization, not the project. In the same way that accounting is a service to the organization, or the HR is a service to the organization, their organizations thought that testing was something that could be applied to projects (frequently long after development “finished”), in the same way that other organizational services could be applied to the organization.
But if you think of testing as a service, it’s applied to a project, not an organization. In a waterfall lifecycle, where the bulk of testing occurs at the end, it’s barely possible to have effective testing after development. It costs more in time, risk, and money. The testers take much more time to find problems because they’re not integrated into the project. It’s likely the testers will not find the problems the customers will. The cost to fix a defect is much higher. But the kinds of testing these people were talking about, “Spend a couple of weeks testing this app,” or my favorite, “Go over it lightly” is not effective for the product or the people. Those aren’t services to the project; they are a service to the organization–an ineffective service to the organization.
To me, testing is a part of development. When I talk about development, I mean code and test and documentation development, because I mean product development. Whatever it takes for the whole product is part of development. In that sense, testing is a service to the project, but definitely not a service to the organization. Product development is the service to the organization. Cost effective, reduced-risk product development requires integrated testing.
So how do I reconcile my view of testing (a component of product development) with the context-driven school of testing? Look at the The Seven Basic Principles of the Context-Driven School. My statements are congruent. Especially see: Testing groups exist to provide testing-related services. They do not run the development project; they serve the project. (They don’t serve the organization; they serve the project.
Product development is the goal, not code development or test development. Effective product development requires an integrated team, who all provide services to the project, not the organization.