软件交付领域的见解与展望
在软件交付领域,有许多关键概念和方法对项目的成功起着重要作用。让我们深入探讨其中的一些核心内容。
1. DevOps与Agile的关系
DevOps曾经是小团队采用敏捷方法时的实践,那时开发人员组成小的跨职能团队,直接为客户编写代码。客户提出需求,开发人员开发代码并交付给客户。然而,如今大型企业中运营成为独立部门,甚至可能是大集团内的独立公司,但仍需进行软件交付。
Agile通常从开发团队开始,开发团队完成代码编写后,常认为项目结束,但实际上还未将产品交付给客户,运营是后续阶段。Agile往往侧重于开发,Scrum框架虽提及跨职能团队,但企业将开发和运营分隔,形成了需要弥合的差距。
DevOps的本质是开发和运营人员相互沟通、协作。例如,当运营部门报告生产中的bug时,在报告上署名是一个好的开始;开发人员主动与运营人员交流,帮助解决问题,这体现了DevOps的态度和关系构建。
2. Cynefin框架
Cynefin框架是一种“情境感知工具”,用于理解不同情况并找到应对方法。它包含五个有序的领域:
| 领域 | 特点 | 示例 |
| — | — | — |
| 简单(或明显) | 问题易解决,解决方案显而易见且易分类 | 酒吧啤酒用完,更换酒桶 |
| 复杂 | 需要专业知识,有可预测的结果 | 钟表匠修表、汽车修理工修车 |
| 混乱 | 如事故、紧急情况,是短暂的领域,可能带来灾难,但也是紧急机遇的领域 | 房屋着火、人员失血过多 |
| 复杂 | 很多软件开发在此领域,需要允许事物自然发展,结果事后可关联但难以预测 | 丰田
超级会员免费看
订阅专栏 解锁全文
834

被折叠的 条评论
为什么被折叠?



