目前的组织框架下,经过一年多的工作实践,深深体会到人和流程是保证项目成功的两个最关键因素。由具备项目实施基本素质的人按规范的合理化流程进行项目开发,才能最大限度地保证项目的成功。一个好的流程可以保证差一点的人做出来的东西不至于太差,但不能确保做出精品。通过流程可以实现一种规范化、流水线化、工业化的软件开发。通过流程我们部门间的配合才节省宝贵时间,为项目早期完成,赢得市场主动权。
4.3 项目计划的阶段性
1) 努力做到项目计划详细、周到。CYB项目计划从开始有三个月计划,到修改三次以上,计划完成时间从三个月、延长到六个月、直到现在的八个月。计划已经形同虚设。实践证明不合理的计划不如没有计划,不合理的计划给领导造成错误的认识。合理的计划应该是先明确本周工作计划,对于难以预测的任务或者困难给出一个近期工作的方向,然后根据实际进展情况进行细化调整。
2) 流程中明确定义开发阶段、测试阶段。开发阶段任务没有完成,占用测试阶段计划时间,测试工作效率降低。正确的处理方式建议不要减少测试工作时间,项目开发完成时间根据实际需要顺延。
3) 每个阶段都列出了该阶段的各项活动,并详细描述每项活动的属性:
进入条件,输入;
验证方法;
结束条件,输出。
4) 每个阶段结束都要召开阶段结束会议。前一个阶段结束(以本阶段开发任务测试完成为标志)才能进入下一阶段。项目经理需要在每个阶段测试任务完成情况进行分析,存在的问题要充分暴露出来,以便于早点解决。 CYB项目经理D采取报喜不报优的做法,在会议上常得到领导的表扬,其他项目经理常愁眉苦脸摆出人员问题、可能的技术问题、测试人员和时间问题等。实际结果最后笑的项目经理也是项目完成比较顺利。
5) 理想计划中每个活动都比较具体,每个活动的时间以天为单位。计划包括了开展质量控制活动的时间,推广说明版本控制系统和缺陷跟踪系统的使用的时间。
典型案例是公司研发用于用户信息管理的代号CYB项目,CYB项目开始时副总裁牵头,由于测试人员少没有参与,开发经理们讨论设计实施方案后几乎大家一片赞美。随后项目经理D负责开发,他认为时间紧,省去了许多必须的文档工作。经理D采取报喜不报优的做法,项目文档差,过分强调计划,而忽视计划任务达到的质量,大部分项目测试没有完成就宣布开发完成,结果前三个月每次经理会上总裁都会表扬他们取得的阶段成果,我做为测试经理没有说话的机会,有一次刚讲几句,总裁马上提醒希望大家克服困难,每个组的任务都可能需要加班等。结果原计划三个月完成项目,已经过了半年发现要实现商用还需要做很多工作,具体完成时间也不确定, 可是现在每天总是强调专人测试,问文档没有,只能通过问了一次又一次的沟通方式实施测试工作, 有个不错的测试人员实在无法忍耐,辞职了,我只好安排新的测试人员应对完成任务。这个CYB项目遭到了整个公司的一片嘘声,虽然没有放弃,但没有商业价值了。快9个月的研发成本老本最清楚去那儿了。
总结教训,项目经理对计划和测试工作的高度重视、周密制定、严格执行是能够实现项目有效商业价值的基本保障。
4.4 重视Review的作用
按软件工程规范化流程,一般把Review和测试作为保证软件质量两个主要手段。测试的重要性已经成为各项目经理认识,并贯穿于开发的全过程,形成了项目组成员人人重视测试工作的氛围。Review则是一个非常简单有效并能尽早发现软件中错误的有效方法,项目经理在每周必须根据进展情况制订Review计划,可以说,任何交付物都要经技术总监参加的Review后才能进行基线化。目前华友公司正在建立比较详细全面、可执行性高的由Review流程和各种交付物的Review Checklist。
文章来源于领测软件测试网 https://www.ltesting.net/