《软件工程复习题及参考答案.docx》由会员分享,可在线阅读,更多相关《软件工程复习题及参考答案.docx(33页珍藏版)》请在优知文库上搜索。
1、一、选择1、文档是软件产品的-部分,没有文档的软件就不称其为软件。对2、在需求分析过程中,分析员要从顾客那里处理的最重要口勺问题是给该软件提供哪些信息。错3、需求规格阐明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的根据。错4、建立用例模型的环节包括确定角色、确定用例和绘制用例图。错5、数据流图建立系统的功能模型,它由数据流、加工和数据存贮构成,错6、软件配置管理是一组标识、组织和控制修改源程序的活动。错7、UML是种直观化、明确化、构建和文档化软件产物的通用语言。错8、好的测试是用少许的测试用例运行程序,发现被测程序尽量多H勺错误。对9、边界值分析措施是取输入嘲。出等价类的边界值
2、作为测试用例。对10、面向对象的分析是面向计算机系统建立软件系统的对象模型。错11、(D)是将系统化的、规范的、可定量的措施应用于软件的开发、运行和维护的过程,它包括措施、工具和过程三个要素。A软件过程B软件测试C软件生存周期D软件工程12、IS09000是由ISO/TC176制定的有关(B)和质量保证的国际原则。A质量控制B质量管理C质量筹划D质量改善13、CMM提供了一种框架,将软件过程改善的进化环节组织成5个成熟度等级。除第1级外,每个等级都包括了实现该成熟度等级目的的若干(B)A关键实践B关键过程域C软件过程能力D软件过程14、在软件开发的多种资源中,(D)是最重.要的资源。A开发工具
3、B措施C硬件环境D人员15、软件的夏杂性是(八),它引起人员通信困难、开发费用超支、开发时间超时等问题。A固有的B人为的C可消除的D不可减少的16、在多种不同样的软件需求中,(D)描述了顾客使用产品必须要完毕的任务,可以在用例模型或方案脚本中予以阐明。A业务需求B功能需求C非功能需求D顾客需求17、原型化措施是顾客和软件开发人员之间进行的一种交互过程,合用于(八)系统。A需求不确定的B需求确定的C管理信息D决策支持18、 (八)意味着一种操作在不同样的类中可以有不同样的实现方式。A多态性B多继承C类的可复用D信息隐蔽19、时序图反应对象之间发送消息的时间次序,它与(D)是同构H勺。A用例图B类
4、图C活动图D协作图20、单元测试的测试用例重.要根据(D)的成果来设计。A需求分析B源程序C概要设计D详细设计二、填空题1、在学校中,一种学生可以选修多门课程,一门课程可以由多种学生选修,那么学生和课程之间是痢关系。2、类A的一种操作调用类Bl内一种操作,且这两个类之间不存在其他关系,那么类A和类B之间是依嶷关系。3、用例及其协作之间是实现关系。4、接口及其实现类或构件之间是实现关系。5、动物与老虎之间是泛化关系。三、问答题1、软件复用的范围不仅仅波及源程序代码,请至少列出5种也许复用的软件元素。可复用的软件元索包括(选5种):项目计划、成本估计、体系构造、需求模型和规格阐明、设计、顾客文档和
5、技术文档、顾客界面、数据构造、测试用例。2、老式“瀑布模型的重要缺陷是什么?试阐明导致缺陷的原因。老式”渗布模型”的量要缺陷及其原因:在项目的初期,顾客常常很难清晰地给出所有需求,潺布模型却规定如此。由于渗布模型的特点,初期的错误直到开发晚期才能被发现,开发的风险较大3、某学校需要开发种学生成绩管理系统,教务人员可以通过该系统维护学生信息、课程信息和成绩信息,学生可以随时查询自己的成绩单,该系统的实体关系图如卜所示:请问图中与否应当增长”教务人员?试阐明理由。不应当增长“教务人员”,由于教务人员只是该系统的一种使用者,系统不处理其属性信息.4、下面是一段求最大值的程序,其中datalist是数
6、据表,n是daialisl的长度。intGetMax(intn,inidatalisi)intk=0;for(intj=l;jdatalis(k)k=j;returnk;(1)画出该程序的控制流图,并计算其MCCabe环路复杂性。控制流图如下,MCCabe环路复杂性为3。k=0j三lj+(2)用基本途径覆盖法给出测试途径。测试途径;Pathl:Path2:-Path3:-*(3)为各测试途径设计测试用例。测试用例:Pathl:取n=l,datalistO=1,预期成果:k=0Path2:取n=2,datalistO=Ldatalistl=0预期成果:k=0Path3:取n=2,datalist
7、O=0datalistl=L预期成果:k=l5、下图显示了某个学校课程管理系统的部分类图,其中一种学生(StUdent)可以懂得所有注册课程的教师(instructor),一种教师也可以懂得所有注册课程的学生。ShuimtIBftrwterMme:Strm-ftvdD:Int-ICfbtesdlMtwlBt*:butructorname:StrciiutmrtorID:Int-:IjutrwmllSetRepeip4StMdeMtfO:Stwdmt11目前提出种新的需求:”种教师也可以是某些课程的学生,那么下而设计A-C中哪种是最佳小J?为何?设计B是最佳的。学生和教员均可以从Candidat
8、e类继承而来:抽象出Role类,使Candidate类与Rme类之间形成多对多的关联关系,实现了“一种人既是教师又是某门课的学生”这个需求。各个应用系城:价对特定业务领域的番个构件库系蜕f与平台无关的低层构件包括嫌作防我、设备驱动等6、所谓分层体系构造是按层组织软件的一种软件体系构造,其中每层软件建立在低一层的软件层上,下图显示了一种分层体系构造。请选择对的I句答案,将其对应的序号填入图中的()供选择的答案:高效性通用性保密性专用性系统软件中间件应用软件支撑软件特定业务子系统一、选择1、(八)是软件生存期中的一系列有关软件工程活动的集合,它由软件规格阐明、软件设计与开发、软件确认、软件改善等活
9、动构成。A软件过程B软件工具C质量保证D软件工程2、(D)是以追求更高的效益和效率为目的的持续性活动。A质量筹划B质量控制C质量保证D质量改善3、CMM提供了一种框架,将软件过程改善的进化环节组织成5个成熟度等级。除第1级外,每一级都包括了实现这一级目的的若干关键过程域,每一种关键过程域又包括若干(八)。A关键实践B软件过程性能C软件过程能力D软件过程4、在多种不同样的软件需求中,功能需求描述了顾客使用产品必须要完毕的任务,可以在用例模型或方案脚本中予以阐明,(C)是从各个角度对系统的约束和限制,反应了应用对软件系统质量和特性H勺额外规定。A业务需求B功能规定C非功能需求I)顾客需求5、(八)
10、意味着一种操作在不同样的类中可以有不同样的实现方式。A多态性B多继承C类的复用D封装6、在面向对象的系统中,系统责任的良好分派原则是(B)。A在类之间均匀分派B集中分派在少数控制类中C根据交互图的消息进行分派D根据个人喜好进行分派7、软件配置项是软件配置管理的对象,即软件工程过程中产生的(C)。A接口B软件环境C信息项D版本8、软件测试计划开始于需求分析阶段,完毕于(B)阶段。A需求分析B软件设计C软件实现D软件测试二、问答题1、判断下列论述的对的性,将成果(J对的,X错误)填入()中,并改正错误的说法。(1) .(X)在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价
11、就会减少。改正:在软件开发的过程中,一种错误修复和改正得越晚,为此所花费的代价就会越高。(2) .(J)在需求分析中,分析员要从顾客那里处理的最重要的问题是明确软件做什么。(3) .(X)软件需求规格阐明书在软件开发中具有重要的作用,是软件可行性分析的根据。改正:软件可行性分析应在需求分析之前,因此,软件需求规格阐明书不应成为软件可行性分析的根据。(4) .(J)模型是对现实的简化,建模是为了更好地理解所开发的系统。(5) .(X)UML语言支持面向对象的重要概念,并与详细的开发过程有关。改正:UML语言支持面向对象的概念,并独立于详细的开发过程。(6) .(J)用例图定义了系统的功能需求,它
12、是从系统的外部看系统功能,并不描述系统内部对功能的详细实现。(7) .(X)好的测试用例应能证明软件是对的的。改正:好的测试用例在于能发现至今未发现的错误。(8) .(7)白盒测试仅与程序的内部构造有关,完全可以不考虑程序的功能规定。(9) .()当软件开发项目的进度有也许迟延时,增长开发人员并不能加紧进度。(10) .(X)软件技术更审是由顾客和测试人员实行的一种质量保证活动。改正:软件技术复审是由软件开发人员实行的一种质量保证活动。2、你认为一种好的软件开发人员应具有哪些基本素质?答:(1)牢固掌握计算机软件的基本知识和技能;(2)善于分析和综合问题,具有严密的逻辑思维能力;(3)工作踏实
13、细致,遵照原则和规范,具有严格的科学作风;(4)工作有耐心、有毅力、有费任心I(5)善于听取他人的意见,善于与周围人员团结协作,建立良好的人际关系:(6)具有良好的书面和口头体现能力。3、需求工程包括哪些基本活动?每一项活动的重要任务是什么?答:(1)需求获取(问题识别):采集、识别和提取顾客的需求,对问题和需求形成文档化的描述,使多种人员抵达一致的理解和承认。(2)需求分析I分析和综合所采集的信息,建立系统的详细逻辑模型.(3)需求规格阐明:编写软件需求规格阐明书,明确、完整和精确地描述已确定的需求。(4)需求验证:评审软件需求规格阐明,以保证其对的性、一致性、完备性、精确性和清晰性。(5)
14、需求管理:定义需求基线,在整个项目过程中跟踪需求状态及其变更状况。4、为何软件需要维护?简述软件维护的过程。答:在软件开发完毕交付顾客使用后,为了保证软件在一种相称长的时期可以正常运行,就需要对软件进行维护。软件维护的过程:(1)确认维护规定.(2)对于改正性维护申请,评价错误的严重性。对于严重的错误,立即安排人员,分析问题原因,进行“救火”性的紧急维护:对于不严重的错误,根据任务状况和轻重缓急进行统一安排。(3)对于适应性和完善性维护申请,需要确定申请的优先级,然后安排维护工作。并不是所有的完善性维护申请都必须承担,需要考虑商业需要、既有资源、未来发展方向等进行决定。5、根据下面给出的规格阐
15、明,运用等价类划分的措施,给出足够的测试用例。”种程序读入3个整数,它们分别代表种三角形的J3个边长。该程序判断所输入的整数与否构成种三角形,以及该三角形是般的、等腰时或等边的,并将成果打印出来。”规定:设三角形的3条边分别为A、B、C,并且(1)列出等价类表,格式如号输入条件有效等价类无效等价类与否构成一种三角形(1)A0且B0且C0且A+BC且B+CA且A+CB0(2) ASO或BN或CSO(3) A+BC或A+CB或B+CSA与否等腰二角形(4)A=B或A=C或B=C(5)AwB且AC且BC与否等边三角形(6)A=B且A=C且B=C(7)ArB或AC或BC(2)设计测试用例,格式如下:用例n:输入【A,B,C覆盖等价类