软件开发很少有一帆风顺的,研发过程中出现各种问题则是常态。 无常即有常。 如果我们了解一些常见问题出现的原因和解决办法,可以使得我们的软件开发面对问题更加从容以对。 以下是常见的4类问题的原因分析和解决办法,可供参考。
原因分析:虽然在开发过程中已经采取了评审、测试等去除缺陷的措施,但在后期仍然爆发出很多缺陷,这种情况通常是由于缺陷修改带来新的缺陷造成的。 解决方法:在设计上,增强模块的内聚性,降低耦合性;在测试上,做好回归测试,确保每次缺陷修改后不会引入新的缺陷。如果实施的敏捷开发,还应确保新代码通过测试才能提交,与老代码进行集成。
原因分析:如果一个软件项目到了后期,各种风险集中爆发,通常是因为缺少某些运行场景分支的有效分析,导致在某些质量特性需求方面考虑不足,风险管理有欠缺。 解决方法:加强需求、设计、测试评审,每次评审都应有多种角色参加,确保软件功能需求和非功能需求都得到定义、设计和测试,及时发现开发过程中的潜在风险,建立有效的风险管理策略和应对措施,逐步降低或消除风险。
原因分析:导致软件开发各个环节的进度偏差大,通常是需求和设计变更频繁,风险管理能力弱。 解决方法:软件项目组应提高风险管理能力,邀请系统工程师、开发工程师和测试工程师共同参与风险评估,参考风险评估结果制定开发计划;强化项目早期评审绩效,在项目早期就消除大部分可能的变更。
原因分析:软件验收周期长,迟迟不能交付,通常是因为项目交付的功能/性能不满足客户需求等。 解决方法:与客户一起制定需求验收准则,使得客户验收有一个双方都认可的标准可依;软件测试应确保功能/性能/质量特性需求被覆盖,测试是充分和有效的。 总之,解决软件研发的问题,需要有软件项目组各角色的共同参与,实施技术和管理上的综合改进。 这正是: 缺陷居高不可怕,应对风险不爆发 验收周期不要长,进度偏差免增大 参考书目:软件测试价值提升之路,作者:杨晓慧,出版社:机械工业出版社 |
|