级别: 初级 Jon (Scott) S. Nordstrom, 高级产品经理,Rational Software Analyzer, IBM
2009 年 11 月 09 日 了解 IBM Rational Software Analyzer 7.1 版本中新的软件集成、编程语言支持以及技术支持等功能。这一可扩展的软件可以帮助您在软件开发周期的早期阶段评审软件代码、识别漏洞,以及增强代码质量。在这一阶段中问题可以更容易得到解决,并且成本更低。
IBM® Rational® Software Analyzer 是一个可以帮助您在整个软件生命周期内,评价及提高程序质量的自动化代码质量框架。在软件仍在开发的过程中,检测软件缺陷的高成本使得公司希望尽可能早地识别和处理缺陷,因为随着时间的增长修补软件缺陷的成本将会越来越高。
Rational Software Analyzer 包含了一种集中式的框架,可以将第三方的代码分析工具与管理报告功能集成起来,而且可以与其他的 IBM Rational 产品自动集成起来,例如 IBM® Rational® Application Developer V7.5 与 IBM® Rational® AppScan® Developer Edition。对于想要自动化代码质量分析和交付更高质量软件的团队来说,这是一款简单而功能强大的工具。7.1 版本有以下几种显著的新功能得到了提高:
- 与 IBM Rational Team Concert 相集成,它运行在 Jazz 平台上
- 对 C/C++ 语言更深入的分析功能
- 技术支持更新
与 Rational Team Concert 相集成
Rational Software Analyzer 可以完美地与 Rational Team Concert 集成起来,并不断地添加质量检查功能,自动进行代码扫描,并查看代码的总体质量,以加强最佳操作。它帮助您最优化敏捷开发并达到其他的目标:
- 通过在整个开发周期内,集成自动代码质量评审功能,来最优化开发过程并确保代码质量政策的一致性。
- 通过提高代码管理、评审和评价的能力,来提高开发项目的强壮性
- 通过协调 Rational Team Concert 开发员和商业投资人之间的利益,来扫除交流障碍,并提高交流的效率
- 通过提高维护性并降低开发成本,来提高末端用户的满意度
- 通过掌握最佳操作并加强团队协作,来改善团队表现
通过自动化代码质量评审来优化开发
不同团队之间精确有效的交流,对于控制项目时间限制、风险和成本来说,十分关键。尽可能早地实施软件管理,并确保公司上下都执行稳定的代码评审过程,对于开发团队来说,也十分关键。
Rational Software Analyzer 与 Rational Team Concert 一起,向那些商业投资者提供了一种自动化的方式,在整个软件开发和交付过程中引入代码质量政策和标准。反过来,这又可以帮助开发团队检测 (大多数情况下是校正)编码阶段的错误。对于编写代码的人来说,它可以用作拼写和语法检查的工具。联合使用这两款工具可以添加以下这些功能:
- 一系列丰富的编码规则,开发团队可以使用它来评审代码
- 一个可扩展的框架,开发团队可以使用它来创建通用规则,并帮助增强开发团队的编码实践(参见图 1),还可以为集中管理第三方软件产品插人其他的分析工具
- 自动化并集中代码扫描,将代码质量分析集成到已存在的构建过程中,因此增加了一个静态分析质量检查的额外层
- 管理代码评审、评价更高的能力,以确定开发项目的总体健康状况
图 1. Rational Software Analyzer 增强配置代码的 Rational Team Concert 视图
开发者和投资者之间改善的协作性
将 Rational Software Analyzer 与 Rational Team Concert 集成起来,以鼓励协作。通过使共享最佳操作和坚持质量政策变得更加容易,可以提高开发团队的开发效率。除了可能改善代码的质量,联合使用这两款软件可以提供以下的好处:
-
代码评审过程的自动监测。团队可以向软件开发过程插人代码质量评审功能,然后使用 Rational Software Analyzer 来在自己的集成开发环境(IDEs)中配置代码质量规则。该软件简化了这个过程,并使开发员能够生产更高质量的代码,不管他们开发经验的多少。另外,管理员根据 Rational Software Analyzer 配置的规则,使用 Rational Team Concert 管理员设置的前提条件,来追踪每一个开发员对代码政策的遵守情况(参见图 2)。
-
协作。通过使用共享的数据规则集合,开发团队可以更好的进行协作以共享信息,这些信息对于满足公司的编码标准来说十分重要。
-
增长的分析。这种方法会查看以前的扫描,并只分析前一次分析更改过的代码,因此显著降低了识别代码质量问题所需的时间。
图 2. 集成可以帮助团队协作和共享预配置规则集合
点击查看大图
C/C++ 语言的深入分析
随着更多 C/C++ 规则集合的添加,7.1 版本中的多语言分析功能也变得更强了。这意味着 Rational Software Analyzer 现在交付了广泛使用语言间分析功能的强大集合。这种工具的使用有效地分析了多语言代码基底,可以产生以下显著的优势:
- 改善的质量
- 降低的开发和测试成本
- 更快的交易时间
- 增加的客户利润
如果您想要对 C/C++ 代码做广泛和深入的分析,那么通过自动扫描,您可以更加深入地分析代码,而不需要对代码做什么更改。这种对 C/C++ 的深入分析提供了 Java™规则,并导致了对 C/C++ 源代码的完整理解,如图 3 所示。这种深入的分析包含了以下这些类别:
-
数据流分析检查了汇编的代码,以识别潜在的内存和资源问题。数据流分析可以检查跨越多个类的问题。例如,一个类可能会打开一个流,并将其传递给另一个类以阅读来自文件的信息。如果有类关闭了流,那么结果将会是文件资源的泄露(参见图 3)。
-
结构化发现检查了不同源文件(典型的类)之间的关系,以构建程序总体结构的形图。附件工具一般用于发现已知的设计模式(好的)或者普通的反模式(坏的)。
-
软件度量和复杂性分析 工具比较了编码代码以构建软件度量功能,以决定它是否是不必要的复杂性。如果特定片段的源代码超出了给定的范围,它会标示为重构的候选部分,以提高维护性。
图 3. C/C++ 数据流分析快照
点击查看大图
技术支持升级
操作系统支持升级
Rational Software Analyzer 7.1 现在支持以下的操作系统:
- Microsoft® Windows® XP Professional(Service Pack 1 或 Service Pack 2)
- Microsoft® Windows Vista® Business,Windows Vista Enterprise,以及 Windows Vista Ultimate
- Microsoft Windows 2003 Server with Service Pack 2 (32 位模式)
- Microsoft Windows 2008 Server with Service Pack 2 (32 位模式)
- Red Hat Enterprise Linux® Server Versions 4.0 及 5.0 (32 位模式)
- Red Hat Enterprise Linux Desktop Versions 4.0 及 5.0 (32 位模式)
- SUSE Linux Enterprise Server (SLES) Versions 9 及 10 (32 位模式)
- SUSE Linux Enterprise Desktop (SLED) Versions 9 及 10 (32 位模式)
- IBM® AIX® V5.3
这些操作系统支持所有 Rational Software Analyzer 支持的语言。
扩展已存在 Eclipse IDE 的软件需求
IBM Rational Software Analyzer 7.1 为使用 Eclipse IDE 的 3.4.2 版本而开发。因此,在 eclipse.org 最新更新的基础上,您只能扩展已存在的 Eclipse V3.4.2 IDE 。
重要提示:
为使没有管理员权限的 Windows Vista 用户能够使用 Rational Software Analyzer,不要安装 SUSE Linux Enterprise Service 10,Service Pack 2 (参见 IBM® System z®:S390x)。
参考资料 学习
获得产品和技术
讨论
关于作者  | 
|  | Scott Nordstrom 是 IBM Rational Software Analyzer 的一名高级产品经理。他负责在 Rational 开发组织中为此产品线定义和实施整体的产品战略。在加入 IBM Rational 之前,Scott 在 BMC 软件负责业务开发和公司战略工作,并在德克萨斯州奥斯汀担当了多个软件原始公司的高级管理职务。 |
对本文的评价
|