2009年3月19日,源代码分析领域的先驱——美国Klocwork公司在北京裕龙国际酒店会议厅举办Klocwork源代码分析最佳实践研讨会。研讨会以“源代码分析让开发变得更敏捷”为主题,围绕源代码分析的作用以及如何将源代码分析融入开发流程展开研讨。会议现场, Klocwork公司的高级技术专家Mark Grice先生详细介绍了源代码分析技术的发展,并结合具体技术案例讲解在敏捷开发过程中,为什么以及如何利用源代码分析技术实现效益最大化,Mark先生还讲解了如何借助持续集成的思想实现第一时间发现并消除代码缺陷的策略。
敏捷的前提是编写无缺陷代码
敏捷宣言中有一条重要原则:首要的进度测量标准是可正常运行的软件。可正常运行的软件是指软件没有下列问题:无法顺利构建、不可预期的行为、不满足产品需求及常见的编程缺陷。这一原则不只适用于敏捷方法,很多软件开发过程,包括CMMI和六西格玛等严格的开发模型,均提倡把编写无缺陷的代码作为基本原则。这些过程都采取阶段内的缺陷控制措施(防止缺陷从引入阶段泄漏到后续阶段)。敏捷开发过程的迭代周期短,因此,必须保证能迅速识别并纠正潜在的软件缺陷,才能进入下一次迭代。
尽管敏捷开发团队普遍采用了持续集成和回归测试方法,可以有效地发现导致构建过程或回归测试异常中断的缺陷,但在清除如下几类常见的编程缺陷时效果并不明显:内存及资源管理错误、空指针问题、未初始化变量、程序数据管理问题、缓冲区溢出、数组越界、未经验证的用户输入、存在安全漏洞的代码、并发异常以及复杂、费时的维护性问题。缺陷多的代码会导致本次迭代或者后续迭代产生风险,形成迭代不彻底或者延期。
内容导航

























