2017/07/31 11:35 CSDN
“小型团队开发的软件结构性质量更高,而20人或以上规模的团队开发出的软件则不然。”- 全球软件质量分析与检测领域的领军企业CAST在其最新发布的《2017年应用软件健康度研究报告(2017 CRASH Report)》中如是说。
《2017年应用软件健康度研究报告》是CAST下属的CAST研究实验室(CAST Research Labs)就全球商业应用软件的结构性质量以及全球趋势发布的第四份年度报告。CAST Research Labs的负责人、CAST高级副总裁与首席科学家Bill Curtis博士表示:“这份报告是根据CAST对多层级、多种编程语言的商业软件分析得出的匿名数据,围绕软件的牢固性(Robustness)、安全性(Security)、性能效率(Performance Efficiency)、可变更性(Changeability)与可移植性(Transferability)这五个维度对软件质量进行的全面研究。”
CAST的研究人员对8个国家,329家商业机构,1850个软件,总计10.3亿行的海量代码进行分析后发现,使用Java EE编写的软件拥有最高的质量,而使用COBOL编写的软件则质量最差。由于COBOL在金融与保险行业的使用最为普遍,这些行业的应用软件健康度也是最低的。“当看到这个结果后,我立刻把存款从银行取了出来,放在了我的床底下,因为那里更安全。”Bill Curtis博士笑称。
另一个衡量软件结构性质量的关键因素是企业的CMMI等级,CMMI Level 1的企业在软件的结构性质量上表现最差。报告指出,CMMI Level 1的软件开发者往往被不切实际的交付日程表追赶,导致他们没有时间去跟踪并修复软件的Bug,使得软件质量大打折扣。研究同时发现,企业的CMMI等级越高,他们的软件质量也会相应得到提升。
借助敏捷开发(Agile)搭建软件架构也被证实是保证较高的软件结构性质量的一种手段。Bill Curtis博士建议:“软件的设计与架构应该更多采取Sprint Zero的方式,即在开发前期花更多的时间了解软件的设计与架构,从而保证后期不走弯路。”
软件质量检测工具的自动化程度与团队间的沟通也很大程度上决定了软件的结构性质量好坏。关于这一方面,Bill Curtis博士说:“目前的一些商业应用软件,其复杂程度已经超越了任何团队能够全部加以理解的范畴。比方说,一款软件可能由5到6种不同语言编写,拥有多个数据库与CRM系统,而其中的互相联系错综复杂。如果仅凭直觉,团队往往会妄下错误的结论。”他同时认为,使用先进的工具进行回归测试、静态分析与动态模拟是十分有必要的:“与以往不同,人们只有通过相应的工具才能驾驭日益复杂的信息系统。”
软件开发者还应该关注那些难以对付的代码,以及造成这些问题代码的原因。这样一来,软件维护自然就不成问题,对软件的改动也不会对软件产生灾难性的影响。“一些问题代码也许平时只是躺在那里,开发者对于它们也无能为力。但也许一次软件更新就能触发这些问题代码。”所以说,导致问题的通常不是软件更新本身,而是更新所带来的‘副作用’。
IT成本同样也是一个不小的问题,大型企业由于欠佳的软件质量,甚至会花费上亿的IT成本,而这些成本往往是不必要的。面对如此庞大的IT成本,头疼的不止是企业的CIO,而更多是CEO了。
Bill Curtis博士在全球领先的软件质量分析与检测工具软件公司CAST担任高级副总裁、首席科学家以及CAST研究实验室的负责人。他同时也是CMM (能力成熟度模型) 的创立者,曾先后在美国卡内基梅隆大学软件工程研究所(SEI)与美国IT软件质量联盟(CISQ)担任重要职位。在Bill Curtis博士的带领下,CISQ开展了软件计量与软件代码结构性质量特征的国际标准制定。
了解更多关于CAST或阅读《2017年应用软件健康度研究报告(2017 CRASH Report)》全文,请访问:www.castsoftware.com
【免责声明:CSDN本栏目发布信息,目的在于传播更多信息,丰富网络文化,稿件仅代表作者个人观点,与CSDN无关。其原创性以及中文陈述文字和文字内容未经本网证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本网不做任何保证或者承诺,请读者仅作参考,并请自行核实相关内容。凡注明为其他媒体来源的信息,均为转载自其他媒体,转载并不代表本网赞同其观点,也不代表本网对其真实性负责。您若对该稿件由任何怀疑或质疑,请即与CSDN联系,我们将迅速给您回应并做处理。】
原文链接:http://news.topkoubei.com/news/r/id/124631.html
榜单收录、高管收录、融资收录、活动收录可发送邮件至news#citmt.cn(把#换成@)。