PMP考点汇总-敏捷基础概念(一)

PMP考点汇总-敏捷基础概念(一)_第1张图片
1.1-Agile—敏捷

在软件工业界,敏捷开发已成为众多高效开发团队的制胜之道。它不仅被许多中小公司青睐,在全球一百强的企业中,敏捷开发也已大行其道,受到许多资深项目管理者和开发人员的推崇。例如,腾讯内部几乎所有的开发团队都在实施敏捷。

敏捷不是指某一种具体的方法论、过程或框架,而是一组价值观和原则。符合敏捷价值观和原则的开发方法包括:极限编程(XP),Scrum,精益软件开发(Lean Software Development),动态系统开发方法(DSDM),特征驱动开发(Feature Driver Development),水晶开发(Crystal Clear)等等。所有这些方法都具有以下

共同特征:

  1. 迭代式开发。即整个开发过程被分为几个迭代周期,每个迭代周期是一个定长或不定长的时间块,持续的时间较短,通常为一到四周。

  2. 增量交付。产品是在每个迭代周期结束时被逐步交付使用,而不是在整个开发过程结束的时候一次性交付使用。每次交付的都是可以被部署到用户应用环境中被用户使用的、能给用户带来即时效益和价值的产品。

  3. 开发团队和用户反馈推动产品开发。敏捷开发方法主张用户能够全程参与到整个开发过程中。这使需求变化和用户反馈能被动态管理并及时集成到产品中。同时,团队对于用户的需求也能及时提供反馈意见。

  4. 持续集成。新的功能或需求变化总是尽可能频繁地被整合到产品中。一些项目是在每个迭代周期结束的时候集成, 有些项目则每天都在这么做。

  5. 开发团队自我管理。拥有一个积极的、自我管理的、具备自由交流风格的开发团队,是每个敏捷项目必不可少的条件。人是敏捷开发的核心。敏捷开发总是以人为中心建立开发的过程和机制,而非把过程和机制强加给人。

1.2-Scrum—橄榄球式开发模式

Scrum 是一个用于开发和维持复杂产品的框架,是一个增量的、迭代的开发过程,是敏捷开发的一种实现机制。Scrum 以经验性过程控制理论(经验主义)为理论基础,主张知识源于经验, 以及基于已知的东西做决定。Scrum 采用迭代、增量的方法来优化可预见性并控制风险。在这个框架中,整个开发过程由若干个短的迭代周期组成,一个短的迭代周期称为一个冲刺(Sprint)。

在 Scrum 中,使用产品 Backlog 来管理产品需求和开发任务。产品 backlog 是一个按照商业价值(或实现优先级)排序的事项列表,列表条目的体现形式通常为用户故事。在规划 Sprint 时,Scrum 团队从产品 Backlog 中挑选最高优先级的需求,在 Sprint 计划会议上经过讨论、分析和估算得到相应的任务,并分配给具体的成员去实现。当前 Sprint 需要完成的任务会展现在特别设计的面板上,清晰地展示每个任务的负责人、当前状态、实现过程中的问题和变更等等信息。项目团队和各利益攸关方能清晰地把握每个任务的开发进度和遇到的问题,并以此分析、控制项目的进度、成本和风险。Scrum 以站立会作为项目规划、过程控制和资源分配的内部交流协商机制。在每个迭代结束时,Scrum 团队将递交潜在可交付的产品增量。

作为敏捷开发的实现机制,Scrum 拥有以下重要特征:
PMP考点汇总-敏捷基础概念(一)_第2张图片

  1. 迭代开发。在 Scrum 的开发模式下,我们将开发周期分成多个 1-4 周的迭代,每个迭代都交付一些增量的可工作的功能。迭代的长度是固定的,如果我们选择了 1 周的迭代,那么保持它的长度不要发生变化,在整个产品开发周期内每个迭代都是 1 周的长度。这里需要强调的是在每个迭代必须产出可工作的增量功能,而不是第一个迭代做需求、第二个迭代做设计、第三个迭代做代码。

  2. 增量交付。增量是一个 Sprint 及以前所有 Sprint 中完成的所有产品待办事项列表条目的总和。在Sprint 的结尾,新的增量必须“完成”,这意味着它必须可用并且达到了 Scrum 团队 “完成”的定义的标准。无论产品负责人是否决定真正发布它,增量必须可用。增量是从用户的角度来描述的,它意味着从用户的角度可工作。

  3. 自组织团队。Scrum 团队是一个自组织的团队,传统的命令与控制式的团队只有执行任务的权利,而自组织团队有权进行设计、计划和执行任务,自组织团队还需要自己监督和管理他们的工程过程和进度,自组织团队自己决定团队内如何开展工作,决定谁来做什么,即分工协作的方式。

  4. 高优先级的需求驱动。在 Scrum 中,我们使用 Product Backlog 来管理需求,Product Backlog 是一个需求的清单,其中的需求是渐进明细的、经过优先级排序的。Scrum 团队从 Backlog 最上层的高优先级的需求开始开发。在 Scrum 中,只要有足够 1-2 个 Sprint 开发的细化了的高优先级需求就可以启动 Sprint 了,而不必等到所有的需求都细化之后。我们可以在开发期间通过 Backlog 的梳理来逐步的细化需求。

你可能感兴趣的:(项目管理,pmp考试,PMP,项目管理,PMP)