Elevating Code Quality
Charting the course toward continuous improvement
Jun. 28, 2006 01:00 PM
Monitoring and measuring code quality consistently from start to finish—beginning with definition of requirements and on into deployment—keeps quality efforts focused across the entire application development life cycle. Managers who consistently track and analyze metrics and progress reach higher levels of quality. The key to improving poor code quality is monitoring, measuring and modifying development team behaviors.
Here are some recently reported cases, just to name a few:
In March 2005, software upgrades caused the loss of school records and other crucial data on timetabling, examination performance and attendance in hundreds of schools in England and Wales.
In December 2004, a computer glitch in Canada prevented 14,000 medical tests results on 600 patients from reaching the doctors who ordered the tests.
In April 2003, the largest student loan company in the U.S. made a software error in calculating the monthly payments on 800,000 loans. Although borrowers were notified of an increase in their required payments, the company still reportedly lost $8 million in interest.
The evidence is clear. Errors in applications do occur and, increasingly over the last ten years, tools and techniques have become available to help software developers reduce the occurrence of these errors.
But how much support is given to the managers of these development teams? After all, it is the development managers who shoulder the burden of responsibility for the quality of the finished product.
Chances are the developer of an original piece of code doesn’t stay with that code for its entire lifetime. Poorly written code often means little or no documentation. As a result, it is difficult to correct and update, forcing other developers to spend a great deal of time trying to decipher it. A change to one area of code can easily damage another, resulting in cascading bugs causing new, more complex problems.
So what can a development manager do to alleviate this situation? What initiatives have proved the most promising?
DEVELOPMENT LIFECYCLE MANAGEMENT
Development managers must take the lead in establishing the necessary best practices that focus on code quality for the entire life cycle of their software—from development to deployment and beyond.
Software quality must become a mindset that is filtered from the top down. Managers must empower their development teams to adopt quality processes that allow for effective inter-group communication, error detection and prevention.
Such quality assurance (QA) processes should include:
The Forrester study concluded that the top five metrics most critical in reaching higher levels of quality are:
Monitoring and measuring quality consistently from start to finish—beginning with requirements definition and on into deployment—keeps quality efforts focused across the full application life cycle.
But unless developers build quality into a software application’s foundation, their code must be continually patched and otherwise repaired, treated as a fragile entity that can break at any moment.
ENGAGE QUALITY EARLY
While code quality tools have traditionally focused on developers, the burden of software integrity for corporate applications lies directly with development managers.
With the push to develop faster with fewer resources, development managers are finding their jobs especially difficult when developers, faced with their own time pressures, do not adhere to corporate coding standards or thoroughly test their code. Worst of all, development managers have no reliable and accurate way to measure their team’s progress.
As a result, development managers, worried about job security, are forced to gloss over quality checks they know they should be enforcing in order to deliver against deadlines.
As part of the development cycle, a focus on code quality is especially crucial during the actual coding phase of an application. In order to effectively track code quality and bring about change, development managers must be equipped with the same metrics that are available during the other phases of a project.
THE ENERJY SOLUTION: ENERJY CQ2
Enerjy CQ2 integrates with commonly used developer tools including:
Development managers will now be empowered with the information they need to improve their team’s code quality and performance, meet budget and schedule restraints, accelerate training processes and create effective reporting tools for senior management.
As a result, the quality mindset built in at the beginning of a project will ripple through their organization, improving software application quality, employee morale, customer satisfaction and the bottom line.
Who Is Enerjy Software?
Development managers can now monitor and modify the behaviors of individual developers, thereby boosting the performance and productivity of the entire team, improving the quality of the code, and correcting the course of the overall application development project.
Enerjy Software is a division of Teamstudio, Inc. With headquarters in Beverly, Massachusetts, Teamstudio also has offices in the UK, France, and Japan. To learn more about software integrity solutions designed to improve application quality and enhance developer productivity, please visit Enerjy's Web site at: www.enerjy.com
Reader Feedback: Page 1 of 1