强大的软件结构性质量是数字时代的基石

CIOAge
2016年, 孟加拉国银行SWIFT交易系统遭到入侵事件,就充分说明了IT系统安全问题的严重性与紧迫性。与此同时,相比老牌企业过时并且陈旧的IT系统以及冗余的前端,许多创业公司由于没有技术负债, 反而能够更胜一筹,在商业上取得优势。

虽然我们已经全面步入数字时代,但近年来频发的重大IT故障却时刻告诫着我们:世界各地的IT系统都存在着系统性的弱点。

在这一方面,商业银行首当其冲地面对着客户与消费者的诟病。许多银行采用了新的IT技术支持其电子银行与移动支付方面的业务,然而这些服务经常由于软件质量问题而被迫中断。不仅如此,技术的更新迭代也使得安全隐患日趋复杂。掌握技术的网络犯罪分子随时可以攻击代码中的薄弱环节。 对于这部分企业来说,当务之急是确保软件的安全可靠 。

2016年, 孟加拉国银行SWIFT交易系统遭到入侵事件,就充分说明了IT系统安全问题的严重性与紧迫性。与此同时,相比老牌企业过时并且陈旧的IT系统以及冗余的前端,许多创业公司由于没有技术负债, 反而能够更胜一筹,在商业上取得优势。

另外,传统的软件测试方法往往无法发现重大的软件缺陷,于是风险在无形中被进一步放大了。也正因为如此, 企业机构需要一套深度分析解决方案,以检测其系统中最危险的结构性缺陷。数据显示, 50%的安全问题出现在开发过程中的软件设计和软件架构阶段,因此进行深度分析对于保证软件的预期表现至关重要。

软件是数字世界的基石

当消费者对软件与用户体验的要求越来越高时,系统层层叠加的现象也就自然日益突出,而各类软件正是信息系统这座“大厦”的基石。

银行业,零售业,制造业和医疗行业的领军企业难以抵挡数字化潮流的影响,纷纷进行转型成为技术型公司。 而对于尚未完全实现数字化转型的老牌企业来说,这些都是新的挑战。无论身处哪个行业,企业机构要么拥抱技术,要么只能被时代淘汰。

数字化同样加剧了系统性故障的风险。目前仍然使用陈旧IT系统的企业正试图迁移到更加敏捷的新系统中。当所有产业都在数字化时,他们的确面临着一个“生死抉择”。

普遍而频繁的IT故障

在去年,达美航空和BT的大规模服务器停运事件表明IT故障不容忽视。而早在2013年,作为金融服务的巨头之一,中国工商银行就曾因核心业务软件出现故障,导致全国多地业务受到严重影响。IT Process Institute的数字显示,解决一次类似的系统故障平均需要200分钟,而一般大型企业的IT系统时常会受到相关软件质量问题的困扰,严重时甚至宕机。在事关客户体验、品牌声誉以及有可能面临的经济处罚时,一些企业对软件质量竟如此不重视,这着实令人惊讶。

如果老牌企业想要适应数字时代,就必须要面对以下几个主要挑战:

代码的复杂性

人们往往会把简单的事情复杂化,在编写软件代码时也是一样。而代码越长,出现问题的可能性就越大。当故障发生时,复杂的代码需要至少花费工作人员两倍的时间才能确定问题的根源。

软件外包

许多企业会将软件编写和维护工作进行外包。虽然外包有诸多好处,但在外包的同时,企业对软件的把控权也就移交给了外包商。不同企业对软件质量把控水平各有不一,而每个人对高质量代码的理解也不尽相同。 因此,只有对外包软件进行日常的质量检测,才能时刻做到“心中有杆秤”。

陈旧的技术

老牌企业在试图满足当代消费者的需求时,往往会在陈旧的IT系统上构建新的软件。 银行与保险公司在这方面尤其突出,有些甚至在30多年前的IT系统上运行新的应用程序。另外, 许多程序员目前仍然使用“老方法”进行软件开发 , 至多会参考COBOL以及部分 DevOps与Agile的方法论。 显然,这是远远不足的。

缺乏商业协同

随着老牌商业机构披上技术这件新“外衣”,它们需要将自身的软件环境上升到战略性高度。企业的IT部门和业务团队需要更密切地合作,充分利用目前可用的技术来解决问题。面对成本压力,企业的软件开发通常强调功能,而不强调性能。即便如此,软件在设计之初就应当考量长期的业务需求。那么,降低IT成本和保持用户满意度之间是否能够兼顾呢?

三管齐下,解决软件质量问题

无论是继续使用陈旧的技术还是从头开始编写新的应用程序,都应采用三管齐下的策略,开发安全并可靠的软件。

开发者和外包商必须编写清晰、简洁且没有漏洞的代码。在这一方面,市场上已经有许多高效并且价格低廉的解决方案,可以极大地方便团队沟通、项目管理以及开发工具管理等工作。在编写代码时,还需要尽可能地进行常规与实时的质量检测。

一旦将软件的所有部件集成之后(包括用户界面,逻辑,数据管理等),就必须执行全面的质量分析,以确保所有部件的稳固与相互协作。90%严重的软件故障出在架构问题,如果对细节处理不妥当,则会因小失大。

成功的数字化转型需要企业前台和后台业务部门的高度协同。后台业务部门需要具有良好的组织架构,前台业务部门则需要支持面向客户的应用程序(如面向移动设备的前端应用)。同时,这些软件应该安全灵活、易于更改。另外,必须对这些因素定期进行监测,以便改进。

数字化转型中的挑战仍会长期存在。而企业更应该抓住这个机会,通过解决软件结构性质量问题,构建更可靠并且安全的技术,提供更好的用户体验,从而确保在市场竞争中立于不败之地 。

 

[[196906]]

本文作者是软件质量分析与检测领域领军企业CAST的创始人兼CEO – Vincent Delaroche。了解更多关于CAST, 请访问:www.castsoftware.com

 

责任编辑:吴金泽 来源: CAST
相关推荐

2020-07-22 13:29:29

区块链数字经济数字社会

2018-09-01 05:01:54

2020-08-10 18:34:54

ISC

2021-03-10 14:06:32

区块链互联网技术

2015-03-26 10:05:59

UI设计师UI设计

2013-08-05 09:45:16

云计算桌面虚拟化

2020-11-09 11:19:46

物联网安全传感器

2017-09-06 15:16:54

微服务数字化云迁移

2017-05-31 14:14:11

互联网

2023-12-30 14:05:32

Golangstruct数据结构

2023-07-11 09:55:01

碳管理软件碳足迹

2020-03-18 16:15:21

亿级搜索数据

2010-09-17 16:52:23

2016-12-14 13:23:02

2022-04-20 15:55:08

华为数据存储

2021-09-10 10:21:03

开源项目LinuxNginx

51CTO技术栈公众号