博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
软件缺陷产生的主要因素有哪些
阅读量:3943 次
发布时间:2019-05-24

本文共 767 字,大约阅读时间需要 2 分钟。

由于软件系统越来越复杂,不管是需求分析、程序设计等都面临越来越大的挑战。

由于软件开发人员思维上的主观局限性,且目前开发的软件系统都具有相当的复杂性,决定了在开发过程中出现软件错误是不可避免的。造成软件缺陷的主要原因有哪些?可以从软件本身、团队工作和技术问题等多个方面分析,以确定造成软件缺陷的主要因素。

1.技术问题

  1. 开发人员技术的限制,系统设计不能够全面考虑功能、性能和安全性的平衡。
  2. 刚开始采用新技术,解决和处理问题时不够成熟。
  3. 由于逻辑过于复杂,很难在第一次就将问题全部处理好。
  4. 系统结构设计不合理或算法不科学,造成系统性能低下。
  5. 接口参数太多,导致参数传递不匹配。
  6. 需求规格说明书中有些功能在技术上无法实现。
  7. 没有考虑系统崩溃后的自我恢复或数据的异地备份,灾难性恢复等需求,导致系统存在安全性、可靠性的隐患。
  8. 一般情况下,对应的编程语言编译器可以发现这类问题;对于解释性语言,只能在测 试运行的时候发现。

2.软件本身

  1. 不完善的软件开发标准或开发流程。
  2. 文档错误、内容不正确或拼写错误。
  3. 没有考虑大量数据使用场合,从而可能会引起强度或负载问题。
  4. 对程序逻辑路径或数据范围的边界考虑不够周全,漏掉某几个边界条件造成的问题。
  5. 对一些实时应用系统,缺乏整体考虑和精心设计,忽视了时间同步的要求,从而引起系 统各单元之间不协调、不一致性的问题。
  6. 与硬件、第三方系统软件之间存在接口或依赖性。

3.团队工作

  1. 团队文化,如对软件质量不够重视。
  2. 系统分析时对客户的需求不是十分清楚,或者和用户的沟通存在一些困难,从而造成对用户需求的误解或理解不够全面。
  3. 不同阶段的开发人员相互理解不一致,软件设计对需求分析结果的理解偏差,编程人员对系统设计规格说明书中某些内容重视不够,或存在着误解。
  4. 设计或编程上的一些假定或依赖性,没有得到充分的沟通。

转载地址:http://nwiwi.baihongyu.com/

你可能感兴趣的文章
VMware无法识别USB设备的解决方法 以及 从虚拟机中断开USB设备,使其重新连接到windows主机上
查看>>
linux下C代码、C++代码和命令行方式,完成字符集编码的转换
查看>>
写代码就像写作文
查看>>
常用shell特殊符号变量一览
查看>>
如何做事
查看>>
架构实践 - 1. 架构风格
查看>>
架构实践 - 3. 基于事件系统的demo
查看>>
架构实践 - 4. 架构设计之进程通信(独立构件风格)
查看>>
架构实践 - 5. 基于进程通信的demo
查看>>
sys/time.h 和 time.h的区别
查看>>
1、蓝牙概述
查看>>
2 系统架构师 - 知识框架
查看>>
Linux下 socket-tcp通信
查看>>
小米笔记本解决风扇异响
查看>>
Linux下 socket-udp通信
查看>>
Linux - 守护进程-1
查看>>
syslog 和 rsyslog
查看>>
Linux下,write/read,recv/send, recvfrom/sendto的区别
查看>>
ubuntu下 rc.local的脚本不运行
查看>>
Linux下简单Makefile文件的编写
查看>>