The cost of software quality : how software quality assurance can help reduce rework