51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5376|回复: 4
打印 上一主题 下一主题

[翻译] Why are there so many software bugs?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-1-10 10:40:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Generally speaking, there are bugs in software because of unclear requirements, software complexity, programming errors, changes in requirements, errors made in bug tracking, time pressure, poorly documented code and/or bugs in tools used in software development.

• There are unclear software requirements because there is miscommunication as to what the software should or shouldn't do.

• Software complexity. All of the followings contribute to the exponential growth in software and system complexity: Windows interfaces, client-server and distributed applications, data communications, enormous relational databases and the sheer size of applications.

• Programming errors occur because programmers and software engineers, like everyone else, can make mistakes.

•As to changing requirements, in some fast-changing business environments, continuously modified requirements are a fact of life. Sometimes customers do not understand the effects of changes, or understand them but request them anyway. And the changes require redesign of the software, rescheduling of resources and some of the work already completed have to be redone or discarded and hardware requirements can be effected, too.

• Bug tracking can result in errors because the complexity of keeping track of changes can result in errors, too.

• Time pressures can cause problems, because scheduling of software projects is not easy and it often requires a lot of guesswork and when deadlines loom and the crunch comes, mistakes will be made.

• Code documentation is tough to maintain and it is also tough to modify code that is poorly documented. The result is bugs. Sometimes there is no incentive for programmers and software engineers to document their code and write clearly documented, understandable code. Sometimes developers get kudos for quickly turning out code, or programmers and software engineers feel they cannot have job security if everyone can understand the code they write, or they believe if the code was hard to write, it should be hard to read.

• Software development tools , including visual tools, class libraries, compilers, scripting tools, can introduce their own bugs. Other times the tools are poorly documented, which can create additional bugs.
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2006-4-26 10:58:42 | 只看该作者
Why are there so many software bugs?
软件里为什么有这么多bug?


Generally speaking, there are bugs in software because of unclear requirements, software complexity, programming errors, changes in requirements, errors made in bug tracking, time pressure, poorly documented code and/or bugs in tools used in software development.
一般来说,bug的产生有以下几个原因:需求欠清晰,软件的复杂性,代码编写的错误,需求发生变化,bug跟踪过程产生错误,紧迫的开发时间,代码注释不尽人意,以及软件开发环境本身有bug。下面一一说明。

·There are unclear software requirements because there is miscommunication as to what the software should or shouldn't do.
·软件需求不清晰,原因是就软件应否实现的功能缺乏有效的沟通。

·Software complexity. All of the followings contribute to the exponential growth in software and system complexity: Windows interfaces, client-server and distributed applications, data communications, enormous relational databases and the sheer size of applications.
·软件的复杂性。以下原因会导致软件与系统的复杂性呈几何级数增长:Windows的界面,CS式与分布式应用程序,数据通讯,大量的关系型数据库,应用程序本身的规模。

·Programming errors occur because programmers and software engineers, like everyone else, can make mistakes.
·代码编写会产生错误,这是因为和别人一样,程序员和软件工程师也会犯错误。

·As to changing requirements, in some fast-changing business environments, continuously modified requirements are a fact of life. Sometimes customers do not understand the effects of changes, or understand them but request them anyway. And the changes require redesign of the software, rescheduling of resources and some of the work already completed have to be redone or discarded and hardware requirements can be effected, too.
·至于需求发生变化,则是因为在一些快速变化的商务环境中,不断地改变需求是一个不争的事实。有时客户并不了解改变需求会造成什么影响,或者虽然了解但硬要改变需求。需求一经改变,软件就要重新设计,各种开发软件所需的资源就要重新计划,一些业已完成的工作必须重做或者直接舍弃。软件的硬件需求也会受到影响。

·Bug tracking can result in errors because the complexity of keeping track of changes can result in errors, too.
·缺陷跟踪会产生错误,这是因为变化跟踪的复杂性也会导致错误的发生。

·Time pressures can cause problems, because scheduling of software projects is not easy and it often requires a lot of guesswork and when deadlines loom and the crunch comes, mistakes will be made.
·紧迫的开发时间会引发问题,因为计划软件项目的进度是不容易的事,并且往往要进行一些不在计划之列的工作。当项目结束的日子来临,开发人员的情绪因而受到影响,错误就会随之而至。

·Code documentation is tough to maintain and it is also tough to modify code that is poorly documented. The result is bugs. Sometimes there is no incentive for programmers and software engineers to document their code and write clearly documented, understandable code. Sometimes developers get kudos for quickly turning out code, or programmers and software engineers feel they cannot have job security if everyone can understand the code they write, or they believe if the code was hard to write, it should be hard to read.
·要维护代码文档是很困难的,而要修改缺乏注释的代码也是很难的。有些时候,程序员和软件工作师不愿意给自己的代码写说明文档,不愿去写注释清楚的易理解的代码。有时开发人员会因为很快写出代码而得到赞许,或者程序员和软件工程师感到如果每个人都能读懂他们的代码,他们就没有工作稳定感了,也许他们相信如果代码难写,代码也很难读懂。

·Software development tools , including visual tools, class libraries, compilers, scripting tools, can introduce their own bugs. Other times the tools are poorly documented, which can create additional bugs.
·软件开发工具,包括可视化开发工具,类库,编译器,脚本工具都会出现它们自己的bug。另外如果这些工具没有完善的帮助文档,这也会导致bug的产生。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2006-4-29 23:07:05 | 只看该作者
加分鼓励,brilliantking,感觉可以给你出一个翻译专辑了,哈哈。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2006-4-30 08:48:55 | 只看该作者
谢谢鼓励!等我再译几篇再开不迟,哈哈!
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2006-6-12 18:09:11 | 只看该作者
你的英文怎么练的?分享一下啊!让人很眼红的哦
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-25 21:32 , Processed in 0.073635 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表