软件的质量贯穿于整个软件的生命周期,尽管好的需求管理,好的软件设计,好的编码管理,充分的测试不能保证一定能够产出拥有“质量”的产品,但是有“质量”的产品一定是包含了上述条件,因此这些因素是必要的。如果要保证每个阶段的工作产品质量才能得到最终产品的质量。
分类 | 问题 | 措施 | 责任人 | 监督 |
工程管理类 | 提交测试的系统没有需求基线,不能确定测试工作是否结束 | 确定需求的版本和该版本的范围,这样就限定了测试的范围,测试工作可以按照版本进行,产品就会按照版本演化 | 项目负责人 | 测试工程师 |
需求变更没有得到有效合理的控制 | 需求如果有调整和变更需要记录下来,并在需求的基线版本中体现出来 | 项目负责人 | 测试工程师 | |
需求变更相关研发干系人没有通知到位,导致理解需求上产生歧义 | 需求的变更要通知设计人员和测试人员,大家需要看到文字材料作为凭证 | 项目负责人 | 测试工程师 | |
需求说明书没有得到及时的更新和维护 | 可以先把需求记录到控制变更型管理系统中,等到开发出基线版本的产品时再来写成文档。 | 项目负责人 | 测试工程师 | |
需求撰写的质量不高 | 购书自学或者培训,多写文档多锻炼,加强评审 | 项目负责人 | 测试工程师 | |
还没有清楚设计已经进行开发 | 需求的分析和设计需要一个方案展示得到一致的认可,可以开评审会。 | 设计人员 | 质量工程师 | |
评审会演变成需求或者设计讨论会 | 项目负责人一定要有认识:评审会评审的一定是最终认为可以提交评审的稿件和产品(能提交一个半成品论文去答辩吗?) 评审会最好提前两天通知,好让参会人员能够充分准备。 | 项目负责人 | 质量工程师 | |
设计表述不能理解,UML图的应用场景 | 测试需要的不是UML图,而是把软件的结构、程序的控制方式,数据组织方式与结构描述清楚即可认为设计是有效的,可以使用过程描述方法。 | 项目负责人 | 测试工程师 | |
设计时不考虑数据的精度和准度 | 需要做设计用例 | 项目负责人 | 测试工程师 | |
选择开发技术时没有考虑到产品稳定的需求,技术不成熟带来的BUG影响产品质量 | 需要加强技术实验和技术评估的管理,形成相应的报告。 | 开发工程师 | 测试工程师 | |
没有关注软件实际的运营环境和硬件条件 | 一定在项目早期做好计划和规划,这个问题主要是反映在浏览器兼容性、IPAD等操作系统的版本上。 | 开发工程师 | 测试工程师 | |
开发的时候是否考虑到了代码的优化(代码优化主要包括复用和算法性能) | 1.需要做代码静态结构分析和单元测试。 2.另外可以使用白盒代码的专用测试工具对代码复杂度进行测量。 | 1.开发工程师 2.测试工程师 | 暂无 | |
测试数据库与开发数据库是同一个数据库,测试数据常常被修改清空 | 建议建立开发调试数据库和测试数据库,测试数据库有专用的测试数据和脚本。 | 开发工程师 | 测试工程师 | |
压力测试的需求不明确 | 需要和需求人员一起建立一个压力测试的情景,制定相应的测试用例 | 测试工程师 | 质量工程师 | |
项目管理类 | 只有一个大的计划,没有把计划分割成一个个更小的任务,要知道,大的计划如果不分割成任务很难落实和具体实施。 | 按照3个工作包(一个工作包是每天8小时)的工作量安排任务。 指定的项目负责人需要对开发计划上的内容进行逐一的落实,关于管理方法和方式需要加强个人的知识结构和能力培训。 | 项目负责人 | 质量工程师 |
项目计划没有把工作流程安排进去,计划中多是技术活动缺乏必要的管理活动。 | 要按照研发中心目前制定的工作流程进行计划安排,定岗定责安排到个人完成某项具体的工作或者流程节点。 如果不能由个人单独完成的必须确定主要负责人。 | 项目负责人 | 质量工程师 | |
项目中各岗位人员的职责没有覆盖到具体的工作中,流程无法进行有效的衔接。 | 项目开始时应该召开会议确定各个人员的项目职责,确定项目的章程,即要规定谁来做,怎么做事情,什么时间做。 | 项目负责人 | 质量工程师 | |
计划因某些原因拖延,进度压力留在后期。 | 要对计划拖延的原因进行记录和分析。 | 项目负责人 | ||
项目成员之间的沟通存在困难。 | 项目负责人主要的一个职责就是要处理好各个项目人员之间的沟通,每个人都有自己特定的工作,需要项目负责人进行协调。 主要解决在将进入里程碑时要做好进度、质量、文档的协调工作。 | 项目负责人 | ||
支持管理类 | 特定项目中的开发环境配置没有得到统一的管理,造成缺陷无法追溯到版本。 |
| 开发工程师 | 测试工程师 |