敏捷(Agile)流程

现在很多公司都喜欢用敏捷的方式去迭代产品, 写个文章给大家做个了解

目录

一、核心思想:一句话定义敏捷

二、为什么需要敏捷?(敏捷要解决什么问题)

三、敏捷的四大核心价值(来自《敏捷宣言》)

四、敏捷的十二原则(《敏捷宣言》的实践指导)

[五、敏捷如何运作?------ 核心实践与流程(Scrum框架为例)](#五、敏捷如何运作?—— 核心实践与流程(Scrum框架为例))

六、如何形象地理解整个流程?

总结:敏捷的精髓


一、核心思想:一句话定义敏捷

​敏捷是一种以人为核心、迭代、循序渐进的开发方法论和思维模式。​

它不追求一开始就做出完美的计划,而是强调​​在短时间内持续交付有价值的软件​​,通过不断的反馈和调整来应对变化。

​一个经典的比喻:​

  • ​传统模式(如瀑布模型)​​:像造一艘巨轮。需要先完成所有精密的设计图纸(需求文档),然后开工建造,最后下水试航。中途修改设计代价巨大。

  • ​敏捷模式​​:像开车去一个遥远的目的地。你有一个大致方向(最终目标),但不必一开始就规划好每一段路。你开一小段(一次迭代),就看一下地图(评审反馈),根据路况(市场变化、客户反馈)随时调整路线,最终到达目的地。


二、为什么需要敏捷?(敏捷要解决什么问题)

传统软件开发(瀑布模型)面临的主要痛点:

  1. ​变化代价大​​:市场、客户需求在项目漫长的开发周期中肯定会变化,但传统模式难以响应。

  2. ​交付周期长​​:客户需要等到项目末期才能看到成品,风险高。

  3. ​沟通成本高​​:厚厚的需求文档容易产生误解,开发团队和业务团队容易对立。

​敏捷的价值主张就是:拥抱变化,快速交付,持续改进。​


三、敏捷的四大核心价值(来自《敏捷宣言》)

这是理解敏捷的基石。所有实践都围绕这些价值观展开。

  1. ​个体与互动​​ 高于 流程与工具

    • ​理解​​:优秀的团队成员和他们之间高效的沟通,比死板地遵循流程或使用昂贵的工具更重要。
  2. ​可工作的软件​​ 高于 详尽的文档

    • ​理解​​:交付能实际运行的软件,比编写一大堆无人阅读的文档更有价值。文档要有,但够用即可。
  3. ​客户合作​​ 高于 合同谈判

    • ​理解​​:与客户建立长期合作的伙伴关系,共同解决问题,而不是仅仅围绕合同条款进行博弈。
  4. ​响应变化​​ 高于 遵循计划

    • ​理解​​:计划很重要,但当变化发生时,能够灵活地调整计划比僵化地执行原计划更有价值。

​注意​ ​:这并不意味着右边的事项没有价值,而是左边的事项​​优先级更高​​。


四、敏捷的十二原则(《敏捷宣言》的实践指导)

这些原则是四大价值观的具体体现,其中几条最能体现其精髓:

  • ​早期持续交付有价值的软件​​使客户满意。(核心目标)

  • ​欢迎不断变化的需求​​,即使开发后期也一样。(拥抱变化)

  • 工作软件是​​进度的首要度量标准​​。(衡量标准)

  • ​业务人员和开发人员必须每天一起工作​​。(紧密合作)

  • ​面对面交谈​​是最有效率的沟通方式。(高效沟通)

  • ​定期反思​​如何能提高成效,并相应调整。(持续改进)


五、敏捷如何运作?------ 核心实践与流程(Scrum框架为例)

Scrum 是最流行的敏捷框架。它通过一系列固定的仪式和角色来实践敏捷。

​1. 三大角色​

  • ​产品负责人(Product Owner, PO)​​:定义需求(写用户故事),排定优先级,代表客户和业务的利益。

  • ​Scrum Master​​:团队的教练和服务式领导,确保团队正确执行Scrum流程,并移除阻碍进度的障碍。

  • ​开发团队​​:跨职能(设计、开发、测试等)的自组织团队,负责在每个迭代中交付"完成"的产品增量。

​2. 三大工件(产出物)​

  • ​产品待办列表(Product Backlog)​ ​:由PO维护的、按优先级排序的​​所有需求清单​​(通常是用户故事)。

  • ​冲刺待办列表(Sprint Backlog)​ ​:当前迭代(Sprint)​​计划要完成​​的需求清单,是从Product Backlog中挑选出来的。

  • ​产品增量(Increment)​ ​:一个Sprint结束后产生的、​​可交付的、可工作的软件成果​​。

​3. 五大仪式(活动)​

这是一个周期性的循环,完美体现了"迭代"和"渐进"的思想:


六、如何形象地理解整个流程?

想象一个团队为一家餐厅开发一款在线点餐APP。

  1. ​产品待办列表(Product Backlog)​ ​:PO列出的所有可能的功能:用户登录浏览菜单添加菜品到购物车在线支付订单历史推荐菜...

  2. ​冲刺规划会(Sprint Planning)​ ​:团队和PO决定,第一个Sprint(两周)先做最核心的浏览菜单添加菜品到购物车

  3. ​每日站会(Daily Stand-up)​​:每天15分钟,团队成员同步:"我昨天完成了购物车UI,今天开始联调。有什么阻塞问题?数据库连接有点慢,需要DBA帮忙看下。"

  4. ​冲刺评审会(Sprint Review)​ ​:两周后,团队向PO和餐厅老板演示一个​​可用的原型​​:可以浏览菜单,把菜加进购物车。老板说:"很棒!但我觉得把招牌菜置顶会更好。"

  5. ​冲刺回顾会(Sprint Retrospective)​​:团队内部开会:"这次我们代码质量不错,但沟通不足,导致后端API晚了一天。下次我们约定好接口提前定义。"

  6. ​下一个Sprint​ ​:PO根据反馈,把置顶招牌菜的需求加入Backlog。团队开始规划下一个Sprint,可能选择做用户登录修改购物车

就这样,每一个Sprint后,APP的功能都增加一点,并且方向不断根据反馈调整,最终做出一款真正符合餐厅老板期望的软件。

总结:敏捷的精髓

  • ​思维上​ ​:从"​​遵循计划​ ​"转变为"​​拥抱变化​​"。

  • ​行动上​ ​:从"​​一次性交付​ ​"转变为"​​持续小步快跑​​"。

  • ​协作上​ ​:从"​​文档与合同​ ​"转变为"​​沟通与信任​​"。

理解敏捷,关键不在于死记硬背那些仪式和术语,而在于深刻理解其​​响应变化、以人为本、持续交付价值​​的核心思想。

相关推荐
dessler3 小时前
Hadoop HDFS-认证(Kerberos) 部署与配置
linux·运维·hdfs
云游3 小时前
IP地址管理:docker方式部署phpIPAMv1.7.3
运维·docker·ip·ipv4·ipv6
小闫BI设源码4 小时前
Docker Swarm主机编排
运维·docker·容器·容器编排·docker compose·依赖管理·多服务启动
Reicher4 小时前
Docker的介绍和使用
运维·docker·容器
zrande4 小时前
基于HTTP构建局域网内YUM网络源:详细操作指南(太细)
运维·构建yum网络源
cetcht88884 小时前
从 “有人值守” 到 “少人运维”:智能巡检机器人重塑配电室管理模式
大数据·运维·人工智能·机器人
Mr.45675 小时前
Linux&Windows环境下Nacos3.1.0详细安装配置指南:从零到生产就绪
linux·运维·服务器
峰顶听歌的鲸鱼5 小时前
30.Linux DHCP 服务器
linux·运维·服务器·笔记·学习方法
退役小学生呀6 小时前
二十一、DevOps:从零建设基于K8s的DevOps平台(二)
运维·docker·云原生·容器·kubernetes·devops