

Relevant Reads
WHITEPAPER:Source Code Analysis in an Agile World
To keep pace with ever-increasing customer demands on software functionality and time-to-market expectations, software developers have had to evolve the way they develop code to be both faster and higher quality [...]
WHITEPAPERS:Generating Accurate, Scalable Whole Program Analysis
a candid discussion of the cost savings, productivity and quality benefits that can be achieved by stabilizing builds and code quality as early in the development cycle as possible [...]
RESEARCH: Research Report: Improving Software By Reducing Coding Defects (Exclusive Defect Detection report from New Rowley Group)
Software coding defects increase the cost of development and support, tarnish a company's reputation, and limit revenue opportunities [...]
Solutions - Refactoring
Enable C/C++ refactoring as a standard development practice
Make code more understandable
Code bases don't live and die within a single version, or within a single iteration, and an Agile process of constant improvement will make it more likely that the next person to be editing your source won't be you. This means code needs have a clean and understandable design, making refactoring a necessary daily activity for the Agile software developer. Refactoring code does not alter the functionality of a code base, nor does it add new features. It is used to make a code base more easily understood, cleaner, and friendlier to change - that is, making it easier for other developers and teams to inherit.
Refactor C/C++ early and often
While Java and C# developers enjoy tools that provide automated refactoring , C/C++ developers have not enjoyed the same productivity benefits. Everything from misleading variable names to repetitive code that should be abstracted for simplicity, refactoring allows developers to save significant time by ensuring that code is well designed, coherent, and can be easily picked-up by the next developer who needs to make modifications.
Enable C/C++ refactoring
Leveraging the base of semantics generated from its static analysis engine, Klocwork Insight Pro provides an in-editor capabil/ity for C/C++ developers, something that has been available to Java and C# developers for years. This simple, yet compelling feature set quickly becomes second nature for any good developer, allowing you to create not only functionally correct code, but also elegant, maintainable code that is functionally identical but yet has the possibility of being modified by other coders without them needing to understand you perfectly first.
Learn more
Download the Klocwork whitepaper "Introducing the Agile Desktop" to learn more.