- 没有根据需求分析进行设计(对需求分析中没有明确的内容简单的理解,就进行组装。
- 对产生的制约和问题在没有设计方针的情况下即兴发挥的设计
- 对要求以外的状况发生时的动作没有充分研究就进行组装。
- 各协作者间没有充分的检查,设计就结束了。
- 联想最终用户的使用场景来保证品质
- 软件工程学就是从[怎样使软件通过测试]而一路走过来的.
软件开发人员本身进行测试的时候,把关于缺陷的调查反馈到设计(为了不重复相同的错误),这对为了通过测试的软件开发是有用的.把软件的品质从设计阶段开始提高的思考方法,叫做解决本质的方法.图2表明了开发工程和测试工程的关系.
但是,为了提高设计的质量,应该遗失到那些呢?重新研究基本的开发作业是捷径.要同时考虑上流工程和下流工程进行开发作业,特别是下流工程,尽可能的扩大考虑范围,联想最终用户的场景,设定质量的检查点.
从系统分析到实装是开发工程,每个开发工程都对应测试工程.从而保证质量.各工程间设置检查点, 尽可能的扩大考虑范围,从最终用户使用的角度设置检查点.
由软件开发人员测试的局限性
为了保证软件的质量,尽可能早的预测可能发生的缺陷,把缺陷事先在上流工程解决掉,这是最理想的.为了尽可能的在上流工程保证质量,象前面所述的,在开发工程中设置几个检查点是必要的.也就是软件测试能够检验开发作业的内容,评定开发作业的质量.但是,现在的情况是,应该检验开发作业内容的软件测试,却作为保证质量的最后要塞发挥着作用.
软件测试要素
单元测试-CPU为单位的子系统的控制软件的质量检测
-检测控制软件是否按设计动作
-对于开发的程序进行全逻辑覆盖测试
单元集成测试
-CPU为单位的子系统的质量检测
-检测嵌入到硬件的软件是否按设计动作
-使用实际的硬件测试是否全部满足硬件的要求
系统测试
-多个CPU的系统控制软件的质量检测
-检测构成系统的控制软件是否遵守接口设计进行控制
- 进行系统的模块间的接口的全逻辑覆盖测试
- 多个CPU的系统的质量检测
-检测系统是否满足上位要求
- 对于系统要求进行全逻辑覆盖测试
文章来源于领测软件测试网 https://www.ltesting.net/