Parasoft为G3提供专注于安全性和整体软件质量的静态分析解决方案
客户背景
G3 Technologies,Inc.是一家无线电信组织,提供定制服务的工具和解决方案,以满足固定/移动无线运营商、《财富500强》公司和人道主义服务组织的需求。
G3极高的软件质量标准要求使用静态分析工具,该工具必须能够彻底,有效地分析代码。 随着不断扩大的开发团队和不断增长的代码库(一个代码库超过1100万行代码),G3需要一种自动化、可扩展的静态分析工具,该工具能够帮助他们尽早发现并修复缺陷。
当G3准备实施新解决方案时,Parasoft静态分析由于能够分析其复杂的C++代码而脱颖而出。部署了Parasoft的静态分析工具后,G3立即注意到其一些软件应用程序的软件稳定性有所提高。例如,在开发阶段的软件崩溃次数大大减少了,这表明Parasoft正在帮助G3消除冗长的调试工作。
面临的挑战
解决方案
案例详细介绍
静态分析是G3软件质量政策的重要组成部分,因为它使公司能够在开发生命周期中尽早发现缺陷,并防止与后期错误检测相关的下游成本。静态分析减轻了测试人员的负担,因为它使开发人员能够在缺陷通过质量检查之前发现并修复缺陷。
更重要的是,高质量的静态分析工具可防止错误进入生产管道。这有助于G3避免发布昂贵的补丁程序,否则可能会损害企业的声誉,并通过额外的验证补丁程序工作来负担开发和测试团队的工作。
G3正在寻找一种新的静态分析解决方案。他们以前的静态分析供应商似乎对将他们的关注范围从整体软件质量缩小到对网络安全的过度关注更感兴趣。G3希望静态分析合作伙伴愿意与他们合作实施增强功能,以帮助G3实现其软件质量目标,而先前的合作伙伴似乎不愿与G3合作改善其工具的质量方面。
在评估了几家商业静态分析供应商之后,G3选择了Parasoft。
G3的高品质标准
G3极高的软件质量标准要求使用静态分析工具,该工具必须能够彻底,有效地分析代码。随着不断扩大的开发团队和不断增长的代码库(一个代码库超过1100万行代码),G3需要一种自动化的,可扩展的静态分析工具,该工具能够帮助他们尽早发现并修复缺陷。G3积极主动地尽早发现尽可能多的错误的方法,使该公司能够快速交付客户期望的高质量软件。
由于G3用C++编写了许多软件,因此寻找一个可以正确分析其代码的静态分析工具就更加艰巨。与其他高级语言相比,C++使开发人员能够获得最高的性能。但是,需要权衡的是,需要更严格的代码分析和对设计的细致关注,以避免与稳定性和安全性相关的错误。
Parasoft的静态分析由于能够分析其复杂的C++代码而脱颖而出。部署了Parasoft的静态分析工具后,G3立即注意到其一些软件应用程序的软件稳定性有所提高。例如,在开发阶段的软件崩溃次数大大减少了,这表明Parasoft正在帮助G3消除冗长的调试工作。因此,G3可以在满足计划的同时继续交付高质量的软件。
在部署Parasoft静态分析工具的前6个月内,G3解决了约50000个违规问题,其中一些是关键错误,例如类型转换问题、未使用的变量和空指针取消引用。
G3的工程副总裁安德鲁·帕克(Andrew Park)理解,与可用性缺陷进入生产环境相关的成本可能会严重损害该公司提供几乎没有错误的软件版本的声誉。
用Park的话来说,“开发、测试和将补丁程序部署到操作系统通常比第一次就花费更多的成本。Parasoft是我们确保第一次就做到这一点的主要合作伙伴之一。我们在持续集成流程中采用了1083个Parasoft规则,在解决所有Parasoft缺陷之前,不允许软件进入生产系统。”
自定义静态分析规则
G3还需要能够自定义静态分析规则以满足其特定需求的能力。G3并没有遵循单一的即用型编码标准,而是使用一系列标准和自定义检查器来实现其编码策略。市场上的许多解决方案狭narrow地专注于代码的特定方面,例如网络安全,但是G3一直在寻找一种能够专注于安全性和整体软件质量的静态分析解决方案。
Parasoft使G3可以轻松地将静态分析规则映射到其内部编码标准,从而获得针对G3代码的非常彻底的静态分析解决方案。
协作技术合作伙伴
最终,G3不仅在寻找供应商,还在寻找可以在可预见的将来与G3合作的合作伙伴。他们以前的供应商不愿与G3合作改善他们的静态分析解决方案。但是G3认识到,与静态分析工具提供者合作进行增强不仅可以帮助G3更有效地分析代码,而且可以确保供应商可以帮助G3长期提供高质量的产品。
他们的必须具备协作文化和致力于帮助G3实现其软件质量目标的承诺,而G3则通过Parasoft找到了这两个特征。正如Park所解释:
“尽管Parasoft显然是一流的,但他们的员工表现出了真正的渴望,可以从我们这里听到他们如何改进产品的渴望。他们的公司文化正是我在合作伙伴中寻找的。”
Parasoft的详尽文档同时提高了G3开发团队的整体敏锐度。他们能够在单个视图中查看静态分析违规的能力,有助于提高即使是经验丰富的员工的编码能力。
Parasoft实施
我们在持续集成流程中采用了1083个Parasoft规则,在解决所有Parasoft缺陷之前,不允许软件影响生产系统。
结果
借助Parasoft,G3能够在开发生命周期的早期发现并修复难以发现的缺陷,将生产中的崩溃次数减少到零,并改善开发团队的整体编码风格。
关于PARASOFT
Parasoft通过自动执行耗时的测试任务并为管理层提供必要的智能分析来专注于重要事项,从而帮助企业完善当今高度连接的应用程序。通过整合静态和运行时分析,Parasoft的技术减少了交付安全、可靠且合规的软件的时间、精力和成本。单元、功能和API测试;和服务虚拟化。借助开发人员测试工具、经理报告/分析和执行人员仪表板,Parasoft为软件组织提供了在嵌入式、企业和IoT市场成功开发和部署应用程序所需的创新工具,同时还支持当今最具战略意义的开发计划——敏捷agile、持续测试、DevOps和安全性。