资源描述
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
安徽农业大学经济技术学院2012―2013学年
第一学期
《软件工程》试卷(B卷)
考试形式: 闭卷笔试,2小时
适用专业: 计算机科学与技术 (注:分大类或全校等)
注明适用机制专业、试卷所需时间120分钟、闭卷、试卷总分100分
题 号
一
二
三
四
总 分
得 分
得分
评阅人
一、单项选择题(每小题1分,共计20分)
1、在结构化设计(SD)方法中全面指导模块划分的最重要的原则是( )
A、程序模块化 B、模块高内聚 C、模块低耦合 D、模块独立性
2、软件维护产生的副作用,是指( )
A、开发时的错误 B、隐含的错误C、因修改软件而造成的错误 D、运行时误操作
3、使用程序设计的控制结构导出测试用例的测试方法是( )
A、黑盒测试 B、白盒测试 c.边界测试 D、系统测试
4、软件详细设计的主要任务是确定每个模块的( )
A、算法和使用的数据结构 B、外部接口 C、功能 D、编程
5、软件结构图的形态特征能反映程序重用率的是( )
A、深度 B、宽度 C、扇入 D、扇出
6、为了提高模块的独立性,模块内部最好是( )
A、逻辑内聚 B、时间内聚 C、功能内聚 D、通信内聚
7、软件结构图中,模块框之间若有直线连接,表示它们之间存在( )
A、调用关系 B、组成关系 C、链接关系 D、顺序执行关系
8、需求分析最终结果是产生( )
A、项目开发计划 B、需求规格说明书 C、设计说明书 D、可行性分析报告
9、因计算机硬件和软件环境的变化而作出的修改软件的过程称为( )
A、纠正性维护 B、适应性维护 C、完善性维护 D、预防性维护
10、只有单重继承的类层次结构是( )层次结构。
A、网状型 B、星型 C、树型 D、环型
11、快速原型模型的主要特点之一是( )
A、开发完毕才见到产品 B、及早提供全部完整的软件产品
C、开发完毕后才见到工作软件 D、及早提供工作软件
12、下列属于维护阶段的文档是( )
A、软件规格说明 B、用户操作手册 C、软件问题报告 D、软件测试分析报告
13、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是( )
A、条件覆盖法 B、等价分类法 C、边界值分析法 D、错误推测法
14、不适合作为科学工程计算的语言是( )
A、Pascal B、 C C、Fortran D、 Prolog
15、研究开发所需要的成本和资源是属于可行性研究中的( )研究的一方面。
A. 技术可行性 B. 经济可行性 C. 社会可行性 D. 法律可行性
16、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )
A. 软件工程 B. 软件周期 C. 软件危机 D. 软件产生
17、按软件生命周期方法设计软件的过程中,画数据流图属于下面哪个阶段的工作( )
A、需求分析 B、概要设计 C、详细设计 D、软件维护
18、经过严密的软件测试后所提交给用户的软件产品中( )
A、软件不再包含任何错误 B、还可能包含少量软件错误
C、所提交给用户的可执行文件不会含有错误 D、文档中不会含有错误。
19、等价划分测试方法属于( )
A、黑盒测试 B、白盒测试 C、边界测试 D、系统测试
20、为避免修改软件的“涟漪效应”,模块之间的耦合最好是( )
A、内容耦合 B、控制耦合 C、数据耦合 D、印记耦合
得分
评阅人
二、名词解释(每小题2分,共计20分)
21、数据字典(DD)
是关于数据的信息的集合,更确切地说是对数据流图中包含的所有元素的定义的集合。它的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。它与数据流图共同构成系统的逻辑模型。
22、白盒测试
是一种测试软件内部工作过程的测试方法,主要是根据程序的控制结构来设计测试用例,主要用于测试模块的每一个独立路径,检验程序中的每一条通路是否都能按照预定的要求正确工作,验证所有内部数据结构的有效性。
23、数据流图
是描述数据处理过程的工具。它从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。
24、信息隐蔽
通过定义一组独立的模块来实现,这些模块相互之间只交流实现软件功能必须的信息。它加强了模块内部过程细节或模块使用的任何局部数据结构的访问约束,它特别有利于软件维护。
25、软件维护
软件维护是软件生命周期的最后一个阶段,是在软件已经交付给用户使用之后,为了改正软件错误或满足新的需要而修改软件的过程。它包括四种类型的维护活动:改正型维护、适应型维护、预防型维护和完善型维护。
26、内聚性
内聚性是指一个模块内各个元素彼此结合的紧密程度,它是信息隐蔽和局部化概念的自然扩展。简单地说,理想的内聚模块只做一件事情。内聚和耦合是密切相关的,模块内的高内聚往往意味着模块间的松耦合。
27、软件测试
软件测试是一个为了寻找软件错误而运行程序的过程。目的就是为了发现软件中的错误。一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。
28、软件可移植性
把程序从一种硬件配置和软件系统环境转移到另一种配置和环境时,需要的工作量是多少。这种工作量的大小反映了软件移植的难易程度。
29、模块耦合
是对一个软件结构内不同模块之间互连程度的度量。耦合的强弱取决于模块间接口的复杂程度,进入和访问一个模块的点,以及通过接口的数据。
30、软件质量
与软件产品满足规定的和隐含的需求的能力有关的特征或特性的全体,是所有描述计算机软件优秀程度的特性的组合。
得分
评阅人
三、简答题(每小题4分,共计20分)
31、简述软件结构设计的启发式原则。
(1)改进软件结构提高模块独立性;
(2)模块规模要适中;
(3)深度、宽度、扇出和扇入都应适当;
(4)模块的作用域应该在控制域内;
(5)力争降低模块接口的复杂度;
(6)设计单入口单出口的模块;
(7)模块功能应该可以预测。
32、简述软件测试的任务、目的与类型。
软件测试是一个为了寻找软件错误而运行程序的过程。目的就是为了发现软件中的错误。一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。软件测试主要分为白盒测试和黑盒测试两大类。
33、简述文档在软件工程中的作用。
(1) 提高软件开发过程的能见度
(2) 提高开发效率
(3) 作为开发人员阶段工作成果和结束标志
(4) 记录开发过程的有关信息便于使用与维护;
(5) 提供软件运行、维护和培训有关资料;
(6) 便于用户了解软件功能、性能。
34、简述结构化程序设计方法的基本要点
(1)采用自顶向下,逐步求精的程序设计方法。
(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环
(3)采用主程序员组的组织形式。
(4)采用单入口单出口的模块形式。
35、简述软件工程目标和面临的主要问题。
软件工程的目标就是建造高质量的软件。但是目前的软件开发面临着许多问题:(1)对软件开发成本和进度的估计常常很不准确。(2)用户常对“已完成的”软件系统不满意。(3)软件产品的质量往往靠不住。(4)软件常常很难维护。(5)软件常常缺乏适当的文档资料。(6)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。(7)软件成本在计算机系统总成本中所占的比例逐年上升。
得分
评阅人
四、应用设计题(每小题20分,共计40分)
36、某培训中心要研制一个计算机管理系统。它的业务是:
将学员发来的信件收集分类后,按几种不同的情况处理。
(1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
(2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
(3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求画出该系统的数据流程图,并将其转换为软件结构图。
37、问题描述为:储户用存折取款,首先填写取款单,根据帐卡中的信息检验取款单与存折,如有问题,将问题反馈给用户,否则,登录储户存款数据库,修改响应数据,并更新帐卡,同时发出付款通知,出纳向储户付款。请确定系统的类,并给出任意2个类的类图。
一、单项选择题(每小题1分,共计20分)
1.D 2. C 3. C 4. A 5. C 6. C 7. A 8. B
9. B 10 C 11 D 12 C 13 C 14 D 15 B 16 C
17 A 18 B 19 A 20 A
二、名词解释
21 数据字典:是关于数据的信息的集合,更确切地说是对数据流图中包含的所有元素的定义的集合。它的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。它与数据流图共同构成系统的逻辑模型。
22白盒测试:是一种测试软件内部工作过程的测试方法,主要是根据程序的控制结构来设计测试用例,主要用于测试模块的每一个独立路径,检验程序中的每一条通路是否都能按照预定的要求正确工作,验证所有内部数据结构的有效性。
23数据流图:是描述数据处理过程的工具。它从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。
24信息隐蔽:通过定义一组独立的模块来实现,这些模块相互之间只交流实现软件功能必须的信息。它加强了模块内部过程细节或模块使用的任何局部数据结构的访问约束,它特别有利于软件维护。
25软件维护是软件生命周期的最后一个阶段,是在软件已经交付给用户使用之后,为了改正软件错误或满足新的需要而修改软件的过程。它包括四种类型的维护活动:改正型维护、适应型维护、预防型维护和完善型维护。
26内聚性是指一个模块内各个元素彼此结合的紧密程度,它是信息隐蔽和局部化概念的自然扩展。简单地说,理想的内聚模块只做一件事情。内聚和耦合是密切相关的,模块内的高内聚往往意味着模块间的松耦合。
27软件测试是一个为了寻找软件错误而运行程序的过程。目的就是为了发现软件中的错误。一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。
28软件可移植性:把程序从一种硬件配置和软件系统环境转移到另一种配置和环境时,需要的工作量是多少。这种工作量的大小反映了软件移植的难易程度。
29模块耦合:是对一个软件结构内不同模块之间互连程度的度量。耦合的强弱取决于模块间接口的复杂程度,进入和访问一个模块的点,以及通过接口的数据。
30软件质量:与软件产品满足规定的和隐含的需求的能力有关的特征或特性的全体,是所有描述计算机软件优秀程度的特性的组合。
三、简答题
31、(1)改进软件结构提高模块独立性;
(2)模块规模要适中;
(3)深度、宽度、扇出和扇入都应适当;
(4)模块的作用域应该在控制域内;
(5)力争降低模块接口的复杂度;
(6)设计单入口单出口的模块;
(7)模块功能应该可以预测。
32、软件测试是一个为了寻找软件错误而运行程序的过程。目的就是为了发现软件中的错误。一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。软件测试主要分为白盒测试和黑盒测试两大类。
33、(1) 提高软件开发过程的能见度
(2) 提高开发效率
(3) 作为开发人员阶段工作成果和结束标志
(4) 记录开发过程的有关信息便于使用与维护;
(5) 提供软件运行、维护和培训有关资料;
(6) 便于用户了解软件功能、性能。
34、(1)采用自顶向下,逐步求精的程序设计方法。
(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环
(3)采用主程序员组的组织形式。
(4)采用单入口单出口的模块形式。
35、软件工程的目标就是建造高质量的软件。但是目前的软件开发面临着许多问题:(1)对软件开发成本和进度的估计常常很不准确。(2)用户常对“已完成的”软件系统不满意。(3)软件产品的质量往往靠不住。(4)软件常常很难维护。(5)软件常常缺乏适当的文档资料。(6)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。(7)软件成本在计算机系统总成本中所占的比例逐年上升。
四、应用设计题(每小题20分,共计40分)36 (1)数据流图(10分)
(2)软件结构(10分)
37、
(1) 储户、帐卡、存折、取款单、储户存款数据库、付款(每个2分)
储户
用户名:字符串
帐号:字符串
密码:字符串
填写取款单()
查询存款()
帐卡
用户名:字符串
帐号:字符串
密码:字符串
验证帐号()
验证密码()
显示存款信息()
返回错误信息()
(一个类图4分)
----------------------------精品word文档 值得下载 值得拥有----------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------
展开阅读全文