您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 北邮计算机复试软件工程试题(A)附答案_(2)
北京邮电大学2007——2008学年第二学期《软件工程》期末考试试题A卷考试注意事项一、学生参加考试须带学生证或学院证明,未带者不准进入考场。学生必须按照监考教师指定座位就坐。二、书本、参考资料、书包等与考试无关的东西一律放到考场指定位置。三、学生不得另行携带、使用稿纸,要遵守《北京邮电大学考场规则》,有考场违纪或作弊行为者,按相应规定严肃处理。四、学生必须将答题内容做在专用答题纸...上,做在试卷、草稿纸上一律无效。交卷时将答题纸与试卷一同上交。考试课程软件工程考试时间2008年6月19日题号一二三四五六七八总分满分1010153530得分阅卷教师一、单项选择题(共10题,每题1分,共10分)1、需求规格说明书的作用不包括(C)A.软件验收的依据B.用户与开发人员对软件要做什么的共同理解C.软件可行性研究的依据D.软件设计的依据、2、软件结构图中,模块框之间若有直线连接,表示它们之间存在(A)A、调用关系B、组成关系C、链接关系D、顺序执行关系3、下面关于DFD中的加工的描述正确的是(C)A.每个加工只能有一个输入流和一个输出流B.每个加工最多有一个输入流,可以有多个输出流C.每个加工至少有一个输入流和一个输出流D.每个加工都是对输入流进行变换,得到输出流4、在基于数据库的信息管理系统中,数据库概念模型的设计对应于系统开发的(B)阶段。A、需求分析B、概要设计C、详细设计D、程序设计班级:学号:班内序号:姓名:-------------------------------------------------------------------装-----------------------------------------订--------------------------------------线----------------------------------------------------------------------------------------------------------------------------5、为了提高模块的独立性,模块之间最好是(D)A.控制耦合B.公共耦合C.内容耦合D.数据耦合6、下列关于效率的说法不正确的是(B)A.效率是一个性能要求,其目标应该在需求分析时给出B.提高程序效率的根本途径在于采用高效的算法C.效率主要指处理机时间和存储器容量两个方面D.程序的效率与程序的算法有关7、测试的关键问题是(D)A.如何组织对软件的评审B.如何验证程序的正确性C.如何采用综合策略D.如何选择测试用例8、某企业的软件系统希望从Windows平台移植到Linux平台上,软件开发厂商为了满足企业的要求进行的维护属于(B)A.改正性维护B.适应性维护C.完善性维护D.预防性维护9、软件测试的目的是(C)A.为了表明程序没有错误B.为了说明程序能正确地执行C.为了发现程序中的错误D.为了评价程序的质量10、用白盒测试法设计测试用例的方法包括(C)A.错误推测B.因果图C.基本路径测试D.边界值分析二、判断题(共10题,每题1分,共10分)1.软件是一种逻辑实体,由可执行代码构成。(错)2.用例模型是用来说明系统应该具备的功能描述。(对)3.软件质量主要通过软件的功能测试来保证。(错)4.UML中顺序图和协作图不仅能用来表示对象之间的动态行为,也能表示对象内部的状态变化。(错)5.单元测试中只能使用白盒测试方法。(错)6.软件能力成熟度模型是衡量软件项目管理水平的标准。(错)7.软件维护的周期远远大于软件开发的周期。(对)8.领域模型是面向对象分析和设计的一个组成部分,因而它也是待构建的软件模型的一个部分。(错)9.在顺序图中,一个对象A发送了一条创建另一个对象B的消息,那么表明对象B具备了处理该条消息的职责。(错)10.在进行软件类设计的过程中可以应用GRASP中的“信息专家”模式决定类中的方法。(对)三、简答题(共3题,每题5分,共15分)1、简述面向对象开发方法中OOA和OOD要完成的工作。OOA:建立用例图、写用例文本描述、创建领域模型、绘制顺序图(可选)、创建操作契约。OOD:软件体系结构设计、用例实现设计(用协作图寻找参与用例的对象,对对象职责进行分配,并生成设计类图)、用户界面设计。2、说明软件测试步骤?简述每个步骤的测试对象和测试依据。测试步骤测试对象测试依据单元测试程序模块详细设计说明书、源代码集成测试已测试的模块系统概要设计说明书确认测试已集成的软件系统需求规格说明书系统测试已确认的软件系统其他元素3、什么是软件项目管理?制定项目计划时包含的项目管理过程有哪些?软件项目管理就是为了实现软件项目目标,使软件项目获得成功而对软件开发项目的工作范围、可能遇到的风险、需要的资源(人力、硬件和软件)、要完成的任务、经历的里程碑、花费的工作量(成本)以及进度的安排等进行管理的过程。制定项目计划是建立项目行动指南的基准,包括对软件项目的估算、风险分析、进度安排、人员的选择与配备等。四、应用题(3题,共35分)1、电子表除了能显示时间外,还具有闹钟的功能,并且电子表上具有三个按钮:1.第一个是模式按钮,用以切换时间显示和时间调节的模式,在调节模式下用以切换小时和分钟的位置;2.第二个按钮用来调节小时和分钟,且只能以+1的方式进行调节;3.第三个按钮用于结束闹表响铃,仅按下一次是临时结束响铃,一分钟之后又开始响铃;连续按二次彻底结束响铃。问题:要求给出电子表有关闹钟功能的状态迁移图(10分)评分要点:1、四个状态,每个状态1分,共4分2、按钮1状态迁移条件2分,按钮2状态迁移条件2分,按钮3及Timer迁移条件2分,共6分2、北京邮电大学计算计学院属于北京邮电大学除了行政单位之外的下属18个院级教学单位中的一个;计科院内部由院党委、行政、教学和科研及学生组成;其中的教学单位又分为5个中心;计科院的学生由本科生、硕士研究生组成,其中本科生分为四个年级,每个年级有三个大班,每个大班有5个小班;硕士研究生分为三个年级且分别属于教学单位的5个中心。问题:请给出以上内容的领域模型(10分)评分要点:1、确定概念类,重点在于计算机学院内部的概念类,原则上少一个概念类扣0.5分;共5分。2、建立概念类之间的关系,重点在于组合、聚合以及“学生-年级”的关联关系和“学生与研究生、本科生的继承关系”,原则上一个关系错误扣0.5分;共5分。3、测试用例设计(输入年、月、日,判断下一天日期)有一程序要求分别输入年、月和日三个整数类型的数据,年份数据的范围是1900-2099;月份数据的范围是1-12;日期数据的范围是1-31;系统的功能可根据公历历法给出的第二天的日期。问题:请根据等价类划分原则给出等价类表(15分)输入条件有效等价类无效等价类年份《1900-2099》(1)1900(2),2099(3)月份《1-12》(4)1(5),12(6)日《1-28》(7),29(8),30(9),31(10)1(11),31(12),29(13),30(14),31(15)评分要点:1、输入条件、有效等价类、无效等价类各占5分2、输入条件除上述基本内容外,可有自己定义的条件,如有错误扣1.5分3、有效和无效等价类中如果缺少标号扣1.5分4、有效和无效等价类中内容缺少一个扣1分五、综合题(1题,共30分)问题描述:有一个医院期望开发一个《医院挂号和问诊管理系统》,该系统要求能够实现挂号与医院科室医生的排队情况相结合,做到合理安排病人的排队次序,达到高效的就诊管理效果。要求挂号时能够将病人的病历(电子病历)与挂号的医生相关联,一旦挂号完成医生能够实时查看到新的病人的到来;同时也要兼顾病人对已熟知医生的挂号要求。然后根据医生的级别以及相应的收费规则(假定有:排队时间最短,收费最少,指定医生)确定本次挂号的费用,并完成收取挂号费,记录挂号信息和打印挂号单。已知:现有经过初步分析得到的领域模型和系统顺序图,1.SSD的第一条消息,系统返回挂号单的流水号、时间和挂号员的工号。2.SSD的第二条消息,系统根据病人提供的病历号返回病人的姓名、年龄、性别等基本信息。3.SSD的第三条消息,挂号员根据病人的信息向系统提供科室、医生及支付策略的选择,系统返回本次挂号所需要的挂号费用。4.SSD的第四条消息,病人支付挂号金额,系统返回要找赎的金额、打印挂号单完成一次挂号。挂号规则医院挂号处科室医生病例挂号员挂号单挂号支付病人处方图5-1领域模型:医院挂号系统:挂号人员1.StartNewRegistration()2.GetPatientInfo(PatientId)3.Select(Section,Doctor,PaymentPolicies)4.Payment图5-2系统顺序图问题一:请给出上述内容的用例图,并给出“挂号”用例的用例说明(5分)评分要点:1、用例图总共2分2、重点在于“挂号”和“查看队列”用例,缺少一个扣1分3、“挂号”用例后的包含用例作为选项考查用例名称:挂号主要角色:挂号员前置条件:挂号员必须已经登陆到系统中后置条件:为病人分配合适的科室和医生;生成挂号单;收取挂号费。主要成功场景:1.病人来到挂号处,申请挂号,开始挂号用例;2.根据病人提供的病例号,调用“病历管理”用例(检验有效性并在系统中填写病例号);3.根据病人的病情基本信息或者提供的科室和医生的请求,调用“队列管理”用例(确定科室和医生及相应的排队号);4.确定本次挂号的费用,并提示给病人,收取病人的挂号费用;5.打印挂号单,并将挂号单交给病人;6.系统记录本次挂号的信息;7.系统返回到下一个挂号处理状态。备选场景:2.1。如果有效性检查没有通过或者病人没有提供病例号,挂号人员将给病人建立新的病例号;3.1.如果病人请求的科室或者医生已经达到当前最大的排队数,则询问病人是否有其他选择,再进行科室和医生的选择。3.2.如果科室和医生的排队情况已经达到当天的最大数,则退出本次挂号请求,返回到7。A*。在收取挂号费之前的任何时刻,病人都有权利请求退出本次挂号。评分要点:1、用例说明占3分;2、正确书写成功场景给2分;如有部分错误扣1分;3、正确书写备选场景给1分;缺少扣1分;问题二:请根据以上顺序图并结合相应的领域模型给出每一条系统事件对应的操作契约的后置条件。(10分)操作名称StartNewRegistration交叉引用挂号前置条件挂号人员登录到系统后置条件1、创建挂号实例以及挂号单实例2、建立挂号单之间的关联3、为属性挂号单流水号、挂号单时间及挂号人员赋值操作名称GetPatientInfo(PatientID)交叉引用挂号前置条件挂号人员登录到系统后置条件1、创建病历实例(可以没有,认为病历是被初始化的对象)2、建立挂号单与病历之间的关联3、为属性病人的姓名、年龄、性别等基本信息赋值操作名称Select(Section,Doctor,PaymentPolicies)交叉引用挂号前置条件挂号人员登录到系统后置条件1、创建科室、医生实例(可以没有,认为病历是被初始化的对象)2、建立挂号与医生之间的关联3、为属性挂号费用赋值操作名称Payment交叉引用挂号前置条件挂号人员登录到系统后置条件1、创建挂号支付实例2、建立挂号与支付之间的关联3、为属性应找赎金额赋值4、删除挂号及挂号单实例评分要点:1、每个操作契约2.5分,共10分2、后置条件不完整扣1-2分3、其中,创建实例1分,建立关联关系1分,属性赋值0.5分4、Payment操作契约中缺少删除实例扣1分;问题三:请根据以上基本信息确定参与“StartNewRegistration”系统消息的对象,根据GRASP“信息专家”模式绘制出相应的设计模型的交互图并给出对象所对应类的方法。(15分)评分要点:1、正确找出参与该系统事件的对象3分;2、按照操作契约在交互图上给出创建对象实例的给2分;3、正确给出对象之间的消息序列给5分;4、明确返回消息参数的给2分;5、给出挂号类和
本文标题:北邮计算机复试软件工程试题(A)附答案_(2)
链接地址:https://www.777doc.com/doc-173018 .html