乔新亮的 CTO 成长复盘
乔新亮
彩食鲜副总裁兼 CTO、前苏宁科技集团副总裁、TGO 鲲鹏会荣誉导师
24236 人已学习
新⼈⾸单¥59
登录后,你可以任选2讲全文学习
课程目录
已完结/共 29 讲
开篇词 (1讲)
结束语 (1讲)
编辑手记 (1讲)
乔新亮的 CTO 成长复盘
15
15
1.0x
00:00/00:00
登录|注册

25 | 异常设计,让错误无处遁形

让一切错误无所遁形
企业的核心竞争力是持续进化的能力
异常管理数据化、产品化、系统化
异常管理情况纳入考核体系
管理层关注异常处理情况
异常的治理流程
异常中心的建设
异常注册内容
异常设计包含异常注册、事件触发、协作流程和统计
与终端用户相关的异常要以最高优先级处理
每个异常都要有具体的负责人
异常处理水平影响用户体验
异常一定要管理
异常一定要消灭
技术层面的异常
业务和产品层面的异常
产品经理对问题感知更敏锐
用户体验受到恶性影响
电商界的例子
让产品无法履行用户契约的问题
使 IT 团队面向产品、用户
降低异常频次和数量
提升 IT 团队定位问题能力
异常管理独立发挥作用
结语
对于异常设计的认知、方案和治理
那些被忽视掉的异常
异常的定义
为什么要单独聊异常设计
异常设计

该思维导图由 AI 生成,仅供参考

你好,我是乔新亮。
今天,我想和你聊聊有关异常设计的话题。
如果你认真听了前面的内容,那么对你来说,异常设计应该不是一个新鲜概念了。在高可用设计、监控体系建设部分,我们都聊到了对异常的管理。
那么,为什么今天我们又要单独聊异常设计呢?因为异常管理虽然属于监控体系的一部分,但并不完全依赖于监控体系或高可用设计。在企业的监控体系建设完成前,异常设计一般就可以独立发挥作用,达到快速见效的目的。
异常管理可以提升 IT 团队快速定位问题的能力、降低生产系统异常出现的频次和数量,更重要的是,它是让 IT 团队从面向技术,转为面向产品、面向用户的关键步骤,所以我们这里独立出来讲。
那么,在开始之前,我们有必要明确一下,究竟何为异常?
你可能会想,导致系统不能正常工作的问题就是异常呗。
说得对,但不全对。有些异常,可能当下未必会对生产环境产生影响,但不代表未来也不会;有些异常,可能在流量压力小时未必会出问题,但不代表流量压力大时也不会。
就像在平时,每位同学都会打印 Log,有 Warning,有 Error。大部分同学关注 Error,而不关注 Warning ,甚至有时 Error 也是选择性忽略的。反正打印这些,也不一定会导致线上服务受影响,看看就得了。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

异常设计是软件开发过程中的重要环节,旨在提升系统稳定性和用户体验。本文通过案例和认知、方案、治理三部分,深入探讨了异常设计的重要性和实施方法。作者强调异常管理对问题定位、用户体验和IT团队转变的重要性,提出了异常注册、事件触发、协作流程和统计等管理要点。文章还强调了异常管理的投入产出比,以及在企业层面实现用户体验驱动的重要性。最后,作者分享了在苏宁和彩食鲜的实践经验,强调了异常管理的重要性和实施方法。总的来说,异常设计对于企业的产品体验和研发问题的暴露至关重要,需要坚持长期主义和持续进化的能力。通过持续的治理和数据分析,让企业不断进化,最终建立竞争优势。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《乔新亮的 CTO 成长复盘》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(17)

  • 最新
  • 精选
  • 狐狸糊涂
    感谢乔老师,每到周一三五就迫不及待的查看您更新的课程。有时可能在上班路上,有时可能是上班休息的时候。 乔老师,可以分享下您是怎么做知识储备的?或者可以分享您觉得不错的书籍吗?

    作者回复: 你好,狐狸糊涂 看书,交流,分享,实践。 早年多是看书,实践;现在交流的比重加大了些,越是到后来,越觉得认知的提升最重要,认知对了,其他其实都只是时间问题。

    2020-12-21
    3
    12
  • Weehua
    异常设计,这个概念还真是第一次听说,挺新鲜的。文中学习到了,如果能这样对待异常,系统化的管理异常,治理异常,我相信产品的质量和用户体验一定非常棒!

    作者回复: 你好,Weehua 是的,企业如果一直坚持做异常治理,本身是持续完善、持续改进在产品层面的落实,一定会取得很好的效果,用户体验一定不会差。

    2020-12-21
    2
    8
  • Edison Zhou
    这节课的内容让我联想到了我们团队的迭代回顾会议(Restrospective),我们在这个会议上都会一起回忆这个迭代做的好 和 做的不好 的场景和事件,对于做的好的就继续保持,对于做的不好的(往往是多个点)就投票从中选择一个点,然后通过5 Why等方法对其进行分析根本原因,然后针对根本原因探讨一个解决方案,然后将解决方案作为一个规则 或 嵌入研发流程 或 嵌入CI/CD流程等,确保指定负责人或所有人必须按流程执行,以保证后续迭代不再犯同样的错误,让团队持续改进。现在看来,这些做的不好的,影响团队协作效率的点,其实就算是团队层面的一个异常,它导致了我们团队可能有潜在无法满足用户契约的可能性,于是我们通过回顾会议对其进行了异常的统计、分析 和 处理(按优先级,正如不是所有异常都要被处理),对于团队一致认为需要在后续迭代处理的,就严格定义规则嵌入研发流程保证执行。团队的异常不断减少(但始终无法完全消灭完),能够持续的进化,就是对用户契约精神的遵循,对企业长期主义的践行。

    作者回复: 你好, Edison Zhou 感谢分享,总结的特别好。

    2021-03-18
    2
    3
  • yxw
    乔老师说的太对了,契约精神是做好工作的原动力,所有工作都要以终为始,通过闭环体系化管理,有道也有术,受教了!

    作者回复: 你好,yxw 谢谢, 加油

    2021-03-08
    2
  • glutton
    乔老师好,认知又得到了提升 "异常,是导致不能履行契约的所有问题" 请教一个工程层面的问题,写代码时,如果当前已经捕获异常,有两种处理方式 1.在下层处理一下,包装成返回码; 2.直接抛出异常,由出口统一处理 您偏向那种方式?

    作者回复: 你好,glutton 系统内,我选择2; 服务调用,我选择1

    2020-12-21
    2
  • 乔总再三强调“契约精神”,我的理解就是做一个靠谱的工程师。

    作者回复: 你好,海 做人,做企业都要有契约精神

    2020-12-21
    1
  • leslie
    风险管理和应急处理、事后复盘;说起来容易,可是真正做到确实不易。

    作者回复: 你好,leslie 坚持长期主义,坚持做正确的事情,非常重要

    2021-03-07
  • adang
    学完这节课内容我的思考是,这节课讲到的异常设计和前面几讲里的内容就像系统里的基础组件,可以类比为房子的地基,地基打的越牢固上面的房子越稳固。可正是因为他们是地基在底层,平时不显山不露水只有当发生问题引发灾难时才被人想起,所以很多人对他们没有意识,或者将他们一直放在重要不紧急的任务列表里,一直处于等待状态,这样企业就缺少了契约精神和持续进化能力。 有了这样的意识后要把他们坚持落地困难还是挺大的,昨天在部门会议上提到团队目前监控设计还有很多事情要做,生产环境出现问题后直接在生产环境调试解决 Bug,即便回滚也不能完全回滚到未变化前版本,团队 Leader 对此并不在意,并指出"规定不能在生产环境调试 Bug" 太叫针儿。改变不了别人,只能改变自己,努力学习提升认知,即使现在不能实践至少知道什么是对的。

    作者回复: 你好,adang 加油

    2021-02-24
  • 小乙哥
    异常体系化的管理,确实还是第一次听说,很有启发意义!这里的异常,更多还是业务层面的异常,具有业务含义的。体系化解决异常,让我想到了项目管理的办法。异常要拆解到位(异常注册),责任到人,长期持续推进,这其实就是项目管理的思路。

    作者回复: 你好,小乙哥 异常管理在企业的技术管理中非常重要

    2021-02-20
  • Geek_8633d9
    老师,你好!像我们中小公司,之前自己开发过一个系统,推广不太顺利。后面想,是不是利用sentry来管理日志?异常,更多的认识是日志的级别和处理。总而言之,我们不能自己去开发一个系统,也一下子找不到开源系统。

    作者回复: 你好,Geek_8633d9 异常管理最重要的是生产的所有问题都应该立刻知晓。 通过研发管理要避免问题到生产,但万一到生产,也能第一时间知道。 其实异常管理系统的设计很容易,一是要设计一个异常中心的系统,第二是要治理业务系统,遵循异常设计规范。

    2021-01-25
收起评论
显示
设置
留言
17
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部