In
2012, voke published economic models to evaluate the hidden costs of software
projects. Our key findings show that since the Global Financial Crisis
(GFC) of 2009, the average cost of software projects is rising dramatically,
this is in spite of smaller teams working shorter durations. At the same
time, rework costs remain high or unknown and high profile software failures continue to make headlines daily.
Organizations must understand how defects create a hidden cost of rework in every software project and how these costs manifest differently in Agile and Non-Agile projects. Given the impact of catastrophic software failures on the brand, we should be witnessing a movement toward increased quality, not a reactionary call for more testing after the software has shipped.
Software engineering professionals are
familiar with the concept of Cost of Quality, or more specifically, the cost
involved with removing defects, essentially the cost of “rework.” The premise
of this concept is that the later in the lifecycle a defect is identified, the
more expensive it is to resolve the issue.
With
the failure of www.HealthCare.gov, US taxpayers will pay the price for the cost of rework. Modern tools such as service virtualization enable early
testing of incomplete or unavailable components and systems to help mitigate
potential risks of production failures.
Uncovering defects earlier in the software
lifecycle saves time and money. In today’s environment where businesses and
governments run on software, removal of defects related to requirements is
essential to eliminating the risk of exponential cost overruns and schedule
delays.
Collaboration and availability is essential
prior to beginning development. It is much less expensive and easier to meet,
discuss, review, and refine to ensure that requirements are properly defined
and communicated than to change the code at a later point in the project.
Effective collaboration and test coverage of
key requirements is essential. Make sure you invest properly in architecture,
requirements, design, and quality practices that prevent the release of catastrophic failures.
Tips to avoid catastrophic failures:
·
Maintain
parity and independence between your Test and Development organizations
·
Ensure
availability of the business to actively participate in the requirements
process and strategic decisions throughout the lifecycle
·
Understand
your cost of rework (See voke Strategic Brief: Cost of Rework in Agile andNon-Agile Projects)
·
Empower
your test organization with modern technology (See voke Market Mover Array: Testing Platforms)
·
Leverage
the power of service virtualization to enable testing of unavailable components
or services early in the development process (See voke Market Snapshot: Service Virtualization)
·
Remove
the risk of failure through Extreme Automation. Remove barriers and enable
communication, collaboration, and connectivity. Deliver valuable business
outcomes and meet the insatiable demand for quality.
Most importantly, understand the business risks of prioritizing schedule to the exclusion of quality and ultimately cost. Empower your test organization to protect your brand from catastrophic failures.
t