ACP知识要点Word文档下载推荐.docx
《ACP知识要点Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《ACP知识要点Word文档下载推荐.docx(22页珍藏版)》请在冰豆网上搜索。
![ACP知识要点Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-11/21/2c0b0d7d-12fb-4ffa-860b-efd87d906c16/2c0b0d7d-12fb-4ffa-860b-efd87d906c161.gif)
8)敏捷挣值管理(EVM)用于价值跟踪报告,最好应用于迭代级别。
因为范围是变化的,所以项目的EVM计算往往有误差。
9)渐进明细是敏捷计划的一个理念。
敏捷计划有5个层次(计划洋葱):
愿景、产品路线图、产品发布计划、迭代计划、每日计划。
其中,产品发布计划、迭代计划和每日计划是从三个不同的角度逐步进行计划的。
1、愿景:
目标是定义产品要解决的首要问题和目标人群。
这有助于你了解产品为用户带来的真正价值,和如何让你的产品与其他产品区分开来。
规划这一层的一个好方法是与组织领导者共同完成产品愿景画布。
2、产品路线图:
团队一起创建的高级别计划,说明如何实现产品愿景中定义的目标。
通常,路线图的内容在发布层会被分组,让组织中更多成员在确定每个可能的版本中的功能时能更好理解这些内容。
3、产品发布计划:
阐明构成路线图中的每一个发布版本的特定功能和每个版本交付的实际时间表。
单独的故事和任务会出现在计划上。
4、迭代计划:
为每次迭代做计划,包含选择迭代需要完成的用户故事和迭代工作计划。
5、每日计划:
团队要在每天开始的时候评估自己的状态,并共同制定第二天的计划。
10)敏捷项目管理模式的架构的5个阶段:
构想—推测—探索—适应—结束,重点在交付(执行)和适应。
1、构想:
确定产品构想、项目范围、项目社团以及团队共同工作的方式。
2、推测:
制定基于功能的发布计划、里程碑和迭代计划,确保交付构想的产品。
3、探索:
在短期内提供经测试的功能,不断致力于减少项目风险和不确定性。
4、适应:
审核提交的结果、当前情况以及团队的绩效,必要时做出调整。
5、结束:
终止项目、交流主要的学习成果并庆祝。
11)Scrum是敏捷项目管理的框架,它是一个冲刺和增量型的框架,它的基石是“一直存在一个理论上可传输的产品”。
1、Scrum的三大支柱:
A)Transparency透明:
为项目结果的负责人提供可见度。
B)Inspection检查:
适时检查项目进度顺利地向目标推进,找寻问题的偏差。
C)Adaption适应:
假设检验发现问题或是不合意的趋势,调整流程。
2、Scrum团队由Team、PO和SM组成,包含几种不同的活动类型:
冲刺、冲刺计划会、每日立会、冲刺评审会和冲刺回顾会。
3、一个健全的站立会议的重点特征包括:
同辈压力、密切的配合、细在专注、每日承诺、辨别障碍。
在每日立会中可讨论调整团队的工作量。
4、Scrum开发团队应保持5~9人的规模(不含PO和SM),开发团队不含测试或业务分析等子团队,它强调跨职能的,自组织的。
5、PO产品负责人主要职责是对产品待开发项进行管理,梳理产品待开发项,并对其进行优先级排序,确保开发团队所执行工作的价值,确保产品待开发项对所有人可见、清晰、透明,以及开发团队对其有一定程度的了解。
6、ScrumMaster首要职责是确保Scrum被正确地理解和实施,确保团队遵循Scrum的理论、实践和规则,保护团队免受干扰,排除障碍,他以各种方式服务于PO、Team和组织。
7、产品负责人应在会议前准备好产品待开发列表,缺少产品负责人的情况下,ScrumMaster应该在会议前创建符合要求的产品待开发项,并代理产品负责人一职。
8、时间盒:
冲刺(2~4周)、冲刺规划会(4~8小时)、每日立会(约15分钟)、冲刺评审会(4个小时)、冲刺回顾会(1~3小时)、先前迭代回顾会不超60分钟。
9、Scrum三个工件:
产品Backlog、SprintBacklog、燃尽图。
10、Scrum的五个价值:
承诺、专注、开放、尊重、勇气。
11、在进入首个Sprint之前,需要举行一个发布计划会议,发布计划会议输出是:
发布计划、发布Backlog、行动项目、风险、假设、依赖。
12、产品待办事项(productbacklog)的DEEP原则:
D)详略得当(DetailedAppropriately)
E)做过估算的(Estimated)
F)涌现的(Emergent)
G)排列优先级的(Prioritized)
13、SOS:
每5~9个ScrumTEAM为一个Scrum-of-Scrum。
14、Sashimi的原意是“生鱼片”,在Scrum中是团队用来表达“完成”的一种说法;
不同团队对于“完成”的定义可以是不一样的,但在一个团队内必须统一,在Scrum中一个团队需要定义不同级别的“完成规范”来统一这个概念,“完成规范”可是是任务级别的,团队级别的或者产品特定级别的。
15、Impediments的意思是“障碍”,是团队在向着“完成规范”所定义的状态努力过程中遇到的阻碍,一般来说,ScrumMaster需要作为消除障碍的主要负责人!
12)XP极限编程是敏捷方法中的一中软件开发方法,相对于Scrum关注项目管理工作,XP更加关注软件开发的良好实践。
它要求至少有一名客户代表在整个项目周期在现场负责确定需求、回答问题和功能验收测试。
1、XP的核心价值是:
简单、沟通、反馈、勇气、尊重。
2、XP的13个核心实践是:
完整的团队、规划游戏、小型发布、客户测试、共同所有权、编码标准、可持续的速度、隐喻、持续集成、测试先行/测试驱动开发、重构、简单设计、结对编程。
3、肯特.贝克概念中简单设计如下:
A)能够通过所有的测试程序;
B)没有包括任何重复的代码;
C)清楚地表现了程序员赋予的所有意图;
D)包括尽可能少的类和方法。
4、Demeter(迪米特)法则,也称为LoD法则、最少知识原则,指一个对象应当对其它对象尽可能少地了解,通俗地说就是“只与你的朋友通讯”、“不要和陌生人说话”。
5、结对编程技术被誉为XP保持工作质量、强调人文主义的一个典型实践,有助于协作的流畅、知识的交流共享和提高团队的稳定性。
13)特征驱动开发(FDD)是一种简单的便于理解的构建产品或者解决方案的方法。
其已经成为最广泛应用的快速软件开发方法。
1、特征驱动开发(FDD)有一系列良好的实践:
领域对象建模、按照特性开发、类(代码)拥有权、特性小组、审查、配置管理、定期构建、可视性进度报告。
2、特征驱动开发(FDD)的五个步骤:
A)开发整体模型;
B)建立特征清单;
C)依特征做规划;
D)依特征做设计;
E)依特征进行建立。
14)动态系统开发方法(DSDM),也称为业务中心框架开发方法。
它倡导以业务为核心,快速而有效地进行系统开发。
它的基本观点是任何事情都不可能一次性圆满完成,应遵循二八原则;
实施思路是在固定的时间进度和可用资源情况下,力争最大化满足业务要求。
1、DSDM开发过程被形象地称为“两张披萨和一块奶酪”,它的周期有以下7个阶段:
A)项目准备阶段;
B)可行性研究阶段;
C)业务研究阶段;
D)功能建模阶段(冲刺式);
E)系统设计编程阶段(冲刺式);
F)实施阶段;
G)项目后期。
2、DSDM的哲学是“足够就好,无须过多!
”。
3、DSDM在功能建模阶段会产生以下产物:
带有优先级的功能、功能性原型的评审文档、非功能需求、实施计划。
15)水晶(Crystal)方法体系与XP一样,都有以人为中心的理念,但在实践中有所不同,它探索了用最少纪律约束而仍能成功的方法。
1、Crystal系列方法分为CrystalClear(透明水晶)、CrystalYellow(黄水晶)、CrystalOrange(橙水晶)、CrystalRed(红水晶)。
重要性根据项目中的错误引发的后果分为:
C-不舒适、D-经济损失、E-严重经济损失、L生命危险。
2、水晶方法采用了一种比例的方式以匹配项目,它拥抱很多其它的敏捷原则:
A)频繁地交付;
B)反思改进;
C)渗透式沟通;
D)个人安全;
E)焦点;
F)与专家用户建立方便的联系;
G)配有自动测试。
3、反思提高研讨会是水晶方法论的基石。
4、水晶架构是迭代的,它的三个基本过程:
A)章程;
B)交付迭代;
C)项目总结。
5、水晶纲领包括:
A)建设团队;
B)做探索性的360;
C)为团队定义实践标准;
D)建立初始项目计划。
16)精益开发(LEAN)不是一种敏捷的方法,但是精益和敏捷的价值观是密切相关的。
Lean是系统的思想,Kaizen(持续改善)是一个手段。
1、精益的7大原则:
A)消除浪费;
B)加强学习;
C)尽量晚一点做决定;
D)尽快交付;
E)授权给团队;
F)建立无暇的产品;
G)窥其全貌。
2、精益生产理论是指估算浪费,价值流程图是敏捷采用的精益生产分析技能,用于价值的流动分析。
执行价值流程图包括以下5个步骤:
A)确认产品,客户和范围(即流程的始末);
B)地图作为团队或者个人现时价值流,确认流程步骤,延时和信息需求。
估算流程步骤的持续时长和前置期持续时长(leadtimedurations)。
前置期是指在发生前一项流程或者事件需等待的时长;
C)分析价值流程图来确认浪费存在的地方(比如前置期)和流程可完善的地方(流程时间通常认为是价值增加时间,但是应尽量减少整个流程的时间,由此来缩短向客户交付价值流的时间);
D)通过分析,总结出一份展示价值流应努力达到的前景或者目标的未来价值流程图;
E)通过流程完善活动或者其他方法来达到目标的一些工作。
3、价值流程图识别出来的可完善的地方和浪费的形式非常多,可用WIDETOM来记忆:
W-waiting等待;
I-inventory库存;
D-defects缺陷;
E-extraprocessing额外流程;
T-transportation运输;
O-overproduction过度生产;
M-motion动态。
4、精益投资组合管理(LeanPortfolioManagement)-选择项目以最大化投资回报的方法:
A)投资组合应包括最低市场特征(MMF),以便快速交付;
B)尽量减少在制品。
5、最小化可交付的特性(MMF)--为最终用户提供价值的最小功能集.一个MMF是最小粒度且有商业价值的特性。
MMF被放在一个队列中维护,(很像Scrum中的产品Backlog),但对队列的大小有严格的限制(James认为应该是两到三个,最多七个)。
17)看板开发,规则简单,但其有效实施依赖于对原理的理解、对原则的坚持和实践的应变。
1、看板开发方法使用一个拉动系统进行工作,它限制了在制品(WIP)的数量,这样可以帮助识别开发过程中产生的问题和最小化浪费。
2、看板开发方法的5个核心实践如下:
A)可视化工作(价值)流;
B)限制在制品的数量;
C)度量和管理流动;
D)协同改进;
E)显式化流程规则。
18)敏捷领导者
1、服务型领导的主要职责:
保护团队不受干扰、移除工作中的障碍、沟通项目愿景、为团队带来食物和水。
2、在一个自主管理的团队中,仆人式领导是促成者,倾听团队的需求,清除团队障碍并为提高生产率提供工具和其他支持。
3、敏捷领导者常见的行为准则如下:
A)教授团队成员自主决策敏捷实践和方法;
B)允许团队自主管理和自我约束;
C)授权团队适当的决策;
D)激励团队创造力和探索新技术;
E)阐述产品愿景,持续进行愿景激励以完成整体目标;
F)移除团队遇到障碍和问题;
G)宣传敏捷的价值观和理念;
H)确保所有干系人有效协作;
I)依据工作环境改变领导风格,以此确保有力支持敏捷价值和原则。
19)价值评估工具和技术
1、投资回报率(ROI)是指通过投资而应返回的价值,ROI=年利润/投资总额×
100%。
2、净现值(NPV)是指投资方案所产生的现金净流量以资金成本为贴现率折现后与原始投资额现值的差额。
PV=FV/(1+R)^N。
3、内部收益率(IRR)有助于评估计算项目投资的回报期,内部收益率就是净现值(NPV)等于0时的折现率。
4、挣值管理(EVM)不仅能反映出目前的项目状态,也能对项目未来的完成情况进行预测。
它的最大好处是可视化管理,通过图表技术,使得大家对项目状态一目了然。
5、关键指标绩效(KPI):
进展率、剩下的工作、可能完成的日期、可能完成时需要的成本。
20)产品列表排列的优先级标准:
DIVE
1、依赖关系(Dependencies)
2、风险(Insureagainstrisk:
businessandtechnical)
3、商业价值(BusinessValue)
4、估算工时(EstimatedEffort)
21)价值优先级排序方案
1、基于客户价值的优先级排序
A)简单的方案,完全基于主观经验;
B)MoSCoW优先级方案,M-必须做的、S-应该做的、C-可以做的、W-不要做的;
C)虚拟钱币,利用固定钱币去购买特征,最多的为优先级最高;
D)100点方法,每个相关方决定如何分配自己的100点数,点数最高的优先级最高;
E)Kano分析,它定义了三个层次的顾客需求:
基本型需求、期望型需求和兴奋型需求。
2、相对优先级或排序就是按照特性的相对大小,从上往下进行排序,依次为:
高、中、低。
22)软件开发中的测试和验证
1、探索性测试,核心思想是:
测试是一个不断学习、不断探索的创造性过程。
它将戴明环(PDCA)做到了极致。
2、可用性测试,指的是让一群有代表性的客户对产品进行典型操作,同时观察员和开发人员在一旁观察、聆听、做记录。
可用性有5个指标:
易学性、易记性、容错性、交互效率和用户满意度。
可用性测试适用于解决以下问题:
A)确定测试产品的可用性水平;
B)与预期目标、竞争对手、老版设计相比的可用性水平;
C)比较不同方案,确定哪个方案更可行;
D)现测试产品的可用性问题。
23)持续集成的步骤如下:
1、持续集成服务器不断检查版本服务器上的代码状态,看代码是否有更新;
2、如发现代码有最新提交,那么就从版本服务器上下载最新的代码;
3、代码完全更新后,调用自动化编译脚本进行编译;
4、运行所有的自动化测试;
5、进行代码分析;
6、产生可执行软件,能够提供给测试人员进行测试。
24)测试驱动开发(TDD)要求先编写测试代码,然后只编写使测试通过的功能代码。
它有助于编写简洁可用和高质量的代码,并加速开发过程。
1、测试驱动开发的基本过程如下:
A)快速新增一个测试;
B)运行所有测试(有时候是部分),发现新增的测试不能通过;
C)做一些小改动,尽快让测试程序运行,为此可以在程序中使用一些不合情理的方法;
D)运行所有的测试,并全部通过;
E)重构代码,以消除重复设计,优化设计结构。
2、测试驱动开发不是一种测试技术,而是一种分析技术、设计技术,更是一种组织所有开发活动的技术。
它具有以下优势:
A)TDD根据用户需求编写测试用例,对功能的过程和接口都进行了设计,而且这种从使用者角度对代码进行的设计通常更符合后期开发的需求。
B)出于易测试和测试独立性的要求,将促使我们实现松耦合设计,并更多地依赖接口,提供系统的可扩展性和抗变性;
C)将测试工作提到编码之前,并频繁地运行测试,可尽量避免和尽早发现错误,降低了后期测试和修复的成本,提高了代码质量;
D)TDD提供了持续的回归测试,可以重构代码;
E)TDD所产生的单元测试代码就是最完美的开发者文档,它展示了所有的API是如何工作的,并且是同步的、最新的;
F)TDD可以减轻压力、降低忧虑,提高团队对代码的信心和对代码重构的勇气;
G)快速地提高了开发效率。
25)验收测试驱动开发(ATDD)技术使得测试的焦点从代码本身转向业务需求,它的测试案例代表了功能在验收测试水平上所被期望的行为。
它包含讨论、提炼、开发和演示四个阶段:
1、Discuss讨论:
敏捷团队和客户或者商业干系人详细讨论用户故事,包含用户故事应有和不应有的预期行为;
2、Distill提取:
开发团队研习讨论中的条目并提取成可验证和确认这些行为的测试。
提取流程中,整个团队应充分认识“完成”对用户故事的意义,这正是验收标准所在;
3、Develop开发:
提取后,团队开发测试代码和产品代码以产生产品特性;
4、Demo示范:
产品特性开发后,团队向客户或商业干系人展示以获得反馈。
26)敏捷章程的一些实际应用有以下几部分:
1、在实际项目开始前,作为冲刺0的一部分;
2、通过高级管理层进行签署,并且授予团队资源和权利;
3、如果可能,在这份文档里也会写出团队成员的名字;
4、解决项目的5W1H(What,Why,Who,When,WhereandHow);
5、类型项目章程,但详细程度不同,敏捷章程不是很详细,并且关注于渐进明细;
6、内容包含概要需求、关键的成功要素、里程碑和初步的预算;
7、必须为团队授权进行敏捷过程定义;
8、敏捷章程不是可有可无的,是必需的。
27)完成的定义(DoD),在敏捷软件开发中存在多级不同的完成定义,包括冲刺的DoD、发布的DoD、用户故事DoD、每日DoD和每周DoD,DoD应该由干系人共同认可。
1、冲刺DoD,是最初DoD应用的地方,常见的冲刺DoD条款有以下几个:
A)所有完成的用户故事得到产品负责人的验证;
B)所有的代码得到静态分析,纠正最高级别的不符合项;
C)所有新增代码得到人工评审;
D)所有完成的用户故事都有对应的测试用例。
2、发布DoD的典型条款有如下几条:
A)完成发布的规划所要求的重点内容;
B)通过发布的全量测试,回归测试范围是全范围的,回归率不低于50%;
C)修复所有等级为1、2、3的缺陷,4级及4级以下的缺陷不超过200个。
1、2级缺陷必须修复,3级缺陷经过带缺陷发布审批后可以发布。
3、用户故事DoD有以下几个条款:
A)用户故事最终描述符合INVEST原则;
B)用户故事得到测试用例的对应覆盖;
C)用户故事得到对应的自动化测试用例;
D)用户故事得到用户代表使用并初步认可。
28)线框图是由一些简单的方框组成,用来在用户界面上显示元素的位置、界面布局和软件功能。
1、线框图的主要功能如下:
A)显示界面元素;
B)显示这些元素是如何组织在一起的;
C)显示用户界面如何工作;
D)显示用户如何与程序或者网站进行交互。
2、线框图可用很好地用于敏捷项目:
A)线框图鼓励团队成员积极交流,协同工作;
B)线框图是轻量的,并且是易于理解消化的,而不是繁琐的文档;
C)线框图可以获得用户和客户的早期反馈,并且是持续性的反馈;
D)线框图允许在项目开始时使用交互式的草稿图,再逐步演化为最终设计。
29)人物画像可以让开发人员快速地知道关键相关方所感兴趣的事情,为开发人员提供快速的指导。
1、人物画像将:
A)提供用户描述的原型;
B)植根于实际;
C)以目标为导向,更加具体和相关;
D)是有形的、可以行动的;
E)使人们更加聚焦。
2、人物画像不能代替需求,但是它们可以代替争执。
30)信息雷达图可能会呈现以下的数据:
1、所交付特征的数据和没有交付特征的数据;
2、谁工作在哪件工作上;
3、这一轮迭代所选择的特性;
4、速率;
5、威胁和问题列表;
6、故事地图;
7、燃尽图。
31)敏捷的可视化
1、燃尽图(BurndownChart)可以直观地展现项目总体进度,它展示了时间和项目剩余总体工作量间的关系,有效的描绘了团队进展的速度和生产能力。
燃尽图可以判别完成的时间,但不能判别完成的内容。
有发布燃尽图和迭代燃尽图等。
2、燃起图(BurnupChart),它能够直观展现项目时间与已完成的工作间的关系的一种图表,根据每天完成的story情况动态展现工作成果的曲线。
3、停车场图表用来对用户故事按主题进行分类和管理。
包括确定主题的名称、用户故事的数量、其包含的故事点、展现故事点完成百分比的进度图表。
4、看板图是一个拉动式的图表,用来帮助团队理解当前做得如何,以及下一步要做什么,令团队能够自我指导。
在看板图、燃尽图和停车场图三者之中,看板图的信息最详细。
看板方法关注的是价值的流动效率。
5、累积流图(CFD:
CumulativeFlowDiagram)是看板方法里的核心度量,可以很好地反映工作项在每个流程环节的流动问题。
累积流图可以用来分析在制品、平均周期时间、吞吐率(Throughput)、需求范围的变化、预测交付日期。
6、价值流程图是敏捷采用的精益生产分析技能,用于对形成客户产品或服务的原料和信息(即价值)的流动进行分析。
一张价值流程图可能用于分析信息或者材料的流动,从它们的源地到终点,以此来识别浪费区域,识别出的区域成为流程可完善的地方。
32)协同工作
1、工作坊是一个多人共同参与的场域与过程。
以下的一些技巧可以让工作坊更加有效:
A)让更多的人参与进来,可以有不同的观点,因为其会带来有价值的想法和解决方案;
B)在讨论中应避免某个人主导,应该让团队集体产生想法;
C)轮流发言,每个人都应该做出贡献,而不仅仅是一个被动的听众。
2、头脑风暴是指一群人或小组围绕一个特定的兴趣或领域,进行创新或改善,产生新点子,提出新方法。
头脑风暴可以通过安静地写作、循环方法或无限制的方式实现。
头脑风暴的好处有:
A)提高创造力;
B)建立更好的社交圈和职员关系;
C)营造更让人愉快的工作环境;
D)创造新市场、新产品、新服务;
E)创造更好的产品和服务,实现更好的管理;
F)减少冲突和争论,提高生产力和可信度。
团队可以使用头脑风暴来完成以下几种功能:
A)确定特定任务的产品角色;
B)为发布版本确认最小市场特性;
C)识别影响项目的风险;
D)制定针对特出问题的解决方案。
33)协作游戏
1、回想未来。