阿里P9专家右军:大话软件质量稳定性

本文探讨了软件质量稳定性的重要性,通过黑天鹅事件、蝴蝶效应和墨菲定律阐述了软件系统中不可预测的问题。文章指出,业务高速发展、技术债、流程与文档的管理以及工具框架的选择等都是质量稳定性面临的挑战。提出运用敏捷思想、系统化思维、制定技术债偿还计划、建立内建质量和创新解决方案来应对质量熵。强调领导者在质量意识中的关键作用,倡导实践和反思来提升软件质量。
摘要由CSDN通过智能技术生成

P

右军

读完需要

17

分钟

速读仅需 6 分钟

右军(于君泽),蚂蚁金服 P9 技术专家,在 IT 领域从业超过十五年。对 高并发、分布式架构、内建质量、研发管理有一些心得。维护公众号“技术琐话”,合著有《深入分布式缓存》、《架构宝典》、《程序员的三门课》等书籍。本文摘取自右军在中生代技术社区的分享。重新编排整理,以飨读者。

张逸老师曾说,软件系统的稳定性,主要决定于整体的系统架构设计,然而也不可忽略编程的细节,正所谓“千里之堤,溃于蚁穴”,一旦考虑不周,看似无关紧要的代码片段可能会带来整体软件系统的崩溃。

本文将和大家聊一聊软件质量稳定性问题与求解。

目录

大话软件质量稳定性

1. 舞动的黑天鹅

2. 蝴蝶效应

3. 墨菲定律

4. 业务高速发展带来的变化

5. 技术债问题

6. 人、流程、文档的博弈

7. 采用不能cover的工具和框架 

8. 复杂的问题域

9. 质量意识

求解质量熵 

1. 运用敏捷思想

2. 运用系统化的思想

3. 技术债偿还计划

4. 内建质量

5. 不唯新、不唯上、实践是检验真理的标准

6. 复杂的问题域:专项突破

7. Leader的意识 

8. 创新解决方案

大话软件质量稳定性   

1

   

舞动的黑天鹅

纳西姆·尼古拉斯·塔勒布(Nassim Nicholas Taleb)写了两部超级畅销书《随机致富的傻瓜》和《黑天鹅》,并且被誉为[黑天鹅之父]。何为黑天鹅?

在发现澳大利亚之前,17 世纪之前的欧洲人认为天鹅都是白色的。但随着第一只黑天鹅的出现,这个不可动摇的信念崩溃了。黑天鹅的存在寓意着不可预测的重大稀有事件,它在意料之外并且后果非常严重。

一个黑天鹅事件,具有这三个特点:

1. 稀缺、通常史无前例(rarity),
2. 影响很极端(extreme impact),
3. 虽然它具有意外性,但人的本性促使我们在事后为它的发生编造理由,并且或多或少认为它是可解释和可预测的。

在 IT 系统、社会事件尤其是金融市场,[黑天鹅事件]屡见不鲜。列举著名的黑天鹅事件如下:

在 1933~1934 年,经历过大萧条之后诞生的罗斯福新政,宣布私人持有黄金为非法,规定以每盎司 20.67 美元将私人黄金上收,然后由国会立法将黄金定价为每盎司 35 美元,美元很快贬值 69%。

2001 年 9 月 11 日上午,美国人刚准备开始一天的工作,恐怖分子劫持了四架飞机撞向美国纽约世贸中心与华盛顿五角大楼。3000 多人在这次黑天鹅事件中丧生,美国的经济此后一度处于瘫痪状态,巨大的经济损失无法用数字来统计。

2013 年 8 月 16 日 11 点 05 分上证指数出现大幅拉升大盘一分钟内涨超 5%。最高涨幅 5.62%,指数最高报 2198.85 点,盘中逼近 2200 点。11 点 44 分上交所称系统运行正常。下午 2 点,光大证券公告称策略投资部门自营业务在使用其独立的套利系统时出现问题。有媒体将此次事件称为“光大证券乌龙指事件”。

对于乌龙指的事故复盘,触发原因是系统缺陷,策略投资部使用的套利策略系统出现了问题。该策略投资部门系统完全独立于公司其他系统,甚至未置于公司风控系统监控下,因此深层次原因是多级风控体系都未发生作用。

向经验学习的局限性

弗朗西斯·培根就曾经发出这样的警告:当心被我们自己思想的丝线丝丝束缚。无论是“光大证券乌龙指事件,还是泰坦尼克的沉没,如果业态没有类似的案例,其学习的参考是脆弱的,无从学起。即使有业界案例,不同组织,不同公司未必拥有相应的处置经验,那么其实[自己的思想],[自己的经验]也是非常有局限性的。我们把自己知道的东西太当回事了警醒地指出:我们把自己知道的东西太当回事了,而不知道的事比知道的事更有意义。只有反常地思考一切,才有可能发现更多“不知道的事”。

2

   

蝴蝶效应

上个世纪 70 年代,美国一个名叫洛伦兹的气象学家在解释空气系统理论时说,亚马逊雨林一只蝴蝶翅膀偶尔振动,也许两周后就会引起美国得克萨斯州的一场龙卷风。蝴蝶效应的意思是初始条件十分微小的变化经过不断放大,对未来状态也许会造成极其巨大的影响。

我们来读一则吕氏春秋,大抵也有这样的例子。[楚之边邑曰卑梁,其处女与吴之边邑处女桑于境上,戏而伤卑梁之处女。卑梁人操其伤子以让吴人,吴人应之不恭,怒,杀而去之。吴人往报之,尽屠其家。卑梁公怒,曰:“吴人焉敢攻吾邑?”举兵反攻之,老弱尽杀之矣。吴王夷昧闻之,怒,使人举兵侵楚之边邑,克夷而后去之。吴、楚以此大隆。(《吕氏春秋·察微》)]

吕氏春秋里面说个姑娘因游戏起冲突而引发了 2 个国之间的持续战争,比较形象的放大这样一个道理:如不能见微知著,则其后果无法预知。

对 IT 系统而言,对于非预期的错误比如:

1. 非预期 error
2. 非预期的调用抖动
3. 极少数场景下的规则未被正确处理
4. 错误的优惠处理逻辑
5. 未正确设置的营销活动
6. ……

如果不具备快速、智能的感知能力,那么可能影响的用户变多、影响的商户增加、资金损失增加、业务不可用时间变长…..

3

   

墨菲定律

“墨菲定律”是一种心理学效应,是由爱德华·墨菲(Edward A. Murphy)提出的。

主要观点:

1. 任何事都没有表面看起来那么简单;
2. 所有的事都会比你预计的时间长;
3. 会出错的事总会出错;
4. 如果你担心某种情况发生,那么它就更有可能发生。

墨菲定律在生活中屡见不鲜。比如关键时刻掉链子(那些驾考被教练最看好的精英们,往往会多补考 2 次!!!),你出去买爆米花的时候,银幕上偏偏就出现了精彩镜头,所以评论一部电影如何精彩往往会用一个词:无尿点!

对于 IT 系统而言,墨菲定律的例子太多了。

举个例子,小明在做系统迁移,历时半年。小明是一位经验丰富的架构师,他对系统迁移过程中的自校验、核对、切流策略、灰度能力、回滚机制、容错处理都进行了充分的考虑。但是对于

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值