敏捷软件开发——敏捷实践

最近在学习敏捷软件开发,看的书是"Agile Principles, Patterns, and Practices in C#",这里摘录一部分书中的精华与大家分享。


Manifesto for Agile Software Development

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Individuals and interactions over process and tools.

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.


敏捷软件开发宣言

我们正在通过亲身实践以及帮助他人实践,揭示更好的软件开发方法。通过这项工作,我们认为:

人和交互 重于过程和工具

可以工作的软件 重于面面俱到的文档

客户合作 重于合同谈判

随时应对变化 重于遵循计划

虽然右项也有其价值,但我们认为左项更加重要。


体会:敏捷软件开发重在强调人与人的交互,通过可以工作的软件来与客户合作交流,以便随时应对变化。体现的是一种沟通、反馈、尽早交付、持续迭代以及拥抱变化的思想。


Martin's First Law of Documentation

Produce no document unless its need is immediate and significant.

体会:除非文档的需求是迫切及重要的否则就不要写文档,取而代之的应该是可以工作的代码。因为代码是明确的,它反映了事实,不会有任何歧义,而且永远是最新。


Principles

  1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
  2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
  3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter time scale.
  4. Business people and developers must work together daily throughout the project. 
  5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
  6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
  7. Working software is the primary measure of progress.
  8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
  9. Continuous attention to technical excellence and good design enhances agility.
  10. Simplicity -- the art of maximizing the amount of work not done -- is essential.
  11. The best architectures, requirements and designs emerge from self-organizing teams.
  12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

敏捷宣言遵循的原则

  1. 我们最优先要做的是通过尽早地、持续地交付有价值的软件来满足客户需要。
  2. 我们欢迎需求的变化,即使到了开发后期。敏捷过程能够驾驭变化,为客户创造竞争优势。
  3. 经常交付可以工作的软件,从几个星期到几个月,时间间隔越短越好。
  4. 在整个项目开发期间,业务人员和开发人员必须朝夕工作在一起。
  5. 围绕斗志高昂的人构建项目。给他们提供所需的环境和支持,并且信任他们能够完成任务。
  6. 在团队内部,最有效率也最有效果的信息传达方式,就是面对面的交谈。
  7. 可以工作的软件是进度主要的度量标准。
  8. 敏捷过程提倡可持续开发。出资人、开发者和用户应该总是保持稳定的开发速度。
  9. 对卓越技术和良好设计的不断追求有助于提高敏捷性。
  10. 简单——尽量减少工作量的艺术是至关重要的。
  11. 最好的构架、需求和设计都源自自我组织的团队。
  12. 每隔一定时间,团队都要总结如何更有效率,然后相应地调整自己的行为。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值