
软件工程模拟试题 中央电大工学院史红星 一、 填空题(在括号内填写正确的答案,每空1分,共25分) 1.软件生存周期是指软件从( )、( )( )直到最终被废弃 的全过程。 2.现在存入银行P元,年利率为i,n年后可得钱数为( )。 3.数据流图从数据传输和( )角度,以( )方式描述数据流从 输入到输出的传输变换过程。 4.软件需求的正确性必须从一致性、( )、现实性和( )等四 个不同角度验证。 5.在可行性研究中,最难决断和最关键的是( ). 6.如果一个模块完成一组任务,这些任务彼此之间的关系是很松散的,这种内聚称为 ( )。 7.软件开发需要的资源包括( )入硬件工具和(),其中() 是最基本的资源。 8.一个模块拥有的直属下级模块的个数称为( ),一个模块的直接上 级模块的个数称为( 10 9.数据字典最重要的用途是作为( )阶段的工具。 10.在面向对象方法中,事物的静态特征用( )表示,动态特征用 )表示。 11.( )和( )共同构成系统的逻辑模型。 12.软件的维护一般经过( )、( )、 ( )三个步骤。 13.提高软件质量和可靠性的技术大致分为两类,即( )和( )。 二、单项选择题(将一个正确的答案代码填入括号中,每小题2分,共10分) 1.下列哪种方法不是度量效益的方法()。 A.货币的时间价值 B.算法模型估计 C.投资回收期
软件工程模拟试题 中央电大工学院 史红星 一、 填空题(在括号内填写正确的答案,每空 1 分,共 25 分) 1. 软件生存周期是指软件从( )、( )、( )直到最终被废弃 的全过程。 2. 现在存入银行 P 元,年利率为 i,n 年后可得钱数为( )。 3. 数据流图从数据传输和( )角度,以( )方式描述数据流从 输入到输出的传输变换过程。 4. 软件需求的正确性必须从一致性、( )、现实性和( )等四 个不同角度验证。 5. 在可行性研究中,最难决断和最关键的是( )。 6. 如果一个模块完成一组任务,这些任务彼此之间的关系是很松散的,这种內聚称为 ( )。 7. 软件开发需要的资源包括( )、硬件工具和( ),其中( ) 是最基本的资源。 8. 一个模块拥有的直属下级模块的个数称为( ),一个模块的直接上 级模块的个数称为( )。 9. 数据字典最重要的用途是作为( )阶段的工具。 10. 在面向对象方法中,事物的静态特征用( )表示,动态特征用 ( )表示。 11. ( )和( )共同构成系统的逻辑模型。 12. 软件的维护一般经过( )、( )、 ( )三个步骤。 13. 提高软件质量和可靠性的技术大致分为两类,即( )和( )。 二、单项选择题(将一个正确的答案代码填入括号中,每小题 2 分,共 10 分) 1. 下列哪种方法不是度量效益的方法( )。 A. 货币的时间价值 B. 算法模型估计 C. 投资回收期

D.纯收入 2.对于下图,有关描述中错误的是()。 A 订书 P1 订书 学生 教材料 书店 发书 发书 收 款 通 F1教村库存 知 智典4舟 P2 会计 C A.A表示数据输入的源点 B.B表示数据存储文件 C.C表示加工 D.D表示数据存储文件 3.下列工具中,不属于详细设计工具的是()。 A测试工具 B图形工具 C表格工具 D语言工具 4.选择足够多的测试数据,使得判定表达式中的每个条件都取得各种可能的值,而且 每个判定表达式也都取到各种可能的结果。满足这种测试条件的覆盖是()。 A. 判定覆盖 B. 条件覆盖 C. 判定/条件覆盖 D. 条件组合覆盖 5.在编程安全方面,一般来说无法做到()
D. 纯收入 2. 对于下图,有关描述中错误的是( )。 A.A 表示数据输入的源点 B.B 表示数据存储文件 C.C 表示加工 D.D 表示数据存储文件 3. 下列工具中,不属于详细设计工具的是( )。 A 测试工具 B 图形工具 C 表格工具 D 语言工具 4. 选择足够多的测试数据,使得判定表达式中的每个条件都取得各种可能的值,而且 每个判定表达式也都取到各种可能的结果。满足这种测试条件的覆盖是( )。 A. 判定覆盖 B. 条件覆盖 C. 判定/条件覆盖 D. 条件组合覆盖 5. 在编程安全方面,一般来说无法做到( )。 A B C D

A避开错误 B完美无缺,绝无错误 C冗余 D涉及防错程序 三、多项选择题 (将一个以上正确的答案代码填入括号中,每小题2分,共10分) 1.需求分析的基本原则包括()。 A.必须能够表达和理解问题的数据域和功能域 B.自顶向下、逐层分解问题 C.修正系统开发计划 D.要给出系统的逻辑视图和物理视图 2.成本估计方法包括( )。 A.自顶向下估计 B.自底向上估计 C.算法模型估计 D.螺旋型估计 3. 为保证软件的质量可以采取()措施。 严格审查 控制成本 C. 定期复查 D. 科学测试 4.公共环境耦合中的公共环境可以是( ) A. 局部变量 全程变量 C. 内存的公共覆盖区 D. 共享的通信区 5. 优秀的程序员经常使用( )显示他们的经验。 空格 B. 空行 C. 注释
A 避开错误 B 完美无缺,绝无错误 C 冗余 D 涉及防错程序 三、多项选择题 (将一个以上正确的答案代码填入括号中,每小题 2 分,共 10 分) 1. 需求分析的基本原则包括( )。 A. 必须能够表达和理解问题的数据域和功能域 B. 自顶向下、逐层分解问题 C. 修正系统开发计划 D. 要给出系统的逻辑视图和物理视图 2. 成本估计方法包括( )。 A. 自顶向下估计 B. 自底向上估计 C. 算法模型估计 D. 螺旋型估计 3. 为保证软件的质量可以采取( )措施。 A. 严格审查 B. 控制成本 C. 定期复查 D. 科学测试 4. 公共环境耦合中的公共环境可以是( )。 A. 局部变量 B. 全程变量 C. 内存的公共覆盖区 D. 共享的通信区 5. 优秀的程序员经常使用( )显示他们的经验。 A. 空格 B. 空行 C. 注释

D.缩进 四、判断题 (正确的在括号内打上“√”,错误的打上“X”。每小题2分,共10分) 1.软件工程采用的生存周期方法就是从时间角度对软件的开发和维护这个复杂问题 进行分解,将软件生存的时期分为若干阶段。() 2.模块接口简单是软件发生错误的一个主要原因。() 3.PAD图在设置了五种基本的控制结构后,还允许递归使用。() 4.容错就是每个程序采用两种不同的算法编写。() 5.用户需求经常是变化的,因为软件是灵活的,所以总可以满足用户的需求。() 五、问答题(共28分) 1.什么是软件生存周期。(本题5分) 2.简述详细设计的原则?(本题9分) 3.什么是编码风格?为什么要强调编码风格?(本题7分) 4.为什么软件测试不应该由程序的编写人员来做?(本题7分) 六、分析题(共17分) 1.已知被测试模块流程图如下,按照“判定覆盖”法,在表格中填入满足测试要求的 数据。(本题10分) begin (A>2)AND(B=1) Y=Y/3
D. 缩进 四、判断题 (正确的在括号内打上“√”,错误的打上“╳”。每小题 2 分,共 10 分) 1. 软件工程采用的生存周期方法就是从时间角度对软件的开发和维护这个复杂问题 进行分解,将软件生存的时期分为若干阶段。( ) 2. 模块接口简单是软件发生错误的一个主要原因。( ) 3. PAD 图在设置了五种基本的控制结构后,还允许递归使用。( ) 4. 容错就是每个程序采用两种不同的算法编写。( ) 5. 用户需求经常是变化的,因为软件是灵活的,所以总可以满足用户的需求。( ) 五、问答题(共 28 分) 1. 什么是软件生存周期。(本题 5 分) 2. 简述详细设计的原则?(本题 9 分) 3. 什么是编码风格?为什么要强调编码风格?(本题 7 分) 4. 为什么软件测试不应该由程序的编写人员来做?(本题 7 分) 六、 分析题 (共 17 分) 1. 已知被测试模块流程图如下,按照“判定覆盖”法,在表格中填入满足测试要求的 数据。 (本题 10 分) begin (A>2)AND(B=1) Y=Y/3 F T b c

(A=3)AND(Y>1) Y=Y.10 Y=Y+10 Return 填写下表 数据 覆盖 覆盖分支 Y值 路径 tt FF 2. 根据下图,回答问题。(本题7分)
填写下表 数据 覆 盖 路径 覆盖分支 Y 值 TT FF 2. 根据下图,回答问题。(本题 7 分) A B C D e m n o p (A=3)AND(Y>1) Y=Y-10 Y=Y+10 Return F T d e

模块A的扇出数是多少: 模块t的扇入数是多少: 该结构的宽度是多少: 该结构的深度是多少
模块 A 的扇出数是多少; 模块 t 的扇入数是多少; 该结构的宽度是多少; 该结构的深度是多少。 f g t s

软件工程模拟试题答案及评分标准 一、填空(每空1分,共25分) 1.开发、使用、维护 2.P(1+i)9 3.加工、图形 4.完整性、有效性 5.技术可行性 6.偶然内聚 7.软件工具、人、人 8.模块的扇出、模块的扇入 9.分析 10.对象的属性、对象的服务(或操作) 11.数据流图DFD、数据字典DD 12.分析和理解程序、修改程序、重新验证程序 13.避开错误技术、容错技术 二、单项选择(每小题2分,共10分) 1.B 2.B 3.A 4.C 5.B 三、多项选择(每小题2分,共10分) 1.ABD 2.ABC 3.ACD 4.BCD 5.ABCD 四、判断题(每小题2分,共10分) 1.√ 2.X
软件工程模拟试题答案及评分标准 一、填空(每空 1 分,共 25 分) 1. 开发、使用、维护 2. P(1+i) n 3. 加工、图形 4. 完整性、有效性 5. 技术可行性 6. 偶然內聚 7. 软件工具、人、人 8. 模块的扇出、模块的扇入 9. 分析 10. 对象的属性、对象的服务(或操作) 11. 数据流图 DFD、数据字典 DD 12. 分析和理解程序、修改程序、重新验证程序 13. 避开错误技术、容错技术 二、单项选择(每小题 2 分,共 10 分) 1. B 2. B 3. A 4. C 5. B 三、多项选择(每小题 2 分,共 10 分) 1. ABD 2. ABC 3. ACD 4. BCD 5. ABCD 四、判断题(每小题 2 分,共 10 分) 1. √ 2. ╳

3.√ 4.X 5.X 五、问答题(共28分) 1、答:一个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时 期,通常把软件经历的这个漫长的时期称为生存周期。软件生存周期就是从提出软件产品开 始,直到该软件产品被淘汰的全过程。 2、答:由于详细设计的蓝图是给人看的,所以模块的逻辑描述要清晰易读、正确可靠。 采用结构化设计方法,改善控制结构,降低程序的复杂程度,从而提高程序的可读性、 可测试性、可维护性。选择恰当描述工具来描述各模块算法。 3、答:编码风格又称程序设计风格或编程风格。编码风格实际上指编程的基本原则。 程序实际上也是一种供人阅读的文章。 编写程序时讲求程序的风格,将大量地减少人们读程序的时间。 良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定 着程序的质量。 4、答:软件测试的目的是为了发现程序中的错误而执行程序的过程。 正确认识测试的目标是十分重要的,测试目标决定了测试方案的设计。如果为了表明程 序是正确的而进行测试,就会设计一些不易暴露错误的测试方案:相反,如果测试是为了发 现程序中的错误,就会力求设计出最能暴露错误的测试方案。 由于测试的目标是暴露程序中的错误,从心理学角度看,由程序的编写者自己进行测试 是不恰当的。 六、分析题(共17分) 1、 答 数据 覆盖 覆盖分支 Y值 路径 A=3B=1Y=6 ce tt 12 A=1B=2Y=0 bd FF -10 注意:本题答案不唯一,学生给出的数字正确就应该算对。 2、答:
3. √ 4. ╳ 5. ╳ 五、问答题(共 28 分) 1、答:一个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时 期,通常把软件经历的这个漫长的时期称为生存周期。软件生存周期就是从提出软件产品开 始,直到该软件产品被淘汰的全过程。 2、答:由于详细设计的蓝图是给人看的,所以模块的逻辑描述要清晰易读、正确可靠。 采用结构化设计方法,改善控制结构,降低程序的复杂程度,从而提高程序的可读性、 可测试性、可维护性。选择恰当描述工具来描述各模块算法。 3、答:编码风格又称程序设计风格或编程风格。编码风格实际上指编程的基本原则。 程序实际上也是一种供人阅读的文章。 编写程序时讲求程序的风格,将大量地减少人们读程序的时间。 良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定 着程序的质量。 4、答:软件测试的目的是为了发现程序中的错误而执行程序的过程。 正确认识测试的目标是十分重要的,测试目标决定了测试方案的设计。如果为了表明程 序是正确的而进行测试,就会设计一些不易暴露错误的测试方案;相反,如果测试是为了发 现程序中的错误,就会力求设计出最能暴露错误的测试方案。 由于测试的目标是暴露程序中的错误,从心理学角度看,由程序的编写者自己进行测试 是不恰当的。 六、 分析题 (共 17 分) 1、 答 数据 覆 盖 路径 覆盖分支 Y 值 A=3 B=1 Y=6 ce TT 12 A=1 B=2 Y=0 bd FF -10 注意:本题答案不唯一,学生给出的数字正确就应该算对。 2、 答:

模块A的扇出数为3: 模块t的扇入数为4: 该结构的宽度为4: 该结构的深度为5
模块 A 的扇出数为 3; 模块 t 的扇入数为 4; 该结构的宽度为 4; 该结构的深度为 5