我是个开发人员,也是个测试人员。我的梦想就在我的空间!

原创 小论——软件缺陷

上一篇 / 下一篇  2008-05-12 15:06:57 / 个人分类:测试杂谈

    什么是软件缺陷?理论的解释如下:

  1. 软件未达到产品说明书中标明的功能。
  2. 软件出现了产品说明书中指明不会出现的错误。
  3. 软件功能超出了产品说明书指明的范围。
  4. 软件未达到说明书虽未指出但应达到的目标
  5. 软件测试人员认为软件难以理解、不易使用、运行速度慢,或最终用户认为不好使用。

    现在针对国内企业的某些情况来谈论一下,不正确之处希望大家多多提宝贵意见。

    软件未达到产品说明书中标明的功能
    这点无可厚非,产品说明书的功能都没能达到,这样的软件在用户的验收就不会过。可偏巧有某些公司说,我就要这几个功能,其他的你们给我去掉。公司偷笑:“白痴的钱真好赚。”
    大家想想,现在程序的设计思路是什?好多公司选用配置信息,软件所有的功能都能进行配置,需要什么样的功能给配什么样的功能。这样的思路很先进,软件开发实现的时候算法如何来写,确保软件的效率高呢?需求说明书应该怎么来设计,系统构架如何来设计?造成的弊端是不断的改需求分析,改程序,让程序越来越烂。就是俗语“出力不讨好~”!

   软件出现了产品说明书中指明不会出现的错误
   系统需求说明书在几天内完成,凭借开发经理根据以前老项目的经验写出来需求分析模板,再根据用户的要求东拼西凑出来需求分析说明书,测试凭借这样的需求分析说明书,能写出什么样的测试用例?能设计好测试用例吗?再加上测试思考的范围太狭隘,目的就是为了找出BUG,而设计的测试用例,这样的用例有何价值?

    软件功能超出了产品说明书指明的范围
    在很多人认为这是不可能产生的。但在实际开发中为了避重就轻,很容易产生某些说明书中并没指明的某些功能,这些辅助功能的目的是为了更好的完成系统主要功能,但是大家有没有想过,用户购买一个产品的目的是什么?答案是简化工作量。一个软件不能为用户减轻工作,请问谁还会来购买这个软件呢?

    软件未达到说明书虽未指出但应达到的目标
    这块可能说的是软件的可扩展性吧,一个软件的如果没有考虑到扩展性,设计思路肯定有问题。
    (总是觉得跟上一条冲突)不太敢评论!

    软件测试人员认为软件难以理解、不易使用、运行速度慢或最终用户认为不好使用。
    这点把测试人员的定位定太高了吧,测试人员认为软件难以理解?难道开发会根据测试的一句话:“我感觉软件不好理解、不好用”来重新设计需求分析了,重新设计代码了吗?
    运行速度慢,这更不好说了,“测试环境跟真实换进不一样,速度慢是正常的”,开发一句话就能打发了。试问有多少公司舍得花钱模拟真实环境?
    用户认为不好使用,对通用软件来说这是致命问题,不好使用就意味着别人不会购买这个产品。而对行业软件来说,不好使用,只要跟某些领导沟通好让上级强行下发购买任务,不好使用这是问题吗?

    以上只是个人观点,在国内开发、测试有太多太多无奈。

    研究标明64%的BUG出自需求说明书,由谁来设计需求说明书呢?值得讨论!

    国内有几个合格的系统构架师?

PS:如需转载请联系本人。

 


TAG: 测试杂谈

梦的边缘 引用 删除 anny_lv   /   2008-05-12 15:37:17
好的测试能告诉开发或者设计--你那里错了,怎么错了
引用 删除 swimming8243   /   2008-05-12 15:16:50
很有道理,中国软件还缺乏一点就是“阶段性”,无论如何,对于需求的控制不够,总是被迫做一些难以实现的功能,导致整个设计混乱。
如果奔腾1,奔腾2,奔腾3一样的更新,软件也必须是一步一步的变好的,忌讳揠苗助长。
 

评分:0

我来说两句

Open Toolbar