Testing and the Flow of Value in Software Development
High quality software should be measured by the value it delivers to customers, and high quality software process should be measured by the continual flow of customer value. Modern processes have taught us that managing flow is all about the constraints restricting that flow. Testing, rather than being thought of as a conduit in that flow, is often perceived as an obstacle. It doesn't help that most testers struggle to answer the questions that their managers ask: What has and hasn't been tested? What do we need to test next? Where do we need to shift resources? If it works in the lab, why isn’t it working on those production machines? Where do we need to fix the performance or security? The ability-or inability- to answer these questions can determine the success and budget of a test team as well as how it is valued by its organization. Sam Guckenheimer explores these questions with metrics examples from both healthy and unhealthy projects. He contrasts the use of these metrics to current practices, which often only emphasize effort and bug counts. In these examples, Sam uses Microsoft Visual Studio Team System (VSTS) to collect and report measurements and to suggest corrective actions.