为什么说软件缺陷的最大来源是软件需求说明
软件需求规格说明书描述了系统应该具有哪些功能/不应该具有哪些功能/功能的操作性如何/性能如何等等具体规格, 是开发初期最重要的过程文档, 也是后期开发与测试的重要依据, 可以说是开发流程与测试流程的输入, 根据过程理论,”正确的输入,正确的过程,正确的解决方案将会产生正确的结果”, 如果一开始输入就不正确, 那么经过过程的处理后, 缺陷/错误会被放大,同时修复的成本会显着上升, 人力物力时间将会被大量耗费, 所以从早期就开始对需求规格说明书进行审查并基线化是必须的, 同时测试人员在需求基线化前应该invoke到流程中,参与评审, 尽早从客户/测试的角度找出所有不合理/不明确/不可行的需求, 减少后期的开发与测试成本. 测试人员以及质量人员在开发初期是比较重要的角色, 责任比较重大, 应当负起责任. 可见, 需求规格说明书是何等重要的文档.
软件测试中缺陷来自哪里?
软件缺陷产生的原因
在软件开发的过程中,软件缺陷的产生是不可避免的。那么造成软件缺陷的主要原因有哪些?从软件本身、团队工作和技术问题等角度分析,就可以了解造成软件缺陷的主要因素。 软件缺陷的产生主要是由软件产品的特点和开发过程决定的。
软件本身
①需求不清晰,导致设计目标偏离客户的需求,从而引起功能或产品特征上的缺陷。 ②系统结构非常复杂,而又无法设计成一个很好的层次结构或组件结构,结果导致意想不到的问题或系统维护、扩充上的困难;即使设计成良好的面向对象的系统,由于对象、类太多,很难完成对各种对象、类相互作用的组合测试,而隐藏着一些参数传递、方法调用、对象状态变化等方面问题。 ③对程序逻辑路径或数据范围的边界考虑不够周全,漏掉某些边界条件,造成容量或边界错误。 ④对一些实时应用,要进行精心设计和技术处理,保证精确的时间同步,否则容易引起时间上不协调,不一致性带来的问题。 ⑤没有考虑系统崩溃后的自我恢复或数据的异地备份、灾难性恢复等问题,从而存在系统安全性、可靠性的隐患。 ⑥系统运行环境的复杂,不仅用户使用的计算机环境千变万化,包括用户的各种操作方式或各种不同的输入数据,容易引起一些特定用户环境下的问题;在系统实际应用中,数据量很大。从而会引起强度或负载问题。 ⑦由于通信端口多、存取和加密手段的矛盾性等,会造成系统的安全性或适用性等问题。 ⑧新技术的采用,可能涉及技术或系统兼容的问题,事先没有考虑到。
团队工作
☆系统需求分析时对客户的需求理解不清楚,或者和用户的沟通存在一些困难。 ☆不同阶段的开发人员相互理解不一致。例如,软件设计人员对需求分析的理解有偏差,编程人员对系统设计规格说明书某些内容重视不够,或存在误解。 ☆对于设计或编程上的一些假定或依赖性,相关人员没有充分沟通。 ☆项目组成员技术水平参差不齐,新员工较多,或培训不够等原因也容易引起问题。
技术问题
○算法错误:在给定条件下没能给出正确或准确的结果。 ○语法错误:对于编译性语言程序,编译器可以发现这类问题;但对于解释性语言程序,只能在测试运行时发现。 ○计算和精度问题:计算的结果没有满足所需要的精度。 ○系统结构不合理、算法选择不科学,造成系统性能低下。 ○接口参数传递不匹配,导致模块集成出现问题。
项目管理的问题
· 缺乏质量文化,不重视质量计划,对质量、资源、任务、成本等的平衡性把握不好,容易挤掉需求分析、评审、测试、等时间,遗留的缺陷会比较多。 · 系统分析时对客户的需求不是十分清楚,或者和用户的沟通存在一些困难。 · 开发周期短,需求分析、设计、编程、测试等各项工作不能完全按照定义好的流程来进行,工作不够充分,结果也就不完整、不准确,错误较多;周期短,还给各类开发人员造成太大的压力,引起一些人为的错误。 · 开发流程不够完善,存在太多的随机性和缺乏严谨的内审或评审机制,容易产生问题。 · 文档不完善,风险估计不足等。
软件缺陷( Software Bug )的具体含义包括几个因素
软件缺陷:
软件未达到产品设计规范表明的功能;
软件出现了产品设计规范指明不会出现的错误;
软件功能超出产品设计规范指明的范围;
软件未达到产品设计规范虽未指出但应达到的目标;
软件测试人员认为软件难以理解、不易使用、运行速度慢,或者最终用户认为不好。
你应该也想知道软件错误吧
计算、观察、测量的值或条件与实际的、规定的或理论上的值或条件不符合;
导致产生含有缺陷的软件的人为行动。
例如,遗漏或误解软件说明书中的用户需求,不正确的翻译或遗漏设计规格说明书中的需求。
上面的统称软件故障
提交高质量的软件缺陷记录,你们使用CQ吗,还是buglist,觉得故障定级要准确,对于随机性出现的错误一定要做好记录,这个最好截图,有些错误真的就出现一次,如果条件允许,你出故障的时候,比如一级故障,截个图,就可以叫研发人员过来看,然后注意老员工的提交记录,学习他们的规范和思考方式,特别要和研发人员保持好关系,否则别人直接无视你的报告,如果你是女的还好,别人不好意思说你,你是男的,直接藐视了,特别注意不要提太多的bug,写bug记录的时候也要站在研发的角度,提出解决方法,建议他们作修改,我的一些个人意见,希望对你有帮助。
所有的软件缺陷到底是谁造成的?(软件测试相关)
软件的缺陷是谁造成的这个问题好像不是很好说,都有链接的关系的 测试人员说是程序员的 可是程序员也可以说是架构师的 只能说是大家努力把软件的缺陷降到最低,要是追究这个责任,项目组的人员都或多或少有责任的,因为软件开发的每一个环节都很重要
为什么软件缺陷的最大来源是软件需求说明?
这个问题很简单 软件开发的目的是为了满足客户,用户的需求 如果软件公司前期没做好需求分析,开发出来的软件却满足不来客户的要求 就需要重新修改,严重的话要重新开发 所以需求分析在整个软件开发周期占了相当大的比例 一句话 开发容易,做需求难额
手机软件出问题一般是哪些原因引起的?软件问题好修不?
手机的软件出现问题,多数是用户在操作的时候误删相关文件造成的,当然有些软件安装后会相互冲突.软件的问题大了放心,不会对机子造成什么影响.也非常好恢复.
软件危机形成的原因!!!
软件危机(Software Crisis) 是计算机软件在它的开发和维护过程中所遇到的一系列严重问题。概括地说,主要包含两方面的问题:如何开发软件,怎样满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。软件发展第二阶段的末期,由于计算机硬件技术的进步。一些复杂的、大型的软件开发项目提出来了,但软件开发技术的进步一直未能满足发展的要求。在软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。主要表现在以下几个方面:
a.经费预算经常突破,完成时间一再拖延。
b.开发的软件不通满足用户要求。
c.开发的软件可维护性差。
d. 开发的软件可靠性差。
软件危机产生的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引起的:
a.软件的规模越来越大,结构越来越复杂。
b.软件开发管理困难而复杂。
c.软件开发费用不断增加。
d.软件开发技术落后。
e.生产方式落后。
f.开发工具落后,生产率提高缓慢。
如何有效地描述软件缺陷
软件缺陷_百度百科 http://baike.baidu.com/view/107502.htm?fr=aladdin 百度文库搜索_软件缺陷 http://wenku.baidu.com/search?word=%E8%BD%AF%E4%BB%B6%E7%BC%BA%E9%99%B7&ie=utf-8&lm=0&od=0 以上都是最正确和权威的描述,咱就不复制内容了,亲自己去看.
为什么软件缺陷难以避免
最直接的原因因为这是人设计的.不管软件当初在设计时方案如何完善,在实际编写中如何规范,自测,测试时如何进行改进,但是也不能做到方方面面都没有纰漏.所以就需要经常进行升级(打补丁),像玩的游戏,手机上用的APP,还有电脑的软件,除了更新内容外,升级所做的事情就是在打补丁,修补以前的BUG