xx年电大本科软件工程必备复习资料考试小抄内容摘要:

作者: 处理编号: 日期: 输入参数说明: 输出参数说明: 处理说明: 局部数据元素: 备注: 什么是耦合。 什么是内聚。 答案 在软件设计中应该保持模块的独立性原则。 反映模块独立性的有两个标准:内聚 和耦合。 内聚衡量一个模块内部各个元素彼此结合的紧密程度;耦合衡量模块之间彼此依赖的程度。 软件设计时追求高内聚、低耦合。 请画图说明软件工程的层次化结构,并详细分析中间两层的内容。 1 答案 软件工程的内容具有层次化结构,最底层是质量保证层,中间是过程层和方法层,最上层是工具层。 见图: 质量保证层工具层方法层过程层 其中过程层定义了一组关键过程域,目的是保证软件开发过程的规范性和可控性。 方法层提供了软件开发的各种方法,包括如何进行软件需求分析和设计,如何实现设计,如何测试和维护等 方法。 1 请为下面的程序设计符合判定覆盖的测试用例。 int main() { int a,b,c,x,y,z。 scanf(“d%,d%,d%),amp。 a,amp。 b,amp。 c)。 if a5 x=10 else x=1。 if b10 y=20 else y=2。 if c15 z=30 else z=3。 printf(“d%,d%,d% \n”,x,y,z) } 答案 条件 : a5 a=5 b10 b=10 c15 c=15 判定测试用例 (不唯一 ): a=6 b=11 c=16; a=5 b=10 c=15 1请说明快速原型化模型的基本思想。 答案 在需求分析的同时,以比较小的代价快速建立一个能够反映用户主要需求的原型系统。 用户在原型系统上可以进行基本操作,并且提出改进意见,分析人员根据用户的意见完善原型,然后再由用户评价,提出建议,如此往复,直到开发的原型系统满足了用户的需求为止。 基于快速原型化模型的开发过程基本上是线性的,从创建系统原型到系统运行,期间没有反馈环。 这是由于开发人员是在原型的基础上进行系统分析和设计,而原型已经通过了用户和开发 组的审查,在设计阶段由于有原型作设计参考,所以设计的结果正确率比较高。 1下面的程序段 A 被程序员误写成程序段 B,请设计合适的测试用例发现其中的错误。 程序段 A 程序段 B „„ { T=0。 if (A=1)amp。 amp。 (B=2) T=T+1。 else T=T+2。 if (X=90) amp。 amp。 (Y=75) T=T+3。 else T=T+4。 } printf(“d% \n”,T) ; „„ „„ { T=0。 if (A=1)amp。 amp。 (B=2) T=T+1。 else T=T+2。 if (X=90)amp。 amp。 (Y75) T=T+3。 else T=T+4。 } printf(“d% \n”,T) ; „„ 答案 条件组合: A=1 B=2。 A=1 B2 A1 B=2 A1 B2 X=90 Y=75 X=90 Y75 X90 Y=75 X90 Y75 由此获得测试用例: A=1 B=2。 A=1 B=1。 A=0 B=2。 A=0 B=1。 X=90 Y=75。 X=90 Y=1。 X=1 Y=75。 X=1 Y=1。 其中 X=90 Y=75 能够发现错误。 评分标准:答案 不唯一,不管用什么方法,给出的测试用例能够发现错误就给满分。 参考答案为 X=90 Y=75。 1 请举例说明用例之间的包含关系和扩展关系的区别。 答案 包含关系用于构造多个用例共同的活动。 例如,在 ATM 系统中,取钱、查询、更改密码等功能都需要验证用户密码。 这种情况下应该将密码验证功能独立出来,便于复用、减少冗余。 一个用例扩展另一个 用例 的功能,例如,在图书馆信息管理系统中,读者还书时,系统检查所还图书是否有预订记录,如果有则执行“通知”用例。 1 软件设计中的抽象是什么意思。 答案 所谓抽象就是将事务的相 似方面集中和概括起来,暂时忽略它们之间的差异。 或者说,抽象就是抽出事务的本质特性而暂时不考虑它们的细节 1 孩子阅读疲倦时,一定要休息。 如果不疲倦,但是对所阅读的内容不感兴趣,就跳到下一章;如果不疲倦,对内容有兴趣,理解无困难,则继续阅读;如果不疲倦,对内容有兴趣,但理解有困难,则应该重读。 请对上面的描述设计判定表。 答案 疲倦 Y Y Y Y N N N N 感兴趣 Y Y N N Y Y N N 糊涂 Y N Y N Y N Y N 重读 √ 继续 √ 跳到一 下章 √ √ 休息 √ √ √ √ 化简为: 疲倦 Y N N N 感兴趣 Y Y N 糊涂 Y N 重读 √ 继续 √ 跳到一下章 √ 休息 √ 1 活动图与状态图的区别。 答案 描述的重点不同:活动图描述的是从活动到活动的控制流;状态图描述的是对象的状态及状态之间的转移。 使用的场合不同:在分析用例、理解涉及多个用例的工作流、处理多线程应用等情况下,一般使用活动图;在显示一个对象在其生命周期内的行为时,一般使用状态图。 1 试分析结构化方法存在的主要问题是什么。 答案 结构化方法分析和设计阶段所应用的模型之间存在鸿沟。 分析阶段的主要模型是数据流程图,设计阶段的主要模型是软件模块结构图,数据流程图和软件模块结构图之间需要进行转换。 不同的人转换出的模块图可能不同,有很大的随意性。 需求分析的细化程度没有标准,只能凭借分析人员的经验自己把握;需求分析的过程是在一种瀑布形式,当需求变更时,功能变化就会导致软件模块结构发生变化,造成了软件结构不稳定。 结构化程序设计将数据定义与处理数据的过程相分离,不利于软件复用。 结构化方法设 计的软件结构不稳定,缺乏灵活性,可维护性差。 请说明判定表的作用及其结构。 答案 判定表是结构花设计的工具,用于描述多重条件的处理。 分为 4 各部分:条件列表、条件组合、操作列表、特定条件下的操作组合。 2 请给出软件工程七条基本原理中的任意三条基本原理。 答案 原理 1.用分阶段的生命周期计划严格管理 原理 2.坚持进行阶段评审 原理 3.实行严格的产品控制 原理 4.采用现代程序设计技术 原理 5.结果应能清楚地审查 原理 6.开发小组的人员应该少而精 原理 7.承认不断改进软件工程实践的必要性 2 结构 化程序设计的特征是什么。 答案: 结构化程序设计的特征如下:程序模块只有一个入口和一个出口、程序中只包含顺序、条件和循环三种控制结构。 2某学校开发了学生网上选课的系统,学生在网上查找到希望选修的课程,并查看是否还有名额,若有名额就输入学号,系统自动记录该学生的选课信息,并返回选课成功。 下面的顺序图描述了选课成功的情形,请将以下对象填入最合适的位置:系统界面、学生、学生基本信息、学生选课记录、课程基本信息。 ( 2 ) ( 3 )有 有 有 有 有有 有 有 有 有 有 有( 1 )有 有有 有 有 有有 有 有 有有 有有 有 有 有 有 有有 有 有 有有 有 有 有 有有 有 有 有有 有 有 有 有 有有 有 有 有( 4 ) ( 5 ) 答: ( 2 ) 有 有 有 有( 3 ) 有 有 有 有有 有有 有 有 有 有有 有 有 有 有 有 有( 1 ) 有 有有 有有 有 有 有有 有 有 有有 有有 有 有 有 有 有有 有 有 有有 有 有 有 有有 有 有 有有 有 有 有 有 有有 有 有 有( 4 ) 有 有 有 有有 有( 5 ) 有 有 有 有有 有 2软件需求可以分为业务需求、用户需求、功能需求和非功能需求,请分析业务需求与功能需求的区别。 答案 业务需求是用户高层领导机构决定的,它确定软件的目标、规模和范围。 业务需求一般在进行需求分析之前就应该确定,需求分析阶段要以此为参照制定需求调研计划、确定用户核心需求和软件功能需求。 业务需求通常比较简洁,大约三~五页纸就可以描述清楚,也可以将它直接作为需求规格说明书中的一部分。 功能需求定义了软件开发人员必须实现的软件功能。 用户从他们完成任务的角度对软件提出了用户需求,这些需 求通常是凌乱的、非系统化的、有冗余的,开发人员不能据此编写程序。 软件分析人员要充分理解用户需求,将用户需求整理成软件功能需求。 开发人员根据功能需求进行软件设计和编码。 2 对功率大于 50 马力的机器或已运行 10 年以上的机器,应 送到专业的 维修 公司 处理 ;如果功率小于 20 马力,并且有 维修记录 ,则在车间维修;否则送到本厂的维修中心维修, 请建立判定表。 答案 =50 马力 Y N N N =20 马力 N N Y N =10 年 N Y N 有维修记录 Y 送外 √ √ 本厂 √ 本车间 √ 二、 应用题 某企业的设备维修委托给专业的技术公司完成,现在要开发软件对设备维修信息进行管理,具体描述如下: 车间主任填写维修申请单,内容有设备名称、型号、故障描述、维护时间要求、预计费用;填好后交给审计人员,审计人员根据企业的审计规定对维修申请单进行审计,填写审计意见和审计结果,审计意见可以修改费用,审。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。