2007年6月19日

敏捷精灵日记2

[敏捷精灵日记]

  • 瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划 分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下 落。
  • 瀑布模型有以下特点:
  1. 为项目提供了按阶段划分的检查点。
  2. 当前一阶段完成后,您只需要去关注后续阶段。
  3. 瀑布模型强调文档的作用,并要求每个阶段都要仔细验证。但是,这种模型的线性过程太理想化,其主要问题在于:
  4. 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量;
  5. 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险;
  • 早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。
  • 在做大的变革之前,积极听取其他成员的意见,努力理解其他成员的观点;获得团队主要成员的支持,是保证变革成功的重要一环。
  • 软件开发根本就没有什么灵丹妙药可言。虽然敏捷编程技术可以很快开发出优秀的应用软件,但不是说这项技术适合每个项目。在实施敏捷之前,一定对现有项目做好分析,要对症下药。
  • 在Scrum开发模式下,为每个Sprint起一个名字,不但可以增加团队软件开发的乐趣,提高大家的参与程度,还可以记录下Scrum Team当时的心情

阅读详细......

2007年6月13日

敏捷精灵日记1

[敏捷精灵日记]

  • Scrum坚持如下敏捷开发原则:保持简单、接受变化、不断迭代、不断的反馈和改善、 协作和减少浪费
  • Scrum是一种灵活的软件管理过程,它可以帮助你驾驭迭代,递增的软件开发过程。
  • Scrum提供了一种经验方法,它使得团队成员能够独立地,集中地在创造性的环境下工作。它发现了软件工程的社会意义。Scrum一词来源于橄榄球运动,指“在橄榄球比赛中,双方前锋站在一起紧密相连,当球在他们之间投掷时他们奋力争球。”
  • Scrum这一过程是迅速、有适应性、自组织的,它代表了从顺序开发过程以来的重大变化。
    Scrum的迭代过程被称为“快跑”,时间为2-4个礼拜。
  • Scrum团队一般由5-10人组成,Scrum团队不仅仅是一个程序员队伍,它还应该包括其他一些角色,如产品经理、设计人员和测试人员等
  • Scrum包含三类角色: Scrum Master, Product Owner, Scrum Team
  • 相对于传统的开发模式来讲,agile也好,scrum框架也好,都是现在软件开发中用于应对快速变化的市场和需求快速反应的一种变通
  • Scrum是一个非常轻量级的流程。简单讲是先建立一个产品"订单"(backlog),做一个短期“冲刺”(sprint)计划,执行这个计划,每天开会讨论计划中的问题和进展,计划完成后演示工作成果,再对该阶段的工作做回顾、反思,接着不断重复以上流程。

阅读详细......