20062007软件工程试题2B附答案802.pdf
-
资源ID:79378655
资源大小:683.30KB
全文页数:15页
- 资源格式: PDF
下载积分:15金币
快捷下载
![游客一键下载](/images/hot.gif)
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
20062007软件工程试题2B附答案802.pdf
北京邮电大学 2006 2007 学年第二学期 软件工程期末考试试题 B 卷 考试注意事项 一、学生参加考试须带学生证或学院证明,未带者不准进入考场。学生必须按照监考教师指定座位就坐。二、书本、参考资料、书包等与考试无关的东西一律放到考场指定位置。三、学生不得另行携带、使用稿纸,要遵守北京邮电大学考场规则,有考场违纪或作弊行为者,按相应规定严肃处理。四、学生必须将答题内容做在专用答题纸上,做在试卷、草稿纸上一律无效。考 试课程 考试时间 年 月 日 题号 一 二 三 四 五 六 七 八 总分 满分 得分 阅 卷教师 一、填空题(共 11 空,每空 1 分,共 11 分)1、软件是一种(逻辑实体),而不是具体的物理实体,因而它具有抽象性。2、需求分析研究的对象是软件项目的(用户/客户/功能+性能/功能)要求。3、需求分析的任务就是借助于当前系统的(逻辑模型)导出目标系统的(逻辑模型),解决目标系统的(“做什么”)的问题。4、结构化需求分析方法由对软件问题的(信息/数据)和(功能)的系统分析过程及其表示方法组成。5、确认测试包括:有效性测试和(软件配置审查,文档审查)。6、白盒测试的逻辑覆盖方法包括语句覆盖、(判定/判断覆盖)、条件覆 班级:学号:班内序号:姓名:-装-订-线-盖、(判定/判断-条件覆盖)、条件组合覆盖、(路径覆盖/路径测试/基本路径测试)。注:次序无关 二、单项选择题(共 5 题,每题 2 分,共 10 分)1、为了提高模块的独立性,模块之间最好是(B)A.控制耦合 B.数据耦合 C.内容耦合 D.公共耦合 2、下列关于功能性注释不正确的说法是(B)A.功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态 B.注释用来说明程序段,需要在每一行都要加注释 C.可使用空行或缩进,以便很容易区分注释和程序 D.修改程序也应修改注释 3、在 UML 状态图中,与转移上的事件联系在一起的瞬时操作是(C)A.过程 B.活动 C.动作 D.加工 4、测试的关键问题是(D)A.如何组织对软件的评审 B.如何验证程序的正确性 C.如何采用综合策略 D.如何选择测试用例 5、以下说法不正确的是(A)。A原型思想是在研究概要设计阶段的方法和技术中产生的。B探索型和实验型原型采用的是抛弃策略。C进化型原型采用的是追加策略。D快速原型方法是利用原型辅助软件开发的一种思想。三、判断题(共 5 题,每题 2 分,共 10 分)1、数据词典包括数据流词条、数据元素词条、数据文件词条以及数据加工逻辑词条四个部分。(错,缺外部实体描述)2、用例代表的视角色的目标,而不是达到角色目标过程中的一个步骤(对)3、状态图之间不能够发送消息。(错,可以)4、软件测试只需要测试计划、测试用例和测试工具就可以进行。(错,还需要软件配置)5、项目开发计划不属于软件开发类文档。(错,属于)四、简答题(共 3 题,每题 5 分,共 15 分)1、请说明软件文档的作用?软件文档的作用是:提高软件开发过程的能见度;提高开发效率;作为开发人员阶段工作成果和结束标志;记录开发过程的有关信息便于使用与维护;提供软件运行、维护和培训有关资料;便于用户了解软件功能、性能。【评分标准:提高软件开发过程能见度 2 分,提供软件运行、维护和培训有关资料 2 分,其他 1 分】2、简述用例描述的组成内容:1)用例的目标 2)用例是如何被启动的 3)角色和用例之间的消息流 4)用例的执行的多个分支 5)用例的前置和后置条件【评分标准:名称和角色 2 分,前置后置条件 1 分,事件流 2 分】3、简述单元测试、集成测试以及确认测试所对应的测试对象。单元测试:代码和详细设计文档 集成测试:详细设计和概要设计文档 确认测试:概要设计和需求规格说明【评分标准:单元测试 1 分,集成 2 分,确认 2 分,如果只是回答了各种测试的含义,每个扣 1 分】五、应用题(共四题,每题 9 分,共 36 分)1、下图是一个选择排序的程序流程图,利用 McCabe 度量方法计算程序复杂度,并根据列出所有的独立路径。【程序控制流程图评分标准:没有条件汇聚,一个扣 0.5 分,条件返回错误,一个扣 1 分,扣完 3 分为止】(1)McCabe 环路复杂性=5(2)独立路径有 5 条:【评分标准:一条路径 0.6 分,错一条扣 0.5,错两条扣 1 分,错三条扣 2 分,错 4 条口 2.5 分,全错 0 分】2、“一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息。”根据这个三角形是三边不等的、是等腰的、还是等边的三个输入条件划分有效和无效等价类。i n-1 i k T T F F F i=0;k=i;j=i+1;j n Vj 0,B 0,C 0,且 A+B C,B+C A,A+C B。如果是等腰的,还要判断是否 A=B,或 B=C,或 A=C。对于等边的,则需判断是否 A=B,且 B=C,且 A=C。列出等价类表:输入条件 有效等价类 无效等价类 是否三角形的三条边(A 0)(1),(B 0)(2),(C 0)(3),(A+B C),(4)(B+C A)(5),(A+C B)(6)【评分标准:1.5 分】A 0(7),B 0(8),C 0(9),A+B C(10),A+C B (11),B+C A(12)【评分标准:1.5 分,应该分开作为无效测试用例,没有分开扣0.5 分】是否等腰三角形(A=B)(13),(B=C)(14),(A=C)(15)【评分标准:1.5 分】(A B)and(B C)and(A C)(16)【评分标准:1.5 分,应该是与的关系,否则扣 0.5 分】是否等边三角形(A=B)and(B=C)and(A=C)(17)【评分标准:1.5 分】(A B)(18),(B C)(19),(A C)(20)【评分标准:1.5 分,应该是或的关系,否则扣 0.5 分】3、有一个程序用来计算用户每月应缴税额。该程序接收用户输入每月收入,按照缴税规则计算每月应缴税额,并按照大写和小写形式输出该用户每月的税后收入。其数据流图如下:用户检查计算税额税额计算规则计算税后收入转换为大写格式用户用户收入收入错误合理收入税则应缴税额税后收入小写格式税后收入大写格式税后收入请给出:该 DFD是变换分析还是事务分析类型?给出该 DFD 转换后的结构图。参考答案:计算用户每月应缴税额程序取得合理收入计算税额计算税后收入输出税后收入读入用户收入收入合理性检查取得税则转换为大写格式大写格式输出小写格式输出用户收入用户收入合理收入合理收入合理收入税则应缴税额税后收入税后收入税后收入大写格式税后收入大写格式税后收入税后收入【评分标准:没有“取得税则”扣 1 分,不能成为模块的一个扣 0.5 分,加工对应的模块,缺一个扣 1.5 分】4、有一个算术表达式,有“、”和“()”五种算符,其中前四种是二元算符,后一种是一元算符,表达式中可以包含常量和变量,请用类图描述一个算术表达式,并给出表达式“(x+2)(y/3-2)”的对象图。参考答案:+interpret()算术表达式+interpret()一元算符表达式-interpret常量表达式+interpret()变量表达式-interpret二元算符表达式+interpret()()表达式+interpret()表达式+interpret()表达式+interpret()表达式+interpret()表达式111111(x2)(y32)(x2)(y32)x2y32x2y32y311111111111111111111【评分标准:类图 5 分,找到类 3 分,其中算术表达式 1 分,常量和变量 1 分,一元和二元表达式 1 分,关联中概括 1 分,聚集 1 分】【评分标准:对象图 4 分,顶层和第一层的对象 3 分,其余 1 分】六、综合题(共一题,共 18 分)1、一所医院根据要求要实现一个电子化的就诊管理系统,其中主要涉及挂号、就诊和交费取药三个环节。挂号:挂号处的挂号人员接受病人的就诊请求,根据门诊科室各医生的病人的排队情况,分配合适科室和医生,记录并打印挂号凭据,收取挂号费完成挂号请求。问诊:医生根据挂号的次序对病人进行病情诊断,根据挂号单据及病历号获取该病人的历史病历,然后将问诊结果记录在病历当中并开具相应的处方(处方中可根据系统提供的药品进行选择),打印处方交给病人完成一次问诊。交费取药:病人在收费处根据挂号单据和处方所列出的药品种类和数量进行交费,取得相应的药品完成一次看病流程。请任意选择结构化或者面向对象方法对该系统进行分析与设计,具体要求如下:结构化方法要求:给出“挂号”的 DFD,要求具有顶层、一层和二层 DFD;(6 分)给出“挂号”第二层的数据字典(DD)。(6 分)给出软件系统中“挂号”的模块结构图(6 分)参考答案:第一小题:(6 分)系统的顶层数据流图 病人医院就诊管理系统挂号请求科室医生排队信息队列信息病历挂号凭据顶层数据流图病历与处方交费药品及收据病历号新的病情信息病历信息科室、医生ID添加病人挂号ID挂号费挂号凭据挂号信息 评分说明:(2 分)1)外部实体的名称可以是“病人”或者“挂号人员”;2)外部实体与系统之间的数据流必须有“挂号请求”和“挂号费”和“挂号凭据”(或意思相同的数据流名称);3)数据存储文件“科室医生排队信息”、“病例”、“挂号凭据”中至少要有“挂号凭据”系统的第一层数据流图 1挂号子系统2问诊子系统3交费取药子系统病人挂号请求挂号凭据挂号信息病历与处方交费药品及收据问诊结果挂号费病历科室和医生信息病历号新的病情信息病历信息科室、医生ID队列信息添加病人挂号ID挂号凭据挂号信息评分说明:(2 分)1)在第一层的 DFD 中要体现出系统的其他两个子系统“问诊”和“交费取药”;2)如果根据题目只给出了“挂号”子系统的情况下,必须将“问诊”子系统作为“挂号”子系统的外部实体 3)给出“挂号”与“问诊”之间的数据流 4)保证父图与子图之间的平衡关系 系统的第二层数据流图 1.1确定病历号1.2选择科室和医生1.3确定挂号费用1.4记录并打印挂号凭据病人挂号请求挂号费挂号凭据病历号科室和医生信息挂号信息病历病历号病历信息科室和医生信息队列信息添加病人挂号ID科室、医生ID问诊子系统挂号信息挂号信息挂号凭据 评分说明:(2 分)1)外部实体要给出“病人或挂号人员”以及“医生或问诊”;2)子系统的加工有“确定病例号”、“选择科室和医生”、“确定挂号费用”以及“记录并打印挂号凭据”,至少给出两个加工。3)明确加工之间的数据流 第二小题:(6 分)评分说明:给出两个或以上的规范数据词典的说明,且至少要有一个加工的数据词典描述 第三小题:(6 分)评分说明:有两种参考答案,但无论哪种结构需要在结构图中体现出“选择科室和医生”、“计算挂号费”以及“记录并打印挂号单”这三个功能及相应的子功能。具体的三个功能名称只要能表明以上三个意思的不予扣分。医院就诊管理系统收费取药子系统问诊子系统挂号子系统病历管理排队管理挂号收费记录并打印挂号单读取病例号编辑或检验病例号读取排队信息选择科室医生计算挂号费用初始功能结构图参考答案一 医院就诊管理系统收费取药子系统问诊子系统挂号子系统计算挂号费用排队管理病例管理读取病例号编辑或检验病例号读取排队信息选择科室医生记录并打印挂号单记录挂号信息打印挂号单格式化挂号信息存储格式化打印初始功能结构图参考答案二 面向对象方法要求:建立“挂号”用例模型,包括用例说明、SSD 和操作契约;(6)建立领域模型;(6 分)针对“挂号”用例中的“分配合适的科室和医生”完成对象职责分配。(6 分)参考答案:第一小题:(6 分)1、用例图 挂号人员病例管理排队管理收取挂号费挂号记录并打印 评分说明:【评分标准:1 分】只要给出挂号人员作为用例的角色以及挂号用例就可以,如果有后面的包含用例更好。2、用例说明:用例名称:挂号 主要角色:挂号员 前置条件:挂号员必须已经登陆到系统中 后置条件:为病人分配合适的科室和医生;生成挂号单;收取挂号费。主要成功场景:1 病人来到挂号处,申请挂号,开始挂号用例;2 根据病人提供的病例号,检验有效性并在系统中填写病例号;3 根据病人的病情基本信息或者提供的科室和医生的请求,确定科室和医生及相应的排队号;4 确定本次挂号的费用,并提示给病人,收取病人的挂号费用;5 打印挂号单,并将挂号单交给病人;6 系统记录本次挂号的信息;7 系统返回到下一个挂号处理状态。备选场景:2.1。如果有效性检查没有通过或者病人没有提供病例号,挂号人员将给病人建立新的病例号;3.1如果病人请求的科室或者医生已经达到当前最大的排队数,则询问病人是否有其他选择,再进行科室和医生的选择。3.2如果科室和医生的排队情况已经达到当天的最大数,则退出本次挂号请求,返回到 7。A*。在收取挂号费之前的任何时刻,病人都有权利请求退出本次挂号。评分说明:【评分标准:2 分】要求写出主要的成功场景。备选场景写出任意一个即可。3、SSD :挂号人员医院就诊管理系统1、启动挂号2、选择科室或医生请求本次挂号费3、交费返回挂号单 评分说明:【评分标准:1 分】要求至少写出 2 个系统外部事件,系统事件的名称只要能够理解即可。4、操作契约 操作名称 启动挂号 交叉引用 挂号 前置条件 挂号人员登录到系统 后置条件 1、创建挂号实例 2、建立挂号单之间的关联 3、建立与病例之间的关联(可选)操作名称 选择科室和医生请求 交叉引用 挂号 前置条件 挂号人员登录到系统 后置条件 1、建立与科室和医生的排队关联 2、修改排队信息 操作名称 交费 交叉引用 挂号 前置条件 挂号人员登录到系统 后置条件 1、创建交费实例 2、建立与挂号单的关联(如果前面没建立,在此建立关联也可以)3、修改交费实例中金额的属性 4、修改并记录挂号信息 5、完成一次挂号实例 评分要求:【评分标准:2 分】写出上面任意两个的操作契约即可 第二小题:(6 分)挂号单挂号规则挂号支付科室病例医院挂号员挂号处医生处方病人 评分说明:【评分标准:组织结构方面的类:病人、医生、挂号员等 1 分,凭证类 2 分,支付及规则 1 分,关联 2 分】以上模型中,必须给出病人、挂号员、挂号单、病例、医生及科室,医院、挂号支付、挂号规则及处方可选。其中各实体之间的关系只要能够理解就可以,不要求实体之间的复数关系。第三小题 :病人:挂号员:科室:医生挂号请求查询(科室,医生)查询结果添加挂号请求(病人ID,病历号)排队号排队通知 评分说明:【评分标准:对象 2 分,消息序列 4 分】1、必须给出挂号员、科室对象 2、只需要给出正常的分配科室和医生的流程和条件 3、对象之间的名称和参数只要能够理解即可,其中参数可有可无。4、