版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、住在富人区的她2022年职业考证-软考-软件设计师考试名师押题精选卷I(带答案详解)(图片可根据实际调整大小)题型12345总分得分一.综合题(共50题)1.单选题在网络系统设计时,不可能使所有设计目标都能达到最优,下列措施中最为合理的是( )。问题1选项A.尽量让最低建设成本目标达到最优B.尽让最短的故障时间达到最优C.尽量让最大的安全性目标达到最优D.尽量让优先级较高的目标达到最优【答案】B【解析】暂无。2.案例题阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某中医医院拟开发一套线上抓药APP,允许患者凭借该医院医生开具的处方线上抓药,并提供免费送药上门服务。该
2、系统的主要功能描述如下:(1)注册。患者扫描医院提供的二维码进行注册,注册过程中,患者需提供其病历号,系统根据病历号自动获取患者基本信息。(2)登录。已注册的患者可以登录系统进行线上抓药,未册的患者系统拒绝其登陆。(3)确认处方。患者登录后,可以查看医生开具的所有处方。患者选择需要抓药的处方和数量(需要抓几副药), 同时说明是否需要煎制。选择取药方式:自行到店取药或者送药上门,若选择送药上门,患者需要提供提供收货人姓名、联系方式和收货地址。系统自动计算本次抓药的费用,患者可以使用微信或支付宝等支付方式支付费用。支付成功之后,处方被发送给药师进行药品配制。(4)处理处方。药师根据处方配置好药品,
3、若患者要求煎制,药师对配置好的药品进行煎制。煎制完成,药师将对该处方设置已完成。若患者选择的是自行取药,取药后确认已取药。(5)药品派送。处方完成后,对于选择送药上门的患者,系统将给快递人员发送药品的配置信息,等待快递人员来取药;并给患者发送收获验证码。(6)送药上门。快递人员将配置好的药品送到患者指定的收货地址。患者收获时,向快递人员出示收获验证码,快递人员使用该验证码确认药品已送到。【问题1】 (7分)根据说明中的描述,给出图3-1中A1 A3所对应的参与者名称和U1 U4处所对应的用例名称。【问题2】(5分)根据说明中的描述,给出图3-2中C1C5所对应的类名。【问题3】(3分)简要解释
4、用例之间的include、extend 和generalize关系的内涵。【答案】因题干部分信息不明确,答案可能存在异议,本答案仅供参考。【问题1】A1:患者A2:快递员(学员反馈有相关描述,但当前未给出)A3:药师U1:确认处方U2:支付U3:微信支付U4:支付宝支付U3和U4可互换。【问题2】C1:支付方式C2;微信支付C3:支付宝支付C4:处方C5:药品C2和C3可互换。【问题3】include(包含)包含关系:其中这个提取出来的公共用例称为抽象用例,而把原始用例称为基本用例或基础用例系:当可以从两个或两个以上的用例中提取公共行为时,应该使用包含关系来表示它们。本系统中,确认药方过程中系
5、统会自动计算本次抓药的费用,患者可以使用微信或支付宝等支付方式支付费用,所以确认药方包含支付过程。extend (扩展)扩展关系:如果一个用例明显地混合了两种或两种以上的不同场景,即根据情况可能发生多种分支,则可以将这个用例分为一个基本用例和一个或多个扩展用例,这样使描述可能更加清晰。generalize(泛化)泛化关系:当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象成为父用例,其他的用例作为泛化关系中的子用例。在用例的泛化关系中,子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构、行为和关系。本系统中患者可以使用微信或支付宝等支付方式支付费用,即支付可以有不同种方
6、式,包括微信支付、支付宝支付等,所以微信支付和支付宝支付是支付的特殊化,支付是二者的泛化。注:本题分值较少,写明定义即可,可以不结合本题实例进行说明。【解析】本题是典型的用例图和类图结合考查题型。因题干部分信息不明确,答案可能存在异议,本答案仅供参考。【问题1】根据题干描述,使用注册、登录功能的应该是患者,因此参与者A1为患者。根据题干描述,患者登录以后,可以确认药方,本题U1的缺失,应该患者使用的确认药方的用例,即U1为确认药方。患者确认支付后,“处方被发送给药师进行药品配制”,因此使用处理药方功能的应该是药师,即参与者A3为药师。其中药方确认的过程中,包括选择处方和数量同时说明需要煎制,选
7、择取药方式(自行到店取药或者送药上门),系统自动计算费用后患者进行支付(微信或支付宝等支付方式)。此处图示已有配送药品用例,因此,这里不适合填写选择取药方式-自行到店取药-送药上门这组泛化用例,应该填写支付-微信支付-支付宝支付,其中支付的泛化的父用例,微信支付和支付宝支付是其子用例,对应图示泛化关系U2-U3-U4,其中U2填写支付,U3和U4分别填写微信支付、支付宝支付,二者位置可以互换。本题中A2线索不明确(学员反馈有“快递员”相关描述,但当前未给出),没有提到其他参与者,这里A2填写快递员。【问题2】类图分析中,与类名相关的一般是名词形式,再根据图示中的联系确认具体位置。此处C1-C2
8、-C3有一组典型的泛化关系。根据上面的分析,图示中的泛化关系为支付-微信支付-支付宝支付。结合用例图,最终体现的泛化关系是支付,因此此处选择支付方式、微信支付、支付宝支付更合适。其中C1为支付方式,C2和C3为微信支付和支付宝支付,二者位置可互换。根据题干说明“支付成功之后,处方被发送给药师进行药品配制”在药师与支付方式中间,与二者相关的为处方,即C4为处方。C5与处方相关,应该填写药品。【问题3】include(包含)包含关系:其中这个提取出来的公共用例称为抽象用例,而把原始用例称为基本用例或基础用例系:当可以从两个或两个以上的用例中提取公共行为时,应该使用包含关系来表示它们。本系统中,确认
9、药方过程中系统会自动计算本次抓药的费用,患者可以使用微信或支付宝等支付方式支付费用,所以确认药方包含支付过程。extend (扩展)扩展关系:如果一个用例明显地混合了两种或两种以上的不同场景,即根据情况可能发生多种分支,则可以将这个用例分为一个基本用例和一个或多个扩展用例,这样使描述可能更加清晰。generalize(泛化)泛化关系:当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象成为父用例,其他的用例作为泛化关系中的子用例。在用例的泛化关系中,子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构、行为和关系。本系统中患者可以使用微信或支付宝等支付方式支付费用,即支付可
10、以有不同种方式,包括微信支付、支付宝支付等,所以微信支付和支付宝支付是支付的特殊化,支付是二者的泛化。注:本题分值较少,写明定义即可,可以不结合本题实例进行说明。3.单选题已知树T的度为4,且度为4的结点数为7个、度为3的结点数为5个、度为2的结点数为8个、度为1的结点数为10个,那么T的叶子结点个数为( )。(注:树中结点个数称为结点的度,结点的度中的最大值称为树的度。)问题1选项A.30B.35C.40D.49【答案】C【解析】本题考查的是二叉树特性。假设度为4的结点个数记作n4,度为3的结点个数记作n3,度为2的结点个数记作n2,度为1的结点个数记作n1,度为0的结点个数记作n0。此时结
11、点总数为n4+n3+n2+n1+n0,每个结点可以根据树枝找到其父节点,除了根,所以此时树枝的数量为n4+n3+n2+n1+n0-1。又因为度与树枝的定义,树枝的个数又可以计算为:4*n4+3*n3+2*n2+1*n1+0*n0。综上可得n4+n3+n2+n1+n0-1=4*n4+3*n3+2*n2+1*n1+0*n0,此时n4=7,n3=5,n2=8,n1=10,代入表达式计算可得,n0=40,本题选择C选项。4.单选题以下关于数据库两级映像的叙述中,正确的是( )。问题1选项A.模式/内模式映像实现了外模式到内模式之间的相互转换B.模式/内模式映像实现了概念模式到内模式之间的相互转换C.外
12、模式/模式的映像实现了概念模式到内模式之间的相互转换D.外模式/内模式的映像实现了外模式到内模式之间的相互转换【答案】B【解析】本题考查数据库的基本概念。数据库系统在三级模式之间提供了两级映像:模式/内模式映像、外模式/模式映像。 正因为这两级映像保证了数据库中的数据具有较高的逻辑独立性和物理独立性。(1)模式/内模式的映像。存在于概念级和内部级之间,实现了概念模式到内模式之间的相互转换。(2)外模式/模式的映像。存在于外部级和概念级之间,实现了外模式到概念模式之间的相互转换。5.单选题Python 语言的特点不包括()。问题1选项A.跨平台、开源B.编译型C.支持面向对象程序设计D.动态编程
13、【答案】B【解析】本题考查python相关问题。python语义的特点:跨平台、开源、简单易学、面向对象、可移植性、解释性、开源、高级语言、可扩展性、丰富的库、动态编程等等综上所述B选项错误,python不是编译型语言,而是解释型语言。6.单选题关于螺旋模型,下列陈述中不正确的是( ),( )。问题1选项A.将风险分析加入到瀑布模型中B.将开发过程划分为几个螺旋周期,每个螺旋周期大致和瀑布模型相符C.适合于大规模、复杂且具有高风险的项目D.可以快速的提供一个初始版本让用户测试问题2选项A.支持用户需求的动态变化B.要求开发人员具有风险分析能力C.基于该模型进行软件开发,开发成本低D.过多的迭代
14、次数可能会增加开发成本,进而延迟提交时间【答案】第1题:D第2题:C【解析】第一空选项中,可以快速提供一个初始版本给用户的是增量模型而不是瀑布模型。D选项描述错误。其他描述都是正确的。第二空选项中,在螺旋模型中过多的迭代次数会增加开发成本,C选项开发成本低的描述是错误的。其他描述都是正确的。7.单选题系统可维护性是指维护人员理解、改正、改动和改进软件系统的难易程度,其评价指标不包括()。问题1选项A.可理解性B.可测试性C.可修改性D.一致性【答案】D【解析】本题考查软件维护的问题。注意区别这里面的软件维护不是ISO/IEC软件质量保证的维护性,两者需要进行区别。在这里的软件维护的可维护性应该
15、包括:可理解性,可测试性,可修改性。其中一致性属于可移植性的范畴。8.单选题n个关键码构成的序列k1,k2, .Kn当且仅当满足下列关系时称其为堆。以下关键码序列中,() 不是堆。问题1选项A.15,25,21,53,73, 65,33B.15,25,21,33,73,65,53C.73,65,25,21,15,53,33D.73,65,25,33,53,15,21【答案】C【解析】本题考查堆排序的算法问题。堆分为大顶堆(根节点大于左孩子和右孩子节点)和小顶堆(根节点小于左孩子节点和右孩子节点)。根据选项来看,共7个节点,应该是3层的满二叉树,符号堆的有A,B,D三个选项。仅有C选项73,65
16、,25,21,15,53,33,73作为根节点,根大于其左孩子节点65和右孩子节点25都,是大顶堆的构造,第二层65作为左子树的根节点,大于了其左孩子节点21和右孩子节点15,符合大顶堆的构造;25作为右子树的根节点,却小于了其左孩子节点53和右孩子节点33,不符合大顶堆的构造了,故其不是堆。9.单选题以下关于文档的叙述中,不正确的是( )。问题1选项A.文档也是软件产品的一部分,没有文档的软件就不能称之为软件B.文档只对软件维护活动有用,对开发活动意义不大C.软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量D.高质量文档对于发挥软件产品的效益有着重要的意义【答案】B【解析】文档是
17、开发中的重要工具,对开发有较大意义,B选项的说法是错误的。其他A、C、D的说法都是正确的。10.单选题下图所示的二叉树表示的算术表达式是( )(其中的*、/、一表示乘、除、减运算)。问题1选项A.a*b/c- dB.a*b/(c-d)C.a*(b/c- d)D.a*(b-c/d)【答案】C【解析】本题考查算术表达式相关问题。算术表达式与树的中缀表达式类似,按照左根右的顺序,其中在算术表达式中符号位表示根。根据该二叉树的表示,我们可以得知*为该树的总根,将左子树和右子树分隔开来。左边部分是a,右边部分是以-作为右子树的总根,左边是b/c,右边是d综合得出算术表达式应该为a*(b/c-d)11.单
18、选题以下关于RISC和CISC的叙述中,不正确的是( )。问题1选项A.RISC的大多指令在一个时钟周期内完成B.RISC普遍采用微程序控制器,CISC则普遍采用硬布线控制器C.RISC的指令种类和寻指方式相对于CISC更少D.RISC和CISC都采用流水线技术【答案】B【解析】RISC采用硬布线逻辑控制,CISC采用微程序控制,B选项描述错误,本题选择B选项。对于D选项RISC与CISC都可以采用流水线技术,CISC更适合,所以D选项描述没有问题。12.单选题以下关于闪存(Flash Memory)的叙述中,错误的是( )。问题1选项A.掉电后信息不会丢失,属于非易失性存储器B.以块为单位进
19、行删除操作C.采用随机访问方式,常用来代替主存D.在嵌入式系统中可以用Flash来代替ROM存储器【答案】C【解析】闪存(Flash Memory)是一种长寿命的非易失性(在断电情况下仍能保持所存储的数据信息)的存储器,数据删除不是以单个的字节为单位而是以固定的区块为单位,区块大小一般为256KB到20MB。闪存是电子可擦除只读存储器(EEPROM)的变种,EEPROM与闪存不同的是,它能在字节水平上进行删除和重写而不是整个芯片擦写,这样闪存就比EEPROM的更新速度快。由于其断电时仍能保存数据,闪存通常被用来保存设置信息。闪存不像RAM(随机存取存储器)一样以字节为单位改写数据,因此不能取代
20、RAM,也不能替换主存,因此C选项错误。但是在嵌入式中,可以用闪存代替ROM存储器。13.单选题云计算有多种部署模型(Deployment Models)。若云的基础设施是为某个客户单独使用而构建的,那么该部署模型属于( )。问题1选项A.公有云B.私有云C.社区云D.混合云【答案】B【解析】A选项公有云通常指第三方提供商为用户提供的能够使用的云,公有云一般可通过 Internet 使用,可能是免费或成本低廉的,公有云的核心属性是共享资源服务。B选项私有云(Private Clouds)是为一个客户单独使用而构建的,因而提供对数据、安全性和服务质量的最有效控制。该公司拥有基础设施,并可以控制在
21、此基础设施上部署应用程序的方式。本题针对某个客户单独使用,属于B选项私有云。C选项社区云一般指社群云。社群云(Community cloud),也称社区云,是由几个组织共享的云端基础设施,它们支持特定的社群,有共同的关切事项,例如使命任务、安全需求、策略与法规遵循考量等。D选项混合云融合了公有云和私有云,是近年来云计算的主要模式和发展方向。我们已经知道私有云主要是面向企业用户,出于安全考虑,企业更愿意将数据存放在私有云中,但是同时又希望可以获得公有云的计算资源,在这种情况下混合云被越来越多的采用,它将公有云和私有云进行混合和匹配,以获得最佳的效果,这种个性化的解决方案,达到了既省钱又安全的目的
22、。14.单选题下面是一个软件项目活动图,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的权重表示活动的持续时间(天),则关键路径长度为( ),在该活动图中,活动( )晚16天开始不会影响上班。问题1选项A.20B.25C.27D.48问题2选项A.ACB.BEC.FID.HJ【答案】第1题:D第2题:B【解析】本题是对进度网络图分析的考查。将各个活动的最早开始和完成时间、最晚开始和完成时间、持续时间和总时差分别进行标注,结果如下:15.单选题某Python程序中定义了X=1,2,那么X*2的值为( )。问题1选项A.1,2,1,2B.1,1,2,2C.2,4D.出错【答案】A【解析】
23、本题考查的是Python基础语法。X=1,2表示List结构,*2表示重复2次,运算结果为1,2,1,2。16.单选题在软件设计阶段进行模块划分时,一个模块的( )。问题1选项A.控制范围应该在其作用范围之内B.作用范围应该在其控制范围之内C.作用范围与控制范围互不包含D.作用范围与控制范围不受任何限制【答案】B【解析】本题是对模块设计原则的考查。模块控制域:这个模块本身以及所有直接或间接从属于它的模块的集合。模块作用域:指受该模块内一个判定所影响的所有模块的集合。模块的作用域应该在控制域范围之内,本题选择B选项。17.单选题某种机器的浮点数表示格式如下(允许非规格化表示)。若阶码以补码表示,
24、尾数以原码表示,则1 0001 0 0000000001表示的浮点数是()问题1选项A.2-162-10B.2-152-10C.2-16 (1-2-10)D.2-15 (1-2-10)【答案】B【解析】考查对于浮点数表示。浮点数表示:N=尾数*基数指数其中尾数是用原码表示,是一个小数,通过表格和题干可知, 0 0000000001是尾数部分,共计后11位,其中第1位为0表示正数,展开得2-10阶码部分是用补码表示,是一个整数,通过表格和题干可知,1 0001是整数部分,共计前5位,要计算其具体数值需要将其转换成原码,通过第1位符号位1可知其为负数,补码:10001 ,反码:10000 原码:1
25、1111,数据为-15,基数在浮点数表示为2,可得2-152-1018.单选题ARP 报文分为ARP Request和ARP Response,其中ARP Request采用( )进行传送,ARP Response采用( )进行传送。问题1选项A.广播B.组播C.多播D.单播问题2选项A.组播B.广播C.多播D.单播【答案】第1题:A第2题:D【解析】本题考查计算机网络ARP协议。ARP协议:地址解析协议,作用是由IP地址转换成MAC地址RARP协议:反地址解析协议,作用是MAC地址转换成IP地址对于ARP而言,请求是广播发送,ARP响应是单播发送。故有ARP Request采用广播进行传送,
26、ARP Response采用单播进行传送19.单选题以下关于中断方式与DMA方式的叙述中,正确的是( )。问题1选项A.中断方式与DMA方式都可实现外设与CPU之间的并行在工作B.程序中断方式和DMA方式在数据传输过程中都不需要CPU的干预C.采用DMA方式传输数据的速度比程序中断方式的速度慢D.程序中断方式和DMA方式都不需要CPU保护现场【答案】A【解析】输入/输出技术的三种方式:直接查询控制:有无条件传送和程序查询方式,都需要通过CPU执行程序来查询外设的状态,判断外设是否准备好接收数据或准备好了向CPU输入的数据。在这种情况下CPU不做别的事情,只是不停地对外设的状态进行查询。中断方式
27、:当I/O系统与外设交换数据时,CPU无须等待也不必查询I/O的状态,而可以抽身来处理其他任务。当I/O系统准备好以后,则发出中断请求信号通知CPU,CPU接到中断请求信号后,保存正在执行的程序的现场,转入I/O中断服务程序的执行,完成于I/O系统的数据交换,然后再返回被打断的程序继续执行。与程序控制方式相比,中断方式因为CPU无需等待而提高了效率。DMA:直接寄存器存取方式,是指数据在内存与I/O设备间的直接成块传送,即在内存与I/O设备间传送一个数据块的过程中,不需要CPU的任何干涉,只需要CPU正在过程开始启动与过程结束时的处理,实际操作由DMA硬件直接执行完成。20.单选题计算机指令系
28、统采用多种寻址方式。立即寻址是指操作数包含在指令中,寄存器寻址是指操作数在寄存器中,直接寻址是指操作数的地址在指令中。这三种寻址方式操作数的速度( )。问题1选项A.立即寻址最快,寄存器寻址次之,直接寻址最慢B.寄存器寻址最快,立即寻址次之,直接寻址最慢C.直接寻址最快, 寄存器寻址次之,立即寻址最慢D.寄存器寻址最快,直接寻址次之,立即寻址最慢【答案】A【解析】有关于寻址方式查询速度:立即寻址是操作数直接在指令中,速度是最快的;寄存器寻址是将操作数存放在寄存器中,速度中间;直接寻址方式是指令中存放操作数的地址,速度最慢。21.单选题在TCP/IP协议栈中,远程登录采用的协议为( )。问题1选
29、项A.HTTPB.TELNETC.SMTPD.FTP【答案】B【解析】本题考查TCP/IP协议簇相关知识。HTTP是超文本传输协议,SMTP是邮件传输协议,FTP是文件传输协议,都与远程登录无关,只有B选项TELNET是远程登录服务的标准协议和主要方式。本题选择B选项。22.单选题某搜索引擎在交付后,开发人员修改了其中的索引方法,使得用户可以更快地得到搜索结果。这种修改属于( )维护问题1选项A.正确性B.适应性C.完善性D.预防性【答案】C【解析】在系统运行过程中,软件需要维护的原因是多样的,根据维护的原因不同,可以将软件维护分为以下四种:(1)改正性维护。为了识别和纠正软件错误、改正软件性
30、能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程就称为改正性维护。(2)适应性维护。在使用过程中,外部环境(新的硬、软件配置)、数据环境(数据库、数据格式、数据输入/输出方式、数据存储介质)可能发生变化。为使软件适应这种变化,而去修改软件的过程就称为适应性维护。(3)完善性维护。在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。这种情况下进行的维护活动称为完善性维护。更快地得到搜索结果,即提升了搜索引擎的性能,扩充功能或提升性能是完善性维护的工作,本题选择C选项。(4
31、)预防性维护。这是指预先提高软件的可维护性、可靠性等,为以后进一步改进软件打下良好基础。通常,预防性维护可定义为“把今天的方法学用于昨天的系统以满足明天的需要”。也就是说,采用先进的软件工程方法对需要维护的软件或软件中的某一部分(重新)进行设计、编码和测试。23.单选题在设计某购物中心的收银软件系统时,要求能够支持在不同时期推出打折、返利、满减等不同促销活动,则适合采用()模式。问题1选项A.策略(Strategy)B.访问者(Visitor)C.观察者(Observer)D.中介者(Mediator)【答案】A【解析】在设计某购物中心的收银软件系统时,要求能够支持在不同时期推出打折、返利、满
32、减等不同促销活动,收银软件系统的计入规则有:打折、返利、满减三种不同的策略,每种策略之间封装起来,可以相互替换,使它们可以独立的变换,属于典型的策略模式。24.单选题下列不属于计算机病毒的是( )。问题1选项A.永恒之蓝B.蠕虫C.特洛伊木马D.DDOS【答案】D【解析】本题考查的是网络威胁相关内容。在本题中将木马也归于病毒一类了。DDoS指的是分布式拒绝服务攻击,不属于计算机病毒与木马,其他选项都属于计算机病毒或木马,本题选择D选项。25.案例题【说明】某房产公司,欲开发一个房产信息管理系统,其主要功能描述如下:1.公司销售的房产(Property) 分为住宅(House) 和公寓(Cand
33、o) 两类。针对每套房产,系统存储房产证明、地址、建造年份、建筑面积、销售报价、房产照片以及销售状态(在售、售出、停售)等信息。对于住宅,还需存储楼层、公摊面积、是否有地下室等信息;对于公寓,还需存储是否有阳台等信息。2.公司雇佣了多名房产经纪(Agent)负责销售房产。系统中需存储房产经纪的基本信息,包括:姓名、家庭住址、联系电话、受雇的起止时间等。一套房产同一时段仅由一名房产经纪负责销售,系统中会记录房产经纪负责每套房产的起始时间和终止时间。3.系统用户(User)包括房产经纪和系统管理员(Manager)。用户需经过系统身份验证之后才能登录系统。房产经纪登录系统之后,可以录入负责销售的房
34、产信息,也可以查询所负责的房产信息。房产经纪可以修改其负责的房产信息,但需要经过系统管理员的审批授权。4.系统管理员可以从系统中导出所有房产的信息报表。系统管理员定期将售出和停售的房产信息进行归档。若公司确定不再销售某套房产,系统管理员将该房产信息从系统中删除。现采用面向对象方法开发该系统,得到如图3-1所示的用例图和图3-2所示的初始类图。 图3-1 用例图图3-2 类图【问题1】(7分)(1)根据说明中的描述,分别给图3-1中A1到A2所对应的名称以及U1U3所对应的用例名称。(2)根据说明中的描述,分别给图3-1中(a)和(b)用例之间的关系。【问题2】(6分)根据说明中的描述,分别给图
35、3-2中C1C6所对应的类名称。【问题3】(2分)图3-2中AgentList是一个英文名称 ,用来进一步阐述C1和C6之间的关系 ,根据说明中的描述,绘出AgentList的主要属性。【答案】【问题1】(7分)A1:房产经纪;A2:系统管理员U1:审批授权;U2:修改房产信息;U3:删除房产信息(a):;(b):【问题2】(6分)C1: Property C2: House C3: Cando C4: User C5:Manager C6:Agent【问题3】(2分)AgentList的主要属性有:房产经纪负责该房产的起始时间和结束时间【解析】问题1:关于该用例图中需要找出对应的参与者与用例
36、,参与者一般指人名词表示,用例一般表示操作用动名词表示。“房产经纪登录系统之后,可以录入负责销售的房产信息,也可以查询所负责的房产信息。房产经纪可以修改其负责的房产信息”可知A1是房产经纪,“系统管理员可以从系统中导出所有房产的信息报表。系统管理员定期将售出和停售的房产信息进行归档”,可知A2是系统管理员。根据描述“房产经纪可以修改其负责的房产信息,但需要经过系统管理员的审批授权。”和“系统管理员将该房产信息从系统中删除。”可知U1为审批授权,U2为修改房产信息,U3为删除房产信息。a是U1和U2的关系,U2指向U1,先修改房产信息,再审批授权,典型的包含关系,使用关键词includeb是U3
37、与归档的关系,正常进行归档,对于不再销售的房产信息进行删除,典型的扩展关系,使用关键词extend问题2:根据类图对应的描述,两组泛化关系,C1与C2、C3以及C4与C5、C6,再根据C1与C6和C5有关系,以及题干典型的两组泛化关系可得:C1: Property C2: House C3: Cando C4: User C5:Manager C6:Agent问题3:AgentList的主要属性有:房产经纪负责该房产的起始时间和结束时间26.单选题以下关于增量模型优点的叙述中,不正确的是( )。问题1选项A.强调开发阶段性早期计划B.第一个可交付版本所需要的时间少和成本低C.开发由增量表示的小
38、系统所承担的风险小D.系统管理成本低、效率高、配置简单【答案】D【解析】增量模型作为瀑布模型的一个变体,具有瀑布模型的所有优点。此外,它还具有以下优点:第一个可交付版本所需要的成本和时间很少;开发由增量表示的小系统所承担的风险不大:由于很快发布了第一个版本,因此可以减少用户需求的变更:运行增量投资,即在项目开始时,可以仅对一个或两个增量进行投资。增量模型有以下不足之处:如果没有对用户变更的要求进行规划,那么产生的初始量可能会造成后来增量的不稳定;如果需求不像早期思考的那样稳定和完整,那么一些增量就可能需要重新开发,重新发布;管理发生的成本、进度和配置的复杂性可能会超出组织的能力。27.案例题阅
39、读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。【说明】某工程计算中经常要完成多个矩阵相乘(链乘)的计算任务,对矩阵相乘进行以下说明。(1)两个矩阵相乘要求第一个矩阵的列数等于第二个矩阵的行数,计算量主要由进行乘法运算的次数决定,假设采用标准的矩阵相乘算法,计算Amxn*Bnxp需要m*n*p次行乘法运算的次数决定、乘法运算,即时间复杂度为O(m*n*p)。(2)矩阵相乘满足结合律,多个矩阵相乘时不同的计算顺序会产生不同的计算量。以矩阵A15100,A2100*8,A38x50三个矩阵相乘为例,若按(A1*A2)*A3计算,则需要进行5*100*8+5*8*50=6000次
40、乘法运算,若按A1*(A2*A3)计算,则需要进行100*8*50+5*100*50=65000次乘法运算。矩阵链乘问题可描述为:给定n个矩阵,对较大的n,可能的计算顺序数量非常庞大,用蛮力法确定计算顺序是不实际的。经过对问题进行分析,发现矩阵链乘问题具有最优子结构,即若A1*A2*An的一个最优计算顺序从第k个矩阵处断开,即分为A1*A2*Ak和Ak+1*Ak+2*.*An两个子问题,则该最优解应该包含A1*A2*Ak的一个最优计算顺序和Ak+1*Ak+2*.*An 的一个最优计算顺序。据此构造递归式,其中,costij表示Ai+1*Ai+2*.Aj+1的最优计算的计算代价。最终需要求解co
41、st0n-1。【C代码】算法实现采用自底向上的计算过程。首先计算两个矩阵相乘的计算量,然后依次计算3个矩阵、4个矩阵、n个矩阵相乘的最小计算量及最优计算顺序。下面是该算法的语言实现。(1) 主要变量说明n:矩阵数seq:矩阵维数序列costij:二维数组,长度为n*n,其中元素costij表示Ai+1*Ai+2*Aj+1的最优的计算代价。trace:二维数组,长度为n*n,其中元素traceij表示Ai+1*Ai+2*Aj+1的最优计算顺序对应的划分位置,即k。(2)函数cmm#define N100int costNN;int traceNN;int cmm(int n,int seq)in
42、t tempCost;int tempTrace;int i,j,k,p;int temp;for( i=0;ifor(p=1;pfor(i=0;i (1) ;tempCost = -1; for(k = i; (2) ;k+) temp=(3) ;if(tempCost=-1 | tempCosttemp) tempCost = temp; tempTrace=k;costij = tempCost;(4) ;return cost0n-1;【问题1】(8分)根据以上说明和C代码,填充C代码中的空(1)(4)。【问题2】(4分)根据以上说明和C代码,该问题采用了(5)算法设计策略,时间复杂度
43、为(6)(用O符号表示)。【问题3】(3分)考虑实例n=4,各个矩阵的维数为A1为15*5,A2为5*10,A3为10*20,A4为20*25,即维度序列为15,5,10,20和25。则根据上述C代码得到的一个最优计算顺序为(7)(用加括号方式表示计算顺序),所需要的乘法运算次数为 (8)。【答案】【问题1】(1) j=i+p(2)k3)【问题3】(7)A1*(A2*A3)*A4)(8)5375【解析】【问题3】先计算A2*A3,乘法次数为5*10*20=1000,结果B1维数为5*20接着计算B1*A4,乘法次数为5*20*25=2500,结果B2维数为5*25最后计算A1*B2,乘法次数为
44、15*5*25=1875。总计算次数为1000+2500+1875=5375计算次序为A1*(A2*A3)*A4)28.单选题对有向图G进行拓扑排序得到的拓扑序列中,顶点Vi在顶点Vj之前,则说明G中()问题1选项A.一定存在有向弧B.一定不存在有向弧C.必定存在从Vi到Vj的路径D.必定存在从Vj到Vi的路径【答案】B【解析】本题考查拓扑序列的相关问题。对于拓扑序列,需要按照有向弧的指向,明确其先后顺序,例如:存在一条Vi指向Vj的有向弧,那么在拓扑序列中Vi需要写出Vj前面,其次对于属于同一层次或者毫无关联的两个结点可以不用在意先后顺序。根据题干描述,对有向图G进行拓扑排序得到的拓扑序列中
45、,顶点Vi在顶点Vj之前,我们试着对以下选项进行分析:A、一定存在有向弧,说法错误,不一定存在,Vi和Vj可以是并列的,并不一定要存在Vi到Vj的有向弧。B、一定不存在有向弧,说法正确,如果存在有向弧,那么Vj是需要在顶点Vi之前的,则与题干相悖,所以必定不存在。C、必定存在从Vi到Vj的路径,说法错误,不一定存在,Vi和Vj可以是两个毫无关联没有指向的关系,不会存在相关的路径。D、必定存在从Vj到Vi的路径,说法错误,如果存在Vj到Vi的路径,Vj就会出现在Vi前面29.单选题数据库中的视图是一个虚拟表。若设计师为user表创建一个user1视图,那数据字典中保存的是( )。问题1选项A.u
46、ser1查询语句B.user1视图定义C.user1查询结果D.所引用的基本表的【答案】B【解析】本题考查的是视图相关概念。视图在数据字典中保存的是视图定义。本题选择B选项。30.单选题在风险管理中,通常需要进行风险监测,其目的不包括( )。问题1选项A.消除风险B.评估所预测的风险是否发生C.保证正确实施了风险缓解步骤D.收集用于后续进行风险分析的信息【答案】A【解析】风险监测主要是对风险进行预测,评估,收集相关的信息,用来防止风险,从而做好相关的防范措施。对于评估所预测的风险是否发生、保证正确实施了风险缓解步骤、收集用于后续进行风险分析的信息都是风险监测的目的至于A选项消除风险,风险是无法
47、被消除掉的,只能尽量避免。31.单选题Designing object -oriented software is hard,and designing( )object -oriented software is even harder.You must find pertinent(相关的)objects,factor them into class at the right granularity,define class interfaces and inheritances,and establish key relationships among them.You design s
48、hould be specific to the problem at hand but also( )enough to address future problems and requirements.You also want to avoid redesign,or at least minimize it.Experienced object -oriented designers will tell you that a reusable and flexible design is difficult if not impossible to get right the firs
49、t time.Before a design is finished,they usually try to reuse it several times,modifying it each time.Yet experienced object-oriented designers do make good designs.Meanwhile new designers are( )by the options available and tend to fall back on non-object-oriented techniques theyve used before.lt tak
50、es a long time for novices to learn what good object-oriented design is all about.Experienced designers evidently know something inexperienced ones dont.What is it?One thing expert designers know not to do is solve every problem from first principles.Rather, they reuse solutions that have worked for
51、 them in the past.When they find a good( ).They use it again and again.Such experience is part of what makes them experts.Consequently,youll find( )patterns of classes and communicating objects in many object-oriented systems.问题1选项A.runnableB.rightC.reusableD.pertinent问题2选项A.clearB.generalC.personal
52、izedD.customized问题3选项A.excitedB.shockenC.surprisedD.overwhelmed问题4选项A.toolB.componentC.systemD.solution问题5选项A.recurringB.rightC.experiencedD.past【答案】第1题:C第2题:B第3题:D第4题:D第5题:A【解析】设计面向对象的软件很难,而设计(可复用的)面向对象软件就更难了。你必须找到合适的(相关的)对象,以适当的粒度将它们划分为类,定义类接口和继承,并在它们之间建立关键关系。你的设计应该针对眼前的问题,但(一般 )足以解决未来的问题和要求。你也要避免
53、重新设计,或者至少最小化它。有经验的面向对象设计师会告诉你,一个可重用和灵活的设计是很难第一次就“正确”的。在设计完成之前,他们通常会尝试多次重复使用,每次都是这样。然而,有经验的面向对象设计师确实能做出好的设计。同时,新的设计师们对可用的选项感到不安(第三题选项不知所措的意思),他们倾向于使用以前使用的非面向对象技术。电影要花很长时间才能了解好的面向对象的设计。经验丰富的设计师显然知道一些缺乏经验的东西。它是什么?有一件事专家设计师知道不能做的就是从第一原理解决每一个问题。相反,他们选择了过去对他们有效的解决方案。当他们找到一个好的(解决方案)。他们一次又一次地使用它。这样的经验是他们成为专
54、家的部分原因。因此,您将在许多面向对象系统中找到第五题个类和通信对象的模式。A. runnable可运行的B.right对的C. reusable可复用的D. pertinent中肯的,相关的A. clear清除B. general总则C. personalized个性化D.customized定制A. excited兴奋B. shocken 震惊C. surprised惊讶于D. overwhelmed不知所措A.tool工具B. component组成部分C. system系统D. solution解决方案A.recurring循环B.right是吗C.experienced经验丰富D.p
55、ast过去32.单选题以下关于敏捷统一过程(AUP) 的叙述中,不正确的是( )。问题1选项A.在大型任务上连续B.在小型活动上迭代C.每一个不同的系统都需要一套不同的策略、约定和方法论D.采用经典的UP阶段性活动,即初始、精化、构建和转换【答案】C【解析】本题考查的是敏捷统一过程(AUP)敏捷统一过程(AUP)采用“在大型上连续”以及在“小型上迭代”的原理来构建软件系统。采用经典的UP阶段性活动(初始、精化、构建和转换),提供了一系列活动,能够使团队为软件项目构想出一个全面的过程流。在每个活动里,一个团队迭代了使用敏捷,并将有意义的软件增量尽可能快地交付给最终用户。在每一个不同地系统都需要一
56、套不同地策略、约定和方法论是属于敏捷方法-水晶法的描述。注意区别这里面是考查敏捷统一过程,而非敏捷方法,两者之间有区别。33.单选题当二叉数中的结点数目确定时,( )的高度一定是最小的。问题1选项A.二叉排序数B.完全二叉树C.线索二叉树D.最优二叉树【答案】B【解析】完全二叉树是让二叉树的每一层的结点都尽可能全满,除了最底层,此时树的高度一定是最小的。排序二叉树可能会得到单枝树,每一层只有1个结点,此时树的高度可能最大。线索二叉树与二叉树遍历序列相关,高度并没有确定性,最优二叉树与结点的权值相关,构成的树的高度也是不确定的。本题选择B选项。34.单选题在运行时将调用和响应调用所需执行的代码加
57、以结合的机制是( )。问题1选项A.强类型B.弱类型C.静态绑定D.动态绑定【答案】D【解析】本题考查的是面向对象基本概念。程序运行过程中,把函数(或过程)调用与响应调用所需要的代码相结合的过程称为动态绑定。静态绑定是指在程序编译过程中,把函数(方法或者过程)调用与响应调用所需的代码结合的过程称之为静态绑定。本题描述的动态绑定,选择D选项。35.单选题进程P1、 P2、P3、P4、P5和P6的前趋图如下所示。用PV操作控制这6个进程之间同步与互斥的程序如下,程序中的空和空处应分别为( ) ,空和空处应分别为( ) , 空和空处应公别为( )问题1选项A.V(S1)和P(S2)P(S3)B.V(
58、S1)和V(S2)V(S3)C.P(S1)和P(S2)V(S3)D.P(S1)和V(S2)V(S3)问题2选项A.V(S3)和P(S3)B.V(S4)和P(S3)C.P(S3)和P(S4)D.V(S4)和P(S4)问题3选项A.V(S6)和P(S5)B.V(S5)和P(S6)C.P(S5)和V(S6)D.P(S5)和V(S5)【答案】第1题:D第2题:B第3题:A【解析】本题考查P,V操作前驱图相关问题。对于这种问题,根据箭头的指向判断相应的PV操作,先理清楚前趋图中的逻辑关系:P1没有前驱,P2的前驱是P1,P3的前驱是P2,P4的前驱是P2,P5的前驱是P3,P6的前驱是P4,P5。前驱就
59、是指只有在前驱进程完成后,该进程才能开始执行。由图可知,这里进程之间有6条有向弧,分别表示为P1P2,P2P3,P2P4,P3P5,P4P6,P5P6,各个进程间的逻辑关系,那么我们需要设定6个信号量(S1、S2、S3、S4、S5、S6),利用PV操作来控制这些过程。对于进程P1,完成之后,需要通知P2,所以在P1执行了之后,实现了V(S1)操作。对于进程P2,开始之前需要申请资源S1,实现P(S1),P2执行完成之后,需要通知P3和P4,实现两个V操作,分别是V(S2)和V(S3)对于进程P3,开始之前需要申请资源S2,实现P(S2),P3执行完成之后,需要通知P5,实现V操作,为V(S4)
60、对于进程P4,开始之前需要申请资源S3,实现P(S3),P4执行完成之后,需要通知P6,实现V操作,为V(S5)对于进程P5,开始之前需要申请资源S4,实现P(S4),P5执行完成之后,需要通知P6,实现V操作,为V(S6)对于进程P6,开始之前需要申请资源S5和S6,实现两个P操作,分别为P(S5)和P(S6)36.单选题()是 构成我国保护计算机软件著作权的两个基本法律文件。问题1选项A.计算机软件保护条例和软件法B.中华人民共和国著作权法和软件法C.中华人民共和国著作权法和计算机软件保护条例D.中华人民共和国版权法和中华人民共和国著作权法【答案】C【解析】考查知识产权的保护范围和对象。对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 车站装修批荡施工协议
- 防腐施工应急预案合同
- 互联网项目招投标合同注意事项
- 化工行业招待费管理新方法
- 花艺助理劳动合同注意事项
- 供水供电收费管理:发票管理办法
- 食品饮料输送管道施工
- 2025版空置房屋闲置资源盘活利用合作开发合同3篇
- 临时办学场所租赁合同
- 2025版二零二五年度新能源充电桩建设与运营合同3篇
- 家政培训行业的发展趋势与前景分析
- 定制酒项目投资分析及可行性报告
- 售后客服年终工作总结汇报
- 教师专业化发展经费保障制度
- 家长会课件:初二家长座谈会课件
- 健康照护师(初级)理论知识考核试题
- 物理九年级全册知识点总结(沪粤版)
- 20567-5纳税筹划-教案及讲稿
- 部编版三年级上册作文评价表
- 2019MATLAB-Simulink电力系统建模与仿真第2版
- 绘本故事:睡睡镇
评论
0/150
提交评论