[项目范围管理是项目成败的关键]引子 一个项目从其一成立开始,项目各方干系人都会期望项目能够根据既定的计划一步步顺利地导向最后的成功。影响项目的最后成功的因素是多方面的,包括项目管理的九大知识领域(...+阅读
开始一个新项目或版本时候,首先是和用户一起确认需求,进行项目的范围规划。项目是范围,进度,质量和资源四要素的平衡,用户对项目进度要求和优先级高的时候,我们往往要缩小项目范围,对用户需求进行优先级排序,排除优先级低的需求。另外我们做项目范围规划的一个重要依据就是我们的历史经验数据,对项目特征的清楚认识,项目范围规划初期需求你进行一个较宏观的估算,否则你很难判断清楚或给用户承诺在现有资源情况下,你3个月时间里面是否可以完成20个或更多用户功能。 正规过程好像是先确认项目范围,然后根据WBS->进度计划确认实际的项目周期,但实际情况往往很难如此,用户往往对进度的关注度大于对范围的关注度,一个项目半年或一年都看不到具体的产品出来用户肯定是无法接受的,所以我们的软件项目一般也是按版本增量迭代进行开发。
另外这里需要强调下项目目标的确定,项目的目标不能简单理解为在某个时间点完成所有功能。项目另外一个重要目标就是项目的质量目标,你完成的这个项目需要达到那个等级的质量标准,交出的产品BUG泄漏率要控制在什么范围内等内容。项目的质量目标不会影响到我们的范围,但会影响到我们后续评审,测试等时间的安排,直接影响到项目的进度。 PMBOK里已经明确提到项目范围定义的另一个重要目的就是项目的绩效测量和验收准则,你交付项目的时候用户会根据用户需求说明书内容对项目进行验收,所有我们项目的范围的定义必须是明确,量化,可验证和可测试的,这样才能够避免后期无谓的纠纷。 另外在概述阶段需要分析项目的假设和约束,假设和约束又分为技术方面和非技术方面,在这里我们分析的所有假设都可能成为项目的风险。
2.项目进度的确定 项目的目标和范围确定后,需要开始确定项目的过程,项目整个过程中采用何种生命周期模型?项目过程是否需要对组织级定义的标准过程进行裁剪等相关内容。项目过程定义是进行WBS分解前必须确定的一个环节,你采用瀑布模型和增量迭代模型对WBS分解和进度计划安排显然是完全不同的。 项目过程确认清楚后开始进行项目的WBS分解,WBS分解一般是项目组的核心成员参加,但项目经理应该是起主导和协调作用。WBS分解方法一般有基于过程和基于成功两种方式,但两种方式可以混合使用,比如在高层分解的时候先分解出子系统和工作包,在底层的时候再按照需求,设计,编码和测试各个过程进行分解。 WBS的最底层工作单元需要是可以独立核实的产品,需要去下达计划和任务,工作单元需要有明确的责任人,因此有时候在没有做仔细的估算时候我们很难让工作单元满足这些要求,这样就难免在进行估算过程中还要对WBS进行优化和调整。
WBS分解完成后可以开始进行工作单元的估算,估算一般有专家法,三点法和功能点法估算,由于我们的项目采用专家法估算,因此更需要项目核心成员和有经验的成员参加,估算一般会针对工作单元的单位和复杂度进行估算,最后估算出项目的总规模,再除以项目的生产率后得到项目的工作量数据。 专家法估算一般会进行很多轮,直到所有指标都收敛(收敛标准是组织或项目事先确定清楚了,如偏差人员的责任矩阵进行分析,对于关键路径一般直接用运筹学中的关键路径分析法确定ES,EF,LE和LF四个时间即可。 在项目进度计划基本排出来后就可以规划和确定项目的里程碑和基线了,项目的里程碑和基线是项目重要的跟踪控制检查点,在里程碑项目还会做专门的里程碑报告,对项目的当前状态,项目的进度,工作量,规模,缺陷等各项指标的偏离进行分析。
整个项目进度计划基本出来后需要和项目组的所有项目成员确认,获取项目的内部承诺,项目成员应该对整个进度计划安排基本达成一致。项目计划还有需要支持计划需要制定,项目进度计划出来后整个可以通知QA和配置管理员分别制定质量保证计划和配置管理计划,项目经理协助测试负责人制定项目的系统测试计划。
软件项目管理是什么
软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对人员(People)、产品(Product)、过程(Process)和项目(Project)进行分析和管理的活动。 软件项目管理的根本目的是为了让软件项目尤其是大型项目的整个软件生命周期(从分析、设计、编码到测试、维护全过程)都能在管理者的控制之下,以预定成本按期,按质的完成软件交付用户使用。而研究软件项目管理为了从已有的成功或失败的案例中总结出能够指导今后开发的通用原则,方法,同时避免前人的失误。 软件项目管理的内容主要包括如下几个方面:人员的组织与管理,软件度量,软件项目计划,风险管理,软件质量保证,软件过程能力评估,软件配置管理等。 这几个方面都是贯穿、交织于整个软件开发过程中的,其中人员的组织与管理把注意力集中在项目组人员的构成、优化;软件度量把关注用量化的方法评测软件开发中的费用、生产率、进度和产品质量等要素是否符合期望值,包括过程度量和产品度量两个方面;软件项目计划主要包括工作量、成本、开发时间的估计,并根据估计值制定和调整项目组的工作;风险管理预测未来可能出现的各种危害到软件产品质量的潜在因素并由此采取措施进行预防;质量保证是保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动;软件过程能力评估是对软件开发能力的高低进行衡量;软件配置管理针对开发过程中人员、工具的配置、使用提出管理策略。
软件项目计划书的目录都包含什么
一、项目计划书格式根据《GB8567-88计算机软件产品开发文件编制指南》中项目开发计划的要求,结合实际情况调整后的《项目计划书》内容索引如下:1 引言1.1 编写目的1.2 背景1.3 定义1.4 参考资料1.5 标准、条约和约定2 项目概述2.1项目目标2.2产品目标与范围2.3假设与约束2.4 项目工作范围2.5 应交付成果2.5.1 需完成的软件2.5.2 需提交用户的文档2.5.3 须提交内部的文档2.5.4 应当提供的服务2.6 项目开发环境2.7 项目验收方式与依据3 项目团队组织3.1 组织结构3.2 人员分工3.3 协作与沟通3.3.1 内部协作3.3.2 外部沟通4 实施计划4.1 风险评估及对策4.2 工作流程4.3 总体进度计划4.4 项目监控4.4.1 质量控制计划4.4.2 进度监控计划4.4.3 预算监控计划4.4.4 配置管理计划5 支持条件5.1 内部支持(可选)5.2 客户支持(对项目而言)5.3 外包(可选)6 预算(可选)6.1 人员成本6.2 设备成本6.3 其它经费预算6.4 项目合计经费预算7 关键问题8专题计划要点...
如何制定软件项目测试计划
问题三:变更的控制 测试计划改变了已往根据任务进行测试的方式,因此,为使测试计划得到贯彻和落实,测试组人员必须及时跟踪软件开发的过程,对产品提交测试做准备,测试计划的目的,本身就是强调按规划的测试战略进行测试,淘汰以往以任务为主的临时性。在这种情况下,测试计划中强调对变更的控制显得尤为重要。 变更来源于以下几个方面 1. 项目计划的变更 2. 需求的变更 3. 测试产品版本的变更 4. 测试资源的变更 测试阶段的风险主要是对上述变更所造成的不确定性,有效的应对这些变更就能降低风险发生的几率。要想计划本身不成为空谈和空白无用的纸质文档,对不确定因素的预见和事先防范必须做到心中有数。 对于项目计划的变更,除了测试人员及时跟进项目以外,项目经理必须认识到测试组也是项目成员,因此必须把这些变更信息及时通知到项目组,使得整个项目得到顺延。
项目计划变更一般涉及都是日程变更,令人遗憾的是,往往为了进度的原因,交付期限是既定的,项目经理不得不减少测试的时间,这样,执行测试的时间就被压缩了。在这种情况下,测试经理常常固执的认为进度缩减的唯一的方法就是向上级通报并主观认为产品质量一定会下降,这种做法和想法不一定是正确的。由于时间不足,不能“完美”的执行所有测试,为了保证质量,第一种办法是调整测试计划中的测试策略和测试范围,实践中测试经理常常忽略测试计划的这个章节。调整的目的是重新检查不重要的测试部分,调换测试的次序和减少测试规模,对测试类型重新组合择优,力求在限定时间内做最重要部分的测试,可以把忽略部分留给确认测试或现场测试。其他应对办法包括减少进入测试的阻力,例如降低测试计划中系统测试准入准则;分步提交测试,例如改成迭代方式增量测试;减少回归测试的要求,例如开发人员实时修改,在测试计划中对缺陷修复响应时间和过程进行约定;和公司QA商量进行简化配置管理,跳过正式发布环节;缺陷进行局部回归而不是重新全部测试等等。
第二:项目进行过程中最不可避免的就是需求的变更。那么,测试计划中就不能进行控制和约束的吗?答案是未必。当制定计划时,如果项目需求处于动态变化时,在测试用例章节就要进行说明。许多测试经理在编制测试用例时往往没有把测试用例和测试数据进行区分,因此,造成的问题是当需求变化时辛辛苦苦设计的数据就作废了。在这时,假使面临一个需求动态的项目,必须在计划中对需求变更造成的测试(设计)方式变化进行说明,例如采用用例和数据分离、流程和界面分离、字典项和数据元素分离的设计方式,然后等到最终需求确定后细化测试设计;另一个方面是最好制定一个变更周期的约定――尤其在执行测试阶段发现需求的变更――定义变更的最大频度和重新测试的界限,计划从一定程度上能够降低不可预期需求变化造成的投入损失。
值得注意的是:需求发生变更时测试经理额外的工作是记住要在需求跟踪矩阵上做记录。 对于测试产品版本的变更,除了部分是由于需求变更造成之外,很有可能是由于修改缺陷引发的问题或配置管理不严格造成。众所周知,测试必须是基于一个稳定的“基线”进行,否则,因反复修改造成测试资源和开发资源的浪费是可观的。合理的测试计划在章节中应增加一个测试更新管理的章节,在此章节明确更新周期和暂停测试的原则。例如,小版本的产品更新不能大于每天三次,一个相对大的版本不能每周大于1次,规定紧急发布产品仅限于何种类型的修改或变更,由谁负责统一维护和同步更新测试环境。测试计划通常制定了准入和准出准则,这是不够的,要考虑测试暂停的时候,产品错误发布或者服务器数据更新就是一个例子,暂停的时候如果测试经理不进行跟踪,可能发生测试组等待测试而没人通知继续测试的情况,所以,增加更新周期和暂停测试原则是很有必要的。
最后,测试资源的变更是源自测试组内部的风险而非开发组风险,当测试资源不足或者冲突,测试部门不可能安排如此多的人手和足够时间参与测试时,在测试计划中的控制方法与测试时间不足相类似。没有测试经理愿意承担资源不足的测试工作,只能说公司本身是否具备以质量为主的体系或者项目经理对产品质量的重视程度如何决定了对测试资源投入的大小,最终产品质量取决因素不仅仅在于测试经理。为了排除这种风险,除了象时间不足、测试计划变更时那样缩减测试规模等等方法以外,测试经理必须在人力资源和测试环境一栏标出明确需要保证的资源,否则,必须将这个问题作为风险记录。规避风险的办法可能有: 一,项目组的需求和实施人员参与系统测试; 二,抽调不同模块开发者进行交叉系统测试或借用其他项目开发人员; 三,组织客户方进行确认测试或发布β版本。
尽管上面尽可能的描述了测试计划如何制定才能“完美”,但是还存在的问题是对测试计划的管理和监控。一份计划投入再多的时间去做也不能保证按照这份计划进行实施。好的测试计划是成功的一半,另一半是对测试计划的执行。对小项目而言,一份更易于操作的测试计划更为实用,对中型乃至大型项...
以下为关联文档:
项目范围管理是什么呢项目范围管理是用以保证项目包含且只包含所有需要完成的工作,以便顺利完成项目所需要的各个过程,由范围计划、范围定义、范围核实和范围变更控制构成。范围是指合同所定义的项...
项目范围管理原则是什么简单来说,就是我们需要做什么、我们不需要做什么。之前有一次我们公司在跟客户为一个项目做前期谈判,中途把我叫过去开会,听了一会儿感觉大家说的好像不是一回事,于是就问客户这...
如何实现项目安全控制目标和安全保证计划1。项目安全控制目标项目的安全控制目标是消除施工中的人为不安全行为、物的不安全状态、环境的不安全因素和管理的缺陷,确保没有危险,不出事故,不造成人身伤亡和财产损失。项...
施工项目审计管理审计对象范围时点和目标是什么1审计对象 (1)建设公司所有的项目经理部承建的工程项目均为审计对象,审计部以建设公司直管项目直接审计对象,非直管项目为间接审计对象,但根据建设公司安排也可直接参与审计。 (2)...
软件项目开发计划书是什么样子一、项目提出的背景和必要性 包括国内外现状、知识产权状况和发展趋势;技术突破对产业技术进步的重要意义和作用;项目可能形成的产业规模和市场前景。 二、国内外市场分析 包...
项目计划与控制在现代项目管理中的地位和作用在建设项目管理中,最重要的管理内容是项目的施工质量、进度与投资控制。对于施工质量,我国历来是十分重视的,尤其在改革开放的今天,国家设立了注册监理工程师制度,推出了工程的旁...
项目里程碑在项目计划中的作用是什么里程碑一般是项目中完成阶段性工作的标志,即将一个过程性的任务用一个结论性的标志来描述任务结束的、明确的起止点。一系列的起止点就构成引导整个项目进展的里程碑(mileston...
项目范围基线是什么定义:项目范围基线是批准的详细项目范围说明书与对应的工作分解结构和工作分解结构词汇表。项目的“基线”是指在项目的生命周期中的某个时间点上,项目的计划日期或预算等关键...
析一个案例:叙述在项目管理的识别需求阶段和项目计划阶段所做的工析一个案例:叙述在项目管理的识别需求阶段和项目计划阶段所做的工,项目管理中有没有多个项目并行开始并且并行说明的案例:你的问题应该是“项目管理专业”的问题了,如果书里面有...