详谈agile开发中scrum、3355、四个仪式、十二原则、TDD、BDD、CI、CD等相关概念

敏捷过程概述
敏捷强调适应而非预测。
敏捷过程以人为中心,而非以过程为中心。

1、敏捷性软件过程类别:
极限编程(eXtreme Programming,XP)、SCRUM、动态系统开发方法(Dynamic System Development Method, DSDM)、水晶系列方法(Crystal Methodologies)、适配性软件开发(Adaptive Software Development ,ASD)、特征驱动开发(Feature Driven Development, FDD)等

1、敏捷过程的价值观
1) 个体和交互胜过过程和工具
人是软件项目获得成功最为重要的因素
合作、沟通能力以及交互能力比单纯的软件编程能力更为重要
合适的工具对于成功来说非常重要
团队的建构要比环境的建构重要得多,不能期望团队自动凝聚在一起。应该让团队基于需要配置环境。
2) 可以工作的软件胜过面面俱到的文档
过多的面面俱到的文档往往比过少的文档更糟
如何控制和把握软件创建与文档编制
软件开发的主要和中心活动是创建可以工作的软件
直到迫切需要并且意义重大时,才进行文档编制 (Martin’s first law of document)
如何衡量?
编写并维护一份系统原理和结构方面的文档
用户手册
新员工培训手册
编制的内部文档应尽量短小并且主题突出
3) 客户合作胜过合同谈判
客户不可能做到一次性地将他们的需求完整清晰地表述在合同中
为开发团队和客户的协同工作方式提供指导的合同才是最好的合同
4)响应变化胜过遵循计划
变化是软件开发中存在的现实
计划必须有足够的灵活性与可塑性
没有计划的项目肯定是要失败的
较好的做计划的策略是:
为下两周做详细计划,为下三个月做粗略计划,再以后就做极为粗略的计划。即仅仅对于迫切的任务才花时间进行详细的计划
但是在某个阶段内仍然是相对固定的

1、敏捷过程的基本原则

最优先要做的是通过尽早地、持续地交付有价值的软件来使客户满意
即使到了开发的后期也欢迎改变需求,敏捷过程利用变化来为客户创造竞争优势
经常性地交付可以工作的软件,交付的间隔可以从几个星期到几个月,交付的时间间隔越短越好(关注目标)
在整个项目开发期间,商务人员和开发人员必须天天都工作在一起
围绕被激励起来的个体来构建项目,给他们提供所需的环境和支持,并且信任他们能够完成工作
在团队内部,最具有效果并富有效率的传递信息的方法,就是面对面的交谈
工作的软件是首要的进度度量标准
敏捷过程提倡可持续的开发速度,负责人、开发者和用户应该能够保持一个长期的、恒定的开发速度
不断地关注优秀设计的技能和好的设计会增强敏捷能力
简单——使未完成的工作最大化的艺术——是最根本的
最好的架构、需求和设计出自于自组织的团队
每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整
敏捷开发(Agile Development)是一种面临迅速变化的需求快速开发软件的能力。
人与人之间的交互是复杂的,并且其效果从来都难以预料,但却是工作中最为重要的方面。

Scrum的详解【3355】
1、3角色

Product Owner:决定每个冲刺的任务,决定选择做什么和为什么做这些。

Scrum Master:Scrum团队教练和带头人,扫除实施障碍。

Team:是任务执行团队,可以是研发团队,也可以是跨职能团队,能够切实提供一个可用产品的团队。

2、3工件

Product Backlog:产品待办事项集合,我理解也是 用户故事,相当于当前版本所要做的所有需求。

Sprint Backlog:迭代功能开发列表,理解为一个冲刺目标阶段内的需求列表。例举如,当前版本总共要完成40需求,是我们的Product Backlog;我们把当前版本拆分4个冲刺阶段,即是4个Sprint。第一个Sprint需要完成10个需求,则这10个需求为当前Sprint的Sprint Backlog。

Burndown chart:燃尽图,确定需求实现阶段后,随时间往后推进,时间剩余消耗,同时任务列表也随工作的推进而消耗。即是,迭代显示剩余工作时间和任务的完成情况。

3、5价值观

Focus 专注:将故事拆解为冲刺阶段,目标细化,同时也是集中绝对的团队能力,解决既定目标,体现当前的专注,也排除其他插入时间的消耗。

Courage 勇气:在整个敏捷过程中,需要效率的提升,同时,面临的技术、环境、团队等一系列的问题并不会变少,就需要有勇气,有决断的阔步向前,用最优势的精力、资源解决当前最迫切的问题。

Openness 公开:团队内信息的完全公开,让问题无所隐藏,同时也让优秀和战绩能够很好地展示及引导,公开,从而大家平等,从而大家尊重。

Respect 尊重:在敏捷过程中,因为公开我们搭建了尊重的基础;同时因为效率的要求和冲刺任务的明确性,我们做自己最擅长的事情,从而让整体效率最大化。尊重他人,信任他人。

Commitment 承诺:构筑团队内部共同解决问题,最高效率突击任务环境,是因为我们信守承诺,敢于给出承诺;同时,也因为我们为别人为团队的承诺,我们必须是最好的处理我们的任务,对于我们承担的责任敢于承诺,也直面承诺的责任。

4、5工作

sprint planning meeting:冲刺前计划会议,决定并生成sprint Backlog。—类似需求评审

sprint:冲刺,由冲刺会议决定了我们的目标,从而确定了冲刺的阶段,人员及任务安排。—类似于计划

daily standupdo meeting:每日站会,主要用于跟进进度,确定当前任务的情形,同时沟通是否有异常情况。要将异常在开始阶段进行良好控制。

sprint review:冲刺回顾。一个冲刺完成,对冲刺进行回顾,整理有益处,执行良好的部分;规划检查不好的地方,可以做的更好的方面。优化中不断前行。

retrospective meeting:回顾会议。完成当前版本,需要对整体进行回顾,对经历经验进行整理归档,形成有效的成长型文档,便于团队更好的成长。

深深触动,本科的专业总结了一句话:先控制,后碎部,步步检核。学科本身的内核或许是有相似之处的。

在自我的理解中,Scrum中,Product Owner 和 Scrum Master是两个核心关键人物,ProductOwner 决定产品的需求,算是高级的产品经理(PM),Scrum Master是教练ÿ

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值