敏捷和敏捷相关的实践

一、Agile:敏捷开发
敏捷,把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。敏捷是应对快速变化的需求的一种软件开发能力,以用户的需求进化为核心,关注互动沟通,强调最简方案,能尽量早的将尽量小的可用的功能交付使用,并在整个项目周期中持续改善和增强。
敏捷其实不是一个技术,一个固化的模式,而是一种思想。敏捷软件开发关注保持简洁的代码,经常性测试以及及时地交付应用的功能模块。敏捷的创建是为了替代文档驱动的繁重的软件开发流程。
1.敏捷遵循的四种核心价值
1)个体和交互胜于流程和工具
2)工作软件胜于理解文档
3)客户协作胜于合同协商
4)响应变化 胜过 遵循计划
2.敏捷遵循的十二大原则
 1)通过早期和连续型的高价值工作交付满足“客户”。
 2)大工作分成可以迅速完成的较小组成部门。
 3)识别最好的工作是从自我组织的团队中出现的,
 4)为积极员工提供他们需要的环境和支持,并相信他们可以完成工作。
 5)创建可以改善可持续工作的流程。
 6)维持完整工作的不变的步调。
 7)欢迎改变的需求,即时是在项目后期。
 8)在项目期间每天与项目团队和业务所有者开会。
 9)在定期修正期,让团队反映如何能高效,然后进行相应地行为调整。
 10)通过完车的工作量计量工作进度。
 11)不断地追求完善。
 12)利用调整获得竞争优势。
3.对比传统开发模式:
传统开发模式以文档为驱动,而敏捷开发提倡少写文档
敏捷模式采取迭代式开发,传统模式采用瀑布式开发
敏捷开发更适应变化
4.敏捷开发方法要避免的过程设计的几个常见错误
1)对所有的项目使用同一种过程
2)没有弹性
3)过于沉重
4)增加不必要的“必须完成”(“should do” is really should?)
5)没有经过实践检验
5.敏捷开发方法过程设计的几个原理:
1)交互的面对面的交流是代价最小,最迅速的交换信息的方法
2)超过实际需要的过程是浪费的
3)大的团队需要重量级方法
4)处理重大问题的项目需要重量级方法强调
5)增加反馈和交流可以减少中间产品和文档的需求
6) 轻量级方法更强调理解(understanding),自律(discipline)和技能(skill),重量级方法更强调文档(documentation),过程(process)和正式(formality)。
注释:understanding指整个团队关于项目的全部知识,包括讨论的过程,documentation只能记录其中的一部分
discipline是指个人主动的完成工作,process指个人根据指令完成工作
skill指具有良好技能的人可以省略中间的产品,formality指必须按照规定步骤完成工作
7)确定开发中间的瓶径,提高它的效率
对于瓶径处的工作应该尽量加快,减少重复,(使用更熟练的人,使用更多的人,使用更好的工具,使瓶径处的工作的深入尽量稳定)对于非瓶径处的工作可以多一些重复,在输入还不确定的情况下也可以尽早开始。
二、Scrum
前面说了敏捷它是一种指导思想或开发方式,但是它没有明确告诉我们到底采用什么样的流程进行开发,而Scrum和XP就是敏捷开发的具体方式了,Scrum的英文意思是橄榄球运动的一个专业术语,表示“争球”的动作;运用该流程,你就能看到你团队高效的工作。敏捷开发(scrum)是一种软件开发的流程,强调快速反应、快速迭代、价值驱动。敏捷开发(scrum)适用于竞争激烈,快速变化的市场。 敏捷的客户协作观念,快速迭代能帮助团队以最小成本,最快速度满足客户真正的需求。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值