项目管理过程中需要考虑哪些成本?——研发问答(11)

我们整理了一些“研发人的灵魂问答”

问题有些来自网络段子、来自经典书籍

但更多是来自我们咨询辅导过的客户朋友

在实际工作中经常遇到的问题

我们希望以不太严肃的方式

改变过去咨询顾问“医者”形象

用我们顾问咨询工作中的点滴经验和体会

帮助您看透管理工作中的本质

共同成长进步,助力企业持续发展‍

01 和时间赛跑,谁是loser?

项目管理过程中需要考虑哪些成本?——研发问答(11)

?问题来了:项目开发中如何进行工时估算?有什么工具方法介绍?

故事点估算法的介绍这里不做赘述,大家可参照其它回答或者网上资料做基本了解。这里为大家重点介绍以团队的估算必须考虑到影响工作量的三个关键因素

要开展的工作数量

• 工作的复杂度

• 要开展的工作中存在的风险或不确定性

关于故事点与要开展的工作数量的关联关系比较好理解。例如:一个开发内容为互联网搜索引擎主页面,只有一个输入文字框和一个提示标签。另一个开发内容为某网站用户注册登记页面有二十多条需要输入的文字框和文本框内容,以及其提示标签。这两个页面开发的工作量看,用户注册页面并不比搜索引擎复杂,因为字段间没有交互,只是在系统中接受输入内容,并转到后台做数据库处理,第二个网页并不存在额外的风险。这两网页之间的唯一区别就是第二页有更多的事情要做。应该给予第二个网页更多的故事点数。但它即使多了20倍的字段数,可能仍然得不到多20倍的点数。毕竟,由于规模效应,第二个网页的工作量可能只是第一个网页的工作量的2或3或10倍。这里要注意的一点是,针对用户故事的故事点的估算数值大小单位,还不是具体详细的“人天”,或“小时”,因为针对用户故事的故事点数只是一个大概的工作规模的估计,在提出用户故事时也不可能很精准地估计大小,只是在它们相互间比较相对大小时有意义。在明确了故事点估算的意义后,后续开展每轮迭代规划时,再将各个故事细化为任务,并估算各任务具体的人天或小时数。

展开全文

工作复杂度因素,同样会影响估算故事点大小。复杂的工作需要花费更多的工作量(需求分析、架构设计等),可能需要进行更多的试错试验,可能需要与客户进行更多的交流、反复,还可能需要花费更长的时间来验证和改正错误。

要开展的工作中存在的任何风险或不确定性,可以通过考虑到风险发生的概率,以及风险确实发生后将会造成的影响大小来评估。如果产品负责人对于一项需求说明得不清晰,那么团队在估算中就应该把不确定性反映在估算结果中;如果实现一项功能中测试人员缺乏专业领域的测试经验、或培训不足,就需要在估算中考虑到此类风险大小。

综合上述,团队在估算故事点时,首先需要理解故事点是一个概要的、相对值的概念。其次,团队在估算中需要全面考虑其工作的数量、复杂度及其风险和不确定性。

02 砍我经理可以,成本砍价不行!

项目管理过程中需要考虑哪些成本?——研发问答(11)

?问题来了:项目管理过程中需要考虑哪些成本?

在项目管理中,有效预测和管理项目成本对项目经理来说是件具有挑战性的任务。

很多企业,尤其是研发型企业会将项目开发成本视为项目成本设定基线(项目开发成本是指为开发出目标产品所需要实际付出费用的总和,即项目开发成本是为了实现产品从0到1过程所发生的全部成本,这个过程中的成本包含了开发团队的人工费用、材料费用、设备费用、外协合作费用等等)。项目管理者通过有效的成本管理对这部分成本进行预算、监管和控制,以确保项目的预算始终在轨道上的,并将按照计划的范围完成。在过去的几十年的时间里,降低项目开发成本的目标一直是大多数企业在项目成本管理上努力的方向。

但随着科技发展和更新的速度越来越快,企业所面临的竞争压力越来越大,随之而来的对于项目成本的理解也在悄然地发生变化,项目成本管理的意识正在从过去的项目开发成本向项目全生命周期成本概念进行转移

项目全生命周期成本包含了两部分:

第一部分是上述谈到的项目开发成本,即产品从0到1过程所发生的的成本。

第二部分则是指项目产品从1到N的过程所发生的成本。N是指产品在生命周期内的制造数量,我们这里简称第二部分项目成本为运营成本,很显然运营成本包含了产品BOM成本、生产运输费用、售后服务费用等等,对于传统的硬件产品而言,项目的运营成本远远大于项目的开发成本,即使是软件项目,公司后续对软件的运营维护、问题修复、升级改造的成本费用也是远远大于项目的开发成本。

所以现代项目成本管理已经不能仅仅聚焦在项目开发成本上,而是要扩展到项目全生命周期成本范围。

03 事前“猪”一样,事后诸葛亮?

项目管理过程中需要考虑哪些成本?——研发问答(11)

?问题来了:如何提高产品的测试质量?

首先,产品测试案例库是必须有的,它相当于国家的武器库,不能等要打仗了,才临时开动兵工厂。案例库保证了重用的这些功能有相应的测试用例去检查。同时,很多企业也会做自动测试,通过自动测试将测试的速度提高,这就相当于建设机械化部队了。

其次,需要让测试具备看清楚产品质量状况和缺陷分布的千里眼。在企业内部开展产品质量分析活动,对缺陷进行度量和统计分析,是让自己具备千里眼的手段。在这个基础上开展根因分析等缺陷预防活动,就能更好地减少缺陷的发生。

最后,工作归根到底是由人来完成的,不能忽视了测试工程师的培养。通过流程学习和审计,让工程师们学会规范的工作方法,和别的团队协同工作;通过产品知识的学习,以及典型缺陷发现过程的经验共享,提高测试工程师发现缺陷的能力。各家企业还有很多自己独创的提高队伍水平的做法,这些手段,都对产品质量的保证起到了关键作用。

总言之,产品质量保证不是一时一地的活动,它是一个逐渐积累提高的过程,通过每个项目的炼,以及成果的归档重用,测试团队会具备越来越好的条件和能力,让企业在开发产品时,再也不用担心掉到不断重复测试的陷阱中。

发表评论