哈尔滨理工大学
2002-2003学年第二学期考试试题A卷
一、选择题(本大题共15小题,每小题1分,共计15分):
1、在软件生存周期中,()阶段的工作量最大,约占总工作量的70%。
A.需求分析
B.软件设计
C.测试
D.维护
2、影响软件可维护性的软件属性包括软件的可理解性、可测试性与()。
A. 可修改性
B. 可靠性
C.效率
D.可用性
3、软件开发时,一个错误发现得越晚,为改正它所付出的代价就( )。
A.越大
B.越小
C.越不可捉摸
D.越接近平均水平
4、软件测试的目的是()。
A.评价软件的质量
B.发现软件中的错误
C.找出软件中所有错误
D.证明软件是正确的
5、在详细设计中,( )可作为模块的过程性描述工具。
A.N-S图
B.HIPO图
C.SC图
D.因果图
6、符合编码风格要求的是( )。
A.尽可能把程序编得短些
B.使用有意义的变量名
C.注释越少越好
D.尽可能多地使用GOTO语句
7、为了提高测试的效率,应该()。
A.随机地选取测试数据
B.取一切可能的输入数据作为测试数据
C.完成编码后制定软件测试计划
D.选择发现错误可能性大的数据作为测试数据
8、结构化需求分析用于数据描述的工具是()和数据字典。
A.程序图
B.流程图
C.数据流图
D.PAD图
9、在结构化设计方法中,用于显示软件的组成模块及其调用关系的是()。
A.PAD
B.HIPO图
C.SC图
D.因果图
10、模块化设计的指导思想是分解、信息隐藏与()。
A.抽象
B.数据独立性
C.程序独立性
D.模块独立性
11、有利于软件可维护性的错误叙述是()。
A.设计时应加强模块间联系
B.提高程序的易读性
C.重视程序结构的设计,使程序具有较好的结构
D.尽可能在软件生产中保证各阶段文档的正确性
12、原型化方法是设计者与用户之间进行的一种交互过程,适用于()的系统。
A.需求不确定性高
B.需求明确
C.管理信息
D.决策支持
13、配置管理的目的是保证资料的完整性与()。
A.有效性
B.一致性
C.完善性
D.准确性
14、关于模块化设计的错误叙述是()。
A.软件的功能便于扩充
B.程序易于理解也便于纠错
C.便于由多人分工编制大型软件
D.程序设计方便,但难以维护
15、模块独立性要求()和()。
A.低内聚
B.高耦合
C.高内聚
D.低耦合
二、简答(本大题共10小题,每小题5分,共计50分):
1、原型模型的基本思想是什么?
2、什么是软件可靠性?
3、什么是软件生存周期?
4、软件设计包括哪几个阶段?
5、可行性研究包含哪些方面的内容?
6、软件维护分为哪些类型?
7、面向数据结构的方法的特点是什么?
8、软件的典型结构形式有哪几种?
9、什么是内聚?什么是耦合?
10、黑盒测试法与白盒测试法进行程序测试的区别是什么?
三、有一自动售饮料机,可售可乐和橙汁两种饮料,两种饮料价格均为五角钱。
当投入五角硬币并按下相应按钮,即可售出相应饮料;当投入一元硬币并按下相应按钮,若有零钱找,则可售出相应饮料并找回五角钱,若无零钱找,则退回一元钱。
是否有零钱找,需由“有零找”指示灯标识;若只投入硬币而不按按钮,则无任何动作。
试用判定表描述该加工逻辑。
(本大题共计15分)。
四、下面是选择排序的程序,其中data是数组名,n是数组长度。
Void SelectSort (int data[ ], int n)
{ for (int I=0;I<n-1;I++)
{ int k=I;
for (int j=I+1;j<n;j++)
if (data[j]<data[k]) k=j;
if (k!=I)
{int temp=data[k];
data[k]=data[I];
data[I]=temp;} } }
1、试画出程序流程图,导出程序图。
2、试用路径覆盖法给出测试路径,为各测试路径设计测试用例。
(本大题共2小题,每小题10分,共计20分)。