《软件设计与体系结构-复习指导-2023春(附参考答案).docx》由会员分享,可在线阅读,更多相关《软件设计与体系结构-复习指导-2023春(附参考答案).docx(50页珍藏版)》请在第一文库网上搜索。
1、软件设计与体系结构复习指导手册一、 课程介绍软件设计与体系结构是“软件工程”专业(本科)的一门统设必修课,并作为其他专业的选修课。本课程的主要任务是讲授软件设计和软件结构方面的基本思想、知识、原理和方法,包括软件设计与软件体系结构在软件工程中的地位与作用、软件设计基本方法与原则、统一建模语言UM12.0、面向对象的软件设计方法、软件体系结构风格与设计模式、基于构件的软件体系结构、软件体系结构评估、软件设计的进化等内容。本课程的教学目的是使学生在软件工程思想的基础上,掌握软件体系结构相关知识、原理和各种类型设计模式的基本结构,对现有软件体系结构有比较深入的理解,能够从系统结构角度分析现有软件系统
2、,能够运用具体的软件设计方法解决实际的软件工程问题,并能利用所学到的软件系统结构知识高效地设计软件系统,为从事大型复杂软件开发打下良好的基础。二、 考核说明1 .考核对象国家开放大学软件工程专业(本科)学生。2 .启用时间2023年秋季学期。3 .考核目标通过考核使学生在软件工程思想的基础上,掌握软件体系结构相关知识、原理和各种类型设计模式的基本结构,对现有软件体系结构有比较深入的理解,能够从系统结构角度分析现有软件系统,能够运用具体的软件设计方法解决实际的软件工程问题,并能利用所学到的软件系统结构知识高效地设计软件系统,为从事大型复杂软件开发打下良好的基础。4 .考核依据本课程考核说明是依据
3、国家开放大学”软件设计与体系结构”课程教学大纲、文字教材软件设计与体系结构(高等教育出版社2017年12月第2版)制定的。本课程考核说明是课程考核命题的基本依据。5 .考核方式及计分方法本课程考核采用形成性考核与终结性考核相结合的方式。形成性考核占课程综合成绩的30%,终结性考核占课程综合成绩的70%o课程考核成绩统一采用百分制,即形成性考核、终结性考核、课程综合成绩均采用百分制。课程综合成绩达到60分及以上(及格),可获得本课程相应学分。考核方式相关信息以国家开放大学当学期发布的考试安排文件为准。6 .终结性考核(1)考核目的终结性考核是在形成性考核的基础上,对学生学习情况和学习效果进行的一
4、次全面检测。(2)命题原则第一,本课程的考试命题严格控制在教学大纲规定的教学内容和考核要求的范围之内。第二,按掌握、理解、了解三个层次命题。第三,每份试卷所考的内容,覆盖本课程教材所学内容的70%以上章节。第四,试题难度适中。一般来讲,可分为容易、适中、较难三个程度,所占比例大致为:容易占40%,适中占40%,较难占20%。(3)考核手段网考(4)考核方式闭卷(5)考核时限90分钟(6)每套试卷的试题类型、数量及分值a)单项选择题:12道题。b)多项选择题:10道题。c)简答题:3道题。d)应用题:0(考题不包含应用题)试卷试题数合计25道题;试卷总分数100分。三、模拟题单选题1 .关于瀑布
5、模型的描述,下面不正确的是()A瀑布模型的核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作B.瀑布模型采用结构化的分析与设计方法,以便将逻辑实现与物理实现分开c1瀑布模型需建立一个可以运行的软件原型,该原型向用户展示待开发软件的全部或部分功能和性能D.瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并规定了自上而下、相互衔接的次序【答案】C2 .关于快速原型模型,下面不正确的是()o【A.】快速原型首先需建立一个可以运行的软件原型,该原型向用户展示待开发软件的全部或部分功能和性能【B.】快速原型模型能够实现客户或未来的用户与
6、系统的交互,用户对该原型进行测试评定,给出具体改进意见以丰富细化软件需求C1开发人员根据用户意见对软件进行修改完善,直至用户满意认可之后,进行软件的完整实现及测试、维护【D.】快速原型模型因为要求快速建立,增加了由于软件需求不明确带来的开发风险【答案】D3 .以下哪项是螺旋模型的优点()oA采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失B.对可选方案和约束条件的强调既有利于已有软件的重用,也有助于把软件质量作为软件开发的目标c1过多的迭代次数会增加开发成本,延迟提交时间D.增加了过多测试或测试不足所带来的风险【答案】B4
7、.关于增量模型,下面不正确的是()oA增量模型的各个构件是一次性并入已有的软件体系结构,因此不需要软件具备开放式的体系结构B.作为瀑布模型和快速原型模型的综合,能在较短的时间内向用户提交可完成部分工作的产品C1将待开发的软件系统模块化,可以分批次地提交软件产品,使用户可以及时了解软件项目的进展D.以组件为单位进行开发降低了软件开发的风险。一个开发周期内的错误不会影响到整个软件系统的开发【答案】A5 .以下哪项不属于软件工程的三要素()oA1方法B.工具C1过程D.质量)6 .关于软件工程中结构化方法的设计原则,以下描述错误的是(A.J每个模块执行一个功能,每个模块只有一个入口和一个出口B.每个
8、模块由过程语句或函数方式等归其上级模块调用C1应当构造内部联系紧密的模块,降低模块间的联系D.结构化设计采用自下而上的模块化设计方法【答案】D7 .以下哪项不是面向对象方法的主要特征()oA封装性B.继承性C1多态性D.适应性【答案】D8 .耦合是模块之间依赖程度的度量。以下关于耦合的说法,错误的是()oA如果两模块中任一个都不依赖于对方能独立工作,则称这两模块为非直接耦合B.如果两模块都与同一个数据结构有关,则称这两个模块为特征耦合c1当若干模块均与同一个外部环境关联,它们之间存在内容耦合D.当若干模块通过全局的数据环境相互作用时,它们之间存在公共耦合9 .关于软件体系结构核心模型的组成元素
9、,以下说法错误的是()oA1连接件用来表示构件之间的交互B.配置用来表示构件和连接件的拓扑逻辑和约束C1构件作为封装实体,不需要借助其接口即可与外部环境交互D.构件用来表示系统中主要的计算元素和数据存储【答案】C10 .关于软件体系结构描述语言,以下说法错误的是()oA作为一种形式化语言,它为软件系统的概念体系结构建模提供了具体语法和概念框架B.基于底层语义的工具为体系结构的表示、分析、进化、细化、设计过程等提供支持C1软件体系结构描述语言的三个基本元素包括构件、连接件、体系结构配置D.编程语言、面向对象的建模符号、形式化说明语言均属于软件体系结构描述语言【答案】D11 .关于调用/返回风格的
10、体系结构中的主-子程序体系结构风格,以下说法错误的是()oA由于单线程控制,计算的顺序得以保障B.有用的计算结果在同一时刻会产生多个C1单线程的控制可以直接由程序设计语言来支持D.子程序的正确性与它调用的子程序的正确性有关【答案】B12 .关于调用/返回风格的体系结构中的分层体系结构风格,以下说法错误的是()oA1支持基于抽象程度递增的系统设计,使得设计者可以把复杂系统按递增的步骤进行分解B.支持功能增强,每一层至多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层C1每个系统都可以很容易地划分为分层体系结构D.支持复用,只要提供的服务接口定义不变,同一层的不同实现可以交换使用【答案】C1
11、3 .在进行软件设计过程中,以下关于“逐步求精”与“抽象”的说法,错误的是()。A过程抽象是把完成一个特定功能的动作序列抽象为一个过程名和参数表,以后通过指定过程名和实际参数调用此过程B.数据抽象是把一个数据对象的定义抽象为一个数据类型名,用此类型名可定义多个具有相同性质的数据对象c1逐步求精的主要思想是,针对某个功能的宏观描述用逐步求精的方法不断地分解,逐步确立过程细节,直至该功能用程序语言描述的算法实现为止D.逐步求精的每一步是用更为简单的描述代替上一层次的描述【答案】D14 .信息隐藏是使模块化开发活动更加简单的重要因素。以下关于信息隐藏的说法错误的是()oA1为达到信息隐藏的目的,模块
12、所含信息对于那些不需要这些信息的模块不可访问B.为达到信息隐藏的目的,每个模块只完成一个相对独立的特定功能C1为达到信息隐藏的目的,每个模块可与其他模块共同完成特定功能D.为达到信息隐藏的目的,模块之间仅仅交换那些为完成系统功能必须交换的信息【答案】C15 .内聚是一个模块内部各成分之间关联程度的度量。以下哪项不属于低等级内聚()oA偶然性内聚B.逻辑性内聚C1时序内聚D.过程性内聚【答案】D16 .耦合是模块之间依赖程度的度量。以下关于耦合的说法,错误的是()oA如果两模块中任一个需依赖对方才能工作,则称这两模块为非直接耦合B.如果两模块间通过参数交换信息,而信息仅限于数据,则称这两模块为数
13、据耦合c1若两个模块传递的信息中含有控制信息,则称这两模块耦合度为控制耦合D.当一个模块使用另一模块内部的数据或控制信息,或一个模块直接转移到另一模块内部,则称这两模块为内容耦合【答案】A17 .以下关于软件结构评价的说法,错误的是()oA一个软件的深度说明其控制的层数B.一个软件的宽度说明其控制的层数C1一个模块的扇出率指该模块直接控制的其他模块数D.一个模块的扇入率指能直接控制该模块的模块数【答案】B18 .以下关于软件结构评价的说法,错误的是()oA一个软件的深度说明其控制的层数B.一个软件的宽度说明其控制的跨度C1一个模块的扇出率指该模块直接控制的其他模块数D.一个模块的扇入率指该模块
14、直接控制的其他模块数【答案】D19 .关于用户界面分析和设计模型,以下说法错误的是()oA1用户模型给出了系统用户的介绍B.设计模型用以理解潜在的系统用户C1心智模型是用户对所使用系统的想象【D.】实现模型结合了基于计算机的系统外部显示以及所有描述系统语法和语义的信息【答案】B20 .以下哪项不属于常用的用户界面原型构建方式()oA脚本驱动方式B.可视化的程序语言C手工勾画D.基于因特网的原型【答案】D21 .在UM12.0建模机制中,()属于结构建模。A1活动图B.类图C顺序图D.通信图【答案】B22 .在UM12.0建模机制中,()既属于行为建模又可以归属为交互图。A活动图B.用例图c1顺序图D.状态图【答案】C23 .在UM12.0类图中,关于“关联关系”描述错误的是()oA1关联关系可以具有方向性B.关联未必是双向的,必须用“有向连线”表示C1在关联关系上可以写明关联名称,每个类在关联中的角色以及两个类的实例在实际关联中的数量对应关系D.在关联关系表示中,用星号“钎表示多个,用n表示n个实例,n.m表示数量的范围【答案】B24 .在UM12.0类图中,下面哪个符号表示泛化(继承)关系()oA1D.O【答案】BA系统整体设计B.对象设计C1功能设计D.在消息设计