敏捷开发—初识庐山真面目

   为期两天的学术交流会议,身体上感觉很累,但是内心却是满满的喜悦。鉴于自己目前的水平,虽然说学术交流会议上能吸收到的并不多,但是起码解决了不怕不知道,就怕不知道的这么一个问题。 


   还记得前段时间在做教务系统的时候,总是开各种各样的会议。有估时会议、每日立会、测试会议等等。当时觉的挺纳闷的,感觉这种方式跟以前很不一样。而且听前辈们说过“敏捷开发”,但是并不了解。在今天会议上,前辈们再一次的给我们揭开了它的神秘面纱。再结合前段时间教务的一小点经历,对敏捷开发有了一个小小的认识。


   敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成许多个子项目,各个子项目的成果经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可用状态。


开发宣言

  •  个体交互胜过过程和工具
  • 可以工作的软件胜过面面俱到的文档
  • 客户合作胜过合同谈判
  • 响应变化胜过遵循变化

开发流程

   建立产品功能列表,罗列Story,在迭代计划会上大家根据罗列的story进行优先级评价,然后进行迭代会议,每个迭代会议启动时,所有的团队成员畅所欲言,明确迭代的开发任务,并对任务评估工时。任务的迭代时间一般为一到六周。再每个迭代中,对产品功能进行细化一个个的story。以便准确的估算任务完成时间。每日立会,通常在同一个地方,同一个时间点,所有的团队成员,聚在一起开一个高效率的会议。会议通常控制在15分钟之内。主要是成员汇报自己的开发进度,以及下一步要改进什么,遇到什么问题,但不浪费所有人的时间立刻解决问题,而是会后个别沟通解决。每次做完任务后,都要叫Scrum Master来检查一遍。而且在迭代中期和末期都有集体审查,在很大程度中减少了系统bug。 总结和反思。每个迭代结束以后,项目组成员召开总结会议,总结好的实践和教训,并落实到后续的开发中。


敏捷开发困惑

   1.可工作的软件胜于繁杂的文档

   传统的开发方法,是以文档驱动进行开发。而敏捷开发是面向人而开发。但这并不意味着不写文档。我们这里忽略了”繁杂的“,这也就是我们一个判断的标准。可是什么样的文档是不繁杂的呢?这又是需要我们去思考的。这个标准该怎么衡量,我觉得还是主要是看客户和公司的需要。首先,你开发的软件毕竟基于客户的需求的,但是如果你开发出来的软件,连你最起码的客户都不会使,那这个软件有存在的必要吗?所以用户手册这时候就是必要的文档。 其次,为了公司的可持续发展,一些变更文档还是很有必要的。   

   

   2.代码就是文档

   必要的文档说明,可以增加你代码的可读性。

   引用别人的一段话:编写文档也是我们更好地学习和享受生活的需要。“勤劳的中国人”生怕在工作中空下来,喜欢乐此不疲地重复解答别人所问和身体力行地传授自己所能。难道不能写成文档与人分享,然后空出时间来学习和享受生活?


   3.结对编程

   结对编程是指两个开发人员结对编码。结对编程的好处是:经过两个人讨论后编写的代码比一个人独立完成会更加的完善,一些大的方向不至于出现偏差,一些细节也可以被充分考虑到。但是结对的方式,最好是每个人都有自己的电脑,在必要时候进行结对。 

   总结:敏捷开发是以快速变化的思维来进行开发,其最终目标是让客户满意,所以能主动接受需求变更,则就使设计出来的软件有灵活性,可扩展性。此次在学术交流会议上,针对敏捷开发还进行了一次非常有意义的讨论,将在下一篇博客中进行介绍。     

      

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值