软件工程概论第一章答案
选择题
一、单选题 (共10题,50分)
1、软件的定义多种多样,现在一般认为软件定义中不包含
A、 程序
B、 数据
C、 文档
D、 界面
正确答案: D
解析:常见的软件定义是:程序+数据+文档
2、哪类软件可以免费试用,但却不能获取源代码,进行适应性修改。
A、 专属软件
B、 免费软件
C、 共享软件
D、 自由软件
正确答案: B
解析:专属软件:通常不允许用户随意的复制、研究、修改或散布该软件
自由软件:赋予用户复制、研究、修改和散布该软件的权利,并提供源码供用户自由使用,仅给予些许的其它限制。以Linux、Firefox 和OpenOffice 可做为此类软件的代表
共享软件:通常可免费的取得并使用其试用版,但在功能或使用期间上受到限制。
免费软件:可免费取得和转载,但并不提供源码,也无法修改。
公共软件:原作者已放弃权利,著作权过期,或作者已经不可考究的软件。使用上无任何限制。
**3、**造成大型软件开发困难的根本原因在于。
A、 对软件开发的资金投入不足
B、 项目开发进度不合理
C、 软件系统的复杂性
D、 开发人员缺乏足够的开发经验
正确答案: C
解析:软件开发的难度主要取决于要解决的业务问题的复杂性,从而会造成软件本身的复杂性,包括状态、结构等诸多复杂性问题。
**4、**软件和硬件不同,不会出现硬件磨损,但是软件会逐渐退化直至消亡,其原因在于
A、 软件备件很难订购
B、 软件错误在经常使用之后会逐渐增加
C、 软件通常暴露在恶劣的环境下
D、 不断的变更使组件接口之间引起错误
正确答案: D
解析:本题属于软件演化问题。软件是逻辑实体,不存在硬件的老化磨损等问题,但会随着业务环境的变更,从而造成对软件的诸多修改,从而导致质量下降,其中就包含了软件组件接口的复杂度上升,从而引发诸多错误。
**5、**软件危机的主要原因是
A、 软件工具落后。
B、 对软件的认识不够
C、 软件本身的特点及其开发方法
D、 软件生产能力不足
正确答案: C
解析:未认识到软件的本身特点,与硬件制造的差异,没有形成适合软件的开发方法!
**6、**下列哪个办法不属于解决软件危机的途径之一
A、 采用面向对象的软件设计方法
B、 采用软件工程的解决途径
C、 研制新一代智能计算机
D、 大力扶持软件企业
正确答案: D
解析:解决软件危机有多种途径和方法,如总结好的设计方法、形成过程模型、加强项目管理,更强更好的智能计算机硬件也可以,但大力扶持软件企业并不能直接缓解和解决软件危机!
**7、**下面说法正确的是
A、 大多数软件系统是不容易修改的,除非在设计时就考虑了将来的变化
B、 购买大多数计算机系统所需的硬件比软件更昂贵
C、 由于软件是产品,因此可以应用其他工程制品所用的技术进行生产
D、 一般来说,软件只有在其行为与开发者的目标一致的情况下才能成功
正确答案: A
解析:
**8、**下面有关软件质量的概念,描述正确的是 。
A、 软件产品质量越高越好,最理想的情况是达到"零缺陷"
B、 软件质量是在开发过程中逐渐构建起来的
C、 运行正确的软件就是高质量的软件
D、 软件质量是由产品的功能、性能、易用性等外在特性决定的
正确答案: B
解析:
**9、**从软件发展的历史来看,目前为止提高软件生产率最有效、最有用的方法是
A、 Abstraction
B、 Process model
C、 Reuse
D、 Prototyping Method
正确答案: C
解析:
10、用户对软件最不满意的是软件出现了 。
A、 Error
B、 Fault
C、 Failure
正确答案: C
解析:
简答题
二、填空题 (共5题,50分)
1、软件工程出现的原因是 。
正确答案: **
*第1空:***
软件危机
解析:由于出现了软件危机,北大西洋公约组织1968年召开第一次软件工程会议,试图采用工程化的方法来解决软件危机。
2、软件与硬件有着很大的区别,它难以被直接触摸、感觉,这指的是软件的 性;软件很容易被修改或改变其行为,指的是软件的 性;软件执行的动作,人类很难完成,这指的是软件的 。
正确答案: **
*第1空:***
不可见
**
*第2空:***
灵活
**
*第3空:***
逻辑
解析:
3、Software products are large and complex,so development requires some methods.
decomposes a large problem into smaller, understandable pieces.
builds (composes) a software from smaller building blocks.
正确答案: **
*第1空:***
analysis
**
*第2空:***
synthesis
解析:
4、Generally we must consider software quality in at least three ways: the quality of the , the quality of , that results in the product, and the quality of the product in the context of the in which the product will be used.
正确答案: **
*第1空:***
product
**
*第2空:***
process
**
*第3空:***
business environment
解析:软件质量一般从三个角度考虑,产品本身的质量,生成产品过程的质量,以及在商业环境中产品的质量,即投资回报率。
5、An is a description of the problem at some level of generalization that allows us to concentrate on the key aspects of the problem without getting mired in the details.
正确答案: **
*第1空:***
abstraction
解析:抽象的基本解释,抽象是对问题在某种程度上的概括描述,它允许我们专注于问题的关键方面而不陷入细节。