Correctness tools can improve software development by supplementing human shortcomings, detecting programming errors such as null-pointer dereferences, API usage errors, and failing to close file descriptors. Microsoft Research has developed two generations of correctness tools: The first are heuristic tools widely used inside the organization to find programming errors; the second are tools based on sound program analysis and driven by rules describing interface behavior. Together, these tools offer a systematic approach for finding and fixing errors early in the development process.
Index Terms:
software engineering, coding tools and techniques, formal methods, model checking
Citation:
James R. Larus, Thomas Ball, Manuvir Das, Robert DeLine, Manuel F?hndrich, Jon Pincus, Sriram K. Rajamani, Ramanathan Venkatapathy, "Righting Software," IEEE Software, vol. 21, no. 3, pp. 92-100, May/June 2004, doi:10.1109/MS.2004.1293079 Usage of this product signifies your acceptance of the Terms of Use. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||