敏捷开发解读

来源:互联网 发布:淘宝商品定价技巧 编辑:程序博客网 时间:2024/05/22 14:13

      敏捷开发可以分为三个层次,理念,实践,应用。

      软件的价值,在于实现客户的需求,和客户合作可以更好的澄清需求,所以敏捷强调和客户合作,过度的和过早的设计很多情况下偏离了实际需求,所以敏捷更强调代码的交付,软件开发有很高的沟通成本,人们讨论分析的时间和编写代码时间大概是七比三,而人与人面对面的沟通是最有效的,所以敏捷强调沟通, 敏捷本身是一种轻量级的开发模式,注重逐步的演进和快速的反馈,根据反馈对过程和及其产生的结果进行修正。

      敏捷的核心理念为关注价值,激励团队,适应变化。通过和客户合作来明确需求,消除开发过程中的浪费,在开发过程中注重质量,开发进度紧张情况下主张通过需求精简来解决问题。团队管理上主张放松控制,任务非指派而由团队成员主动认领和完成。不提倡制定大而全的计划,主张细粒度制定近期计划,粗粒度制定远期计划,根据分层次的反馈对计划和经验进行调整和适应。

      敏捷实践上以迭代开发为核心,包括团队,交付件,技术实践,管理实践四大元素。 敏捷团队组成有PO(Product owner),scrum master, Team.PO对整个产品的投资价值负责,关注产品回报,Scrum master主要对团队的敏捷实践进行引导,推动问题解决,Team负责进行具体实现。敏捷交付件有产品Backlog,迭代Backlog,完成标准。产品backlog为需求清单,有PO进行维护。迭代backlog为任务清单,在迭代会议上根据产品backlog 输出,包括任务内容,责任人,任务状态。敏捷的实践可以分为技术实践和管理实践。技术实践有持续集成,TDD,重构,anatomy 系统解剖,结对编程等,管理实践有迭代会议,站立会议,回顾会议,状态墙,迭代验收等。迭代开发是在前期坚实的基础上小步快跑。前期的基础要坚实,需要CI,TDD等架构上的保证。敏捷虽然倡导简单设计,但也关注构架,并提倡通过不断的重构来优化构架。敏捷的管理实践的目的主要是团队激励和反馈,通过反馈来调整计划和经验。

      敏捷是在提倡一种更好的软件开发方式,其更符合规律,顺应自然。

    

 

    

 

原创粉丝点击