《软件工程》期末考试复习题库(含答案)_第1页
《软件工程》期末考试复习题库(含答案)_第2页
《软件工程》期末考试复习题库(含答案)_第3页
《软件工程》期末考试复习题库(含答案)_第4页
《软件工程》期末考试复习题库(含答案)_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE1《软件工程》期末考试复习题库(含答案)一、单选题1.软件开发成本度量主要指软件开发项目所需的财务性成本的估算。主要方法不包括()。A、类比估算法B、细分估算法C、周期估算法D、代码行估算法答案:D2.在下列测试技术中,()不属于黑盒测试技术。A、等价划分B、错误推测C、边界值分析D、逻辑覆盖答案:D3.关于软件测试,不正确的描述是()。A、测试前要认定被测试的软件正确B、要尽量避免测试自己编写的程序C、测试要兼顾合理输入与不合理输入数据D、测试不能穷尽所有的测试,要据人力物力安排测试,选择好测试用例与测试方法答案:A4.()是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。A、软件过程B、软件测试C、软件生命周期D、软件工程方法学答案:D5.在UML中,通过建立类图来表示()。A、功能模型B、状态模型C、行为模型D、对象模型答案:D6.从下列叙述中,能够与软件开发各阶段,如需求分析、设计、编码相对应的软件测试是()。A、组装测试、确认测试、单元测试B、单元测试、组装测试、确认测试C、单元测试、确认测试、组装测试D、确认测试、组装测试、单元测试答案:D7.软件是计算机系统中与硬件相互依存的另一部分,它包括文挡、数据及()。A、数据B、软件C、文档D、程序答案:D8.软件需求规格说明的内容不应包括()。A、主要功能B、算法的详细描述C、用户界面及运行环境D、软件的性能答案:B9.软件开发时,一个错误发现得越晚,为改正它所付出的代价就()。A、越大B、越小C、越不可捉摸D、越接近平均水平答案:A10.软件生命周期中所花费用最多的阶段是()。A、详细设计B、软件编码C、软件测试D、软件维护答案:D11.UML的全称是()A、unifyModelingLanguageB、unifiedModelingLanguageC、unifyMakingLanguageD、unifiedMakingLanguage答案:B12.内聚程度最低的是()内聚。A、通信B、过程C、巧合D、时间答案:C13.需求分析的最终产品是()。A、数据流程图案B、数据字典C、判定表D、需求规格说明书答案:D14.模块的内聚性最高的是()。A、逻辑内聚B、功能内聚C、时间内聚D、偶然内聚答案:B15.在编制程序时不应采纳的原则之一是()。A、尽量避免复杂的条件测试B、注释要充分C、程序越短越好D、变量名缩写规则一致答案:C16.软件测试的目标是()。A、证明软件是正确的B、发现错误、降低错误带来的风险C、排除软件中所有的错误D、与软件调试相同答案:B17.单选题简单2分

在ATM自动取款机的工作模型中(用户通过输入正确的用户资料,从银行取钱的过程),下面哪个是参与者()。A、用户B、ATM取款机C、ATM取款机管理员D、取款答案:A18.结构化程序设计的一种基本方法是()。A、筛选法B、迭代法C、逐步求精法D、递归法答案:C19.系统分析员Analyst在做储蓄系统的需求开发时,发现:①“取款”用例、②“查询余额”用例、③“更改密码”用例都要使用、④“验证卡号和密码”用例的功能。那么①②③3个用例与用例④的关系是()。A、使用关系B、扩展关系C、组成关系D、包含关系答案:D20.在用逻辑覆盖法设计测试用例时,有语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖和路径覆盖等,其中()是最弱的覆盖准则。A、语句覆盖B、条件覆盖C、判定-条件覆盖D、路径覆盖答案:A21.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()。A、软件工程B、软件周期C、软件危机D、软件产生答案:C22.在类图中,下面哪个符号表示继承关系()。A、实心箭头B、空心箭头C、实心菱形D、空心菱形答案:B23.软件详细设计的主要任务是确定每个模块的()。A、算法和使用的数据结构B、外部接口C、功能D、编程答案:A24.各种软件维护的类型中最重要的是()。A、完善性维护B、改正性维护C、适应性维护D、预防性维护答案:A25.提高测试的有效性非常重要,成功的测试是指()。A、证明了被测试程序正确无误B、说明了被测试程序符合相应的要求C、未发现被测程序的错误D、发现了至今为止尚未发现的错误答案:D26.面向对象的分析方法主要是建立三类模型,即()。A、系统模型、E-R模型、应用模型B、对象模型、交互模型、应用模型C、对象模型、E-R模型、用例模型D、对象模型、交互模型、用例模型答案:A27.与设计软件测试用例无关的文档是()。A、需求规格说明B、详细设计说明C、可行性研究报告D、源程序答案:C28.下列()属于软件工程工具软件。A、字处理软件B、RationalRoseC、操作系统D、DBMS答案:B29.瀑布模型本质上是一种()。A、线性顺序模型B、顺序迭代模型C、线性迭代模型D、及早见产品的模型答案:A30.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是()。A、数据库设计B、数据通信C、数据定义D、数据维护答案:C31.测试中应该选择()的数据作为测试数据。A、发现错误可能性大B、能证明软件正确C、简单D、复杂答案:A32.信息隐藏概念与()概念直接相关。A、模块的独立性B、模块类型的划分C、软件结构定义D、软件生命周期答案:A33.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()。A、软件工程B、软件周期C、软件危机D、软件产生答案:C34.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为()。A、改正性维护B、适应性维护C、完善性维护D、预防性维护答案:A35.软件文档在软件工程实施中是十分重要的,它不仅是软件开发各阶段的重要依据,而且极大影响软件的()。A、可靠性B、可维护性C、可扩展性D、可移植性答案:B36.对于程序设计,不正确的陈述是()。A、为了减少程序的长度,最好不要在程序中增加注释。B、变量名以简洁为好,名字太长了难以理解,增加了程序的复杂性。C、程序语句要求体现层次性,以使结构清晰明显。D、数据结构的组织和复杂程度在设计期间确定,但数据说明的风格是在写程序时确定的。答案:A37.面向对象的主要特征除对象惟一性、封装、继承外,还有()。A、多态性B、完整性C、可移植性D、兼容性答案:A38.下列属于软件开发项目风险的是()。A、关键技术人员流失B、有重大技术障碍C、软件没市场需求D、不适合产品整体战略答案:A39.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001.设计这组测试用例的方法是()。A、条件覆盖法B、等价分类法C、边界值分析法D、错误推测法答案:C40.数据流图(DFD)中的每个数据处理至少需要()。A、一个输入数据流B、一个输出数据流C、一个输入或者输出数据流D、一个输入数据流和一个输出流答案:D41.下面的()不是良好编码的原则。A、在开始编码之前建立单元测试B、建立一种有助于理解的直观布局C、保持变量名简短以便代码紧凑D、确保注释与代码完全一致答案:C42.在E-R模型中,包含以下基本成分()。A、数据、对象、实体B、控制、联系、对象C、实体、联系、属性D、实体、属性、操作答案:C43.针对应用系统运行期间的数据特点,修改它的排序算法使其更高效,属于软件维护中的()。A、改正性B、完善性C、适应性D、预防性答案:B44.经过严密的软件测试后所提交给用户的软件产品中()。A、软件不再包含任何错误B、还可能包含软件错误C、所提交给用户的可执行文件不会含有错误D、文档中不会含有错误答案:B45.若有一个程序,输入量只有一个X,现从输入的角度考虑一组测试用例:输入为0、输入为空。设计这组测试用例的方法是()。A、条件覆盖法B、等价分类法C、边界值分析法D、错误推测法答案:D46.类的行为应该基于()进行测试。A、数据流图B、对象图C、状态图D、用例图答案:C47.UML中能够描述对象的行为,反映出对象的状态与事件关系的是()。A、状态图B、流程图C、结构图D、对象图答案:A48.以下关于软件测试的原则错误的是()。A、尽早地和不断地进行软件测试B、测试用例应包括合理的输入条件和不合理的输入条件C、软件测试中的错误存在群集现象D、应由程序员测试自己编写的程序答案:D49.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层数据流图描述了系统的()。A、总貌B、细节C、抽象D、软件的作用答案:A50.软件概要设计结束后得到()。A、初始化的软件结构图B、优化后的软件结构图C、模块的接口图和详细算法D、程序编码答案:B51.软件复杂性主要体现在()。A、数据的复杂性B、程序的复杂性C、控制的复杂性D、问题的复杂性答案:D52.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是()。A、数据库设计B、数据通信C、数据定义D、数据维护答案:C53.为高质量地开发软件项目,在软件结构设计时,必须遵循()原则。A、信息隐藏B、质量控制C、程序优化D、数据共享答案:A54.在软件的分析阶段,常用()来描述业务处理系统的信息来源、存储、处理和去向。A、E-R图B、框图C、数据流图D、时序图答案:C55.面向对象分析模型不包括如下()。A、功能模型B、对象模型C、动态模型D、物理模型答案:D56.单元测试的测试用例主要根据()的结果来设计。A、需求分析B、源程序C、概要设计D、详细设计答案:D57.下列关于功能性注释不正确的说法是()。A、功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态B、注释用来说明程序段,需要在每一行都要加注释C、可使用空行或缩进,以便很容易区分注释和程序D、修改程序也应修改注释答案:B58.软件结构图的形态特征能反映程序重用率的是()。A、深度B、宽度C、扇入D、扇出答案:C59.面向对象分析过程中获取用户需求不正确的是()。A、参观用户的工作流程,观察用户的操作B、向用户群体发调查问卷C、与同行、专家交谈,听取他们的意见D、系统分析员与用户简单交流后与设计人员确定答案:D60.下面()不是Web界面设计的原则。A、一致性B、简洁性C、美观性D、方便设计答案:D61.喷泉模型是对象驱动的,适合于()的开发方法。A、结构化B、形式化C、面向对象D、面向数据答案:C62.软件生命周期中所花费用最多的阶段是()。A、详细设计B、软件编码C、软件测试D、软件维护答案:D63.为适应软件运行环境的变化而修改软件的活动称为()。A、纠错性维护B、适应性维护C、改善性维护D、预防性维护答案:B64.为了提高模块的独立性,模块内部最好是()。A、逻辑内聚B、时间内聚C、功能内聚D、通信内聚答案:C65.下面关于程序设计风格叙述错误的是()。A、使用有意义的变量名B、程序的注释越少越好C、程序的格式应有助于读者理解程序D、不要修改不好的程序,要重新编写答案:B66.按软件生命周期方法设计软件的过程中,画数据流图属于下面哪个阶段的工作()。A、需求分析B、程序设计C、详细设计D、软件维护答案:A67.面向对象的开发方法中,()将是面向对象技术领域内占主导地位的标准建模语言。A、Booch方法B、Coad方法C、UML语言D、OMT方法答案:C68.软件按照设计要求,在规定时间和条件下不出故障,持续运行的程度。属于以下哪一个软件质量要素()。A、正确性B、可靠性C、完整性D、可使用性答案:B69.以下哪一个是瀑布模型的缺点。()A、可强迫开发人员采用规范化的方法。B、严格地规定了每个阶段必须提交的文档。C、要求每个阶段交出的所有产品都必须是经过验证的。D、适用于项目开始时需求已确定的情况。答案:D70.()意味着一个操作在不同的类中可以有不同的实现方式。A、多态性B、多继承C、类的可复用D、信息隐蔽答案:A71.下面的()说法是正确的。A、软件危机在20世纪70年代末期全面爆发B、当前先进的软件工程方法已经解决了软件危机的问题C、软件危机是指在软件开发和维护过程中所遇到的一系列严重问题D、软件危机是指在软件产品中存在一系列的质量问题答案:C72.不属于软件项目管理的是()。A、软件销售利润B、风险管理C、质量监控D、软件过程能力评估答案:A73.以下哪一项不是软件危机的表现形式()。A、开发的软件不满足用户需要B、开发的软件可维护性差C、开发的软件价格便宜D、开发的软件可靠性差答案:C74.确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于()。A、集成测试B、恢复测试C、验收测试D、单元测试答案:C75.下列模块内聚程度最高的是()内聚。A、巧合B、过程C、信息D、时间答案:C76.软件维护产生的副作用,是指()。A、开发时的错误B、隐含的错误C、因修改软件而造成的错误D、运行时误操作答案:C77.概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是()。A、把软件划分成模块B、确定模块之间的调用关系C、确定各个模块的功能D、设计每个模块的具体算法答案:D78.通常在()阶段中,无须用户参与。A、需求分析B、维护C、编码D、测试答案:C79.数据字典是用来定义()中的各个成份的具体含义的。A、程序流程图B、功能结构图C、系统结构图D、数据流图答案:D80.模块A执行几个逻辑上相似的功能则该模块具有()。A、功能内聚B、逻辑内聚C、时间内聚D、巧合内聚答案:B81.PDL是()。A、流程图B、判定表C、判定树D、伪码答案:D82.一般说来,软件生命周期由三个大的时期组成,不包括下面哪个时期()。A、软件定义B、软件开发C、详细设计D、软件维护答案:C83.在结构化分析方法中,用以表达系统内数据的运动情况的工具是()。A、数据流图B、数据词典C、结构化语言D、判定表与判定树答案:A84.软件开发成本度量主要指软件开发项目所需的财务性成本的估算。主要方法不包括()。A、类比估算法B、细分估算法C、周期估算法D、代码行估算法答案:D85.使用独立测试团队的最好理由是()。A、软件开发人员不需要做任何测试B、测试团队将更彻底地测试软件C、测试人员在测试开始之前不参与项目D、开发人员与测试人员之间的争论会减少答案:B86.设计软件结构是下面()阶段完成的任务。A、需求分析B、详细设计C、概要设计D、实现答案:C87.内聚程度最低的是()内聚。A、偶然B、过程C、顺序D、时间答案:A88.结构化设计是一种面向()的设计方法。A、数据流B、模块C、数据结构D、程序答案:A89.程序的三种基本控制结构是()。A、过程、子程序和分程序B、顺序、选择和重复C、递归、迭代和回溯D、调用、返回和转移答案:B90.在软件的需求分析中,开发人员要从用户那里解决的最重要的问题是()。A、要让软件做什么B、要让软件怎么做C、软件如何实施D、软件如何测试答案:A91.使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。A、程序的内部逻辑B、程序的复杂结构C、使用说明书D、程序的功能答案:B92.冰箱和海尔冰箱这两个事物之间是()关系。A、继承B、聚合C、关联D、细化答案:A93.以下关于McCabe度量法错误的是()。A、源程序中存在的错误数与McCabe环复杂度量值有关B、诊断和纠正错误所需的时间与McCabe环复杂度量值有关C、McCabe度量数大的程序结构一定是不好的程序结构D、McCabe度量法是一种基于程序控制流的复杂性度量方法答案:C94.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。A、结合B、隐藏C、封装D、抽象答案:C95.模块化设计原则应使软件结构具有()。A、高内聚高耦合B、低内聚低耦合C、高内聚低耦合D、低内聚高耦合答案:C96.详细设计的基本任务是确定每个模块的()设计A、功能B、调用关系C、输入输出数据D、算法答案:D97.软件结构图中,模块框之间若有直线连接,表示它们之间存在()。A、调用关系B、组成关系C、链接关系D、顺序执行关系答案:A98.“淘宝定时确认收货”属于面向对象设计任务中的()。A、事件驱动型任务B、时钟驱动型任务C、优先任务D、协调任务答案:A99.总体设计的组成阶段不包括下面的()。A、系统设计B、数据库的设计C、详细设计D、结构设计答案:C100.UML中表示对象之间交互的图为()。A、类图B、活动图C、顺序图D、部署图答案:A101.测试的关键问题是()。A、如何组织对软件的评审B、如何验证程序的正确性C、如何采用综合策略D、如何选择测试用例答案:D102.软件生命周期的最后的一个阶段是()。A、书写软件文档B、软件维护C、稳定性测试D、书写详细用户说明答案:B103.在类图表示的对象模型中,类之间的()包括一对一、一对多、多对多。A、继承B、关联C、聚合D、泛化答案:B104.火车是一种陆上交通工具。火车和陆上交通工具之间的关系是()关系。A、组装B、整体部分C、一对一D、一般特殊答案:D105.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001.设计这组测试用例的方法是()。A、条件覆盖法B、等价分类法C、边界值分析法D、错误推测法答案:B106.程序的三种基本控制结构,包括顺序结构、()和循环结构。A、分支结构B、说明结构C、输入结构D、输出结构答案:A107.详细设计常用的三种工具是()。A、文档、表格、流程B、图形、表格、语言C、数据库、语言、图形D、文档、图形、表格答案:B108.面向数据流的设计方法把()映射成软件结构。A、数据流B、系统结构C、控制结构D、信息流答案:A109.下面几种白箱测试技术,哪种是最强的覆盖准则()。A、语句覆盖B、条件覆盖C、判定覆盖D、条件组合覆盖答案:D110.为了使程序能在不同计算机上运行,程序应具有较好的()A、可移植性B、可重用性C、可维护性D、可适应性答案:A111.软件项目的进度管理有许多方法,()的优点是标明了各任务的计划进度和当前进度,能动态地反映软件开发进展情况,但难以反映多个任务之间存在的复杂的逻辑关系。A、甘特图B、IPOC、PERTD、网络图答案:A112.版本控制是()的核心功能。A、风险管理B、软件质量保证C、软件过程能力评估D、软件配置管理答案:D113.下列不是面向对象方法优点的是()。A、与人类习惯的思维方法一致B、稳定性好C、可重用性好D、不用维护答案:D114.下面几种白盒测试技术,哪种是最强的覆盖准则()A、语句覆盖B、条件覆盖C、判定覆盖D、条件组合覆盖答案:D115.()反映了类间的一种层次关系。A、继承B、抽象C、封装D、多态答案:A116.为使得开发人员对软件产品的各个阶段工作都进行周密的思考,从而减少返工,所以()的编制是很重要的。A、需求说明B、概要说明C、软件文档D、测试计划答案:A117.面向对象方法的用例图中,()关系表示一个用例的执行可能需要由其他用例的功能来扩展。A、<extend>B、<include>C、<use>D、<public>答案:A118.进行软件需求分析可使用多种工具,其中不包括以下哪一个()。A、数据流图B、E-R图C、程序流程图D、数据字典答案:C119.等价划分测试方案属于()技术。A、黑盒测试B、玻璃箱测试C、单元测试D、错误推测答案:A120.PAD图的控制执行流程为()。A、自下而上、从左到右B、自上而下、循环执行C、自上而下、从左到右D、以上都不对答案:C121.()引入了“风险驱动”的思想,适用于大规模的内部开发项目。A、增量模型B、喷泉模型C、快速原型模型D、螺旋模型答案:D122.引起软件改变的原因主要有()。A、运行环境变化B、需求变化C、系统有错D、以上全都是答案:D123.下列的基本成分中,()不是数据流程图的基本成分。A、信息处理B、信息存储C、源点、终点D、系统状态答案:D124.软件设计和编码过程中,采取()的做法将使软件更加容易理解和维护.A、良好的程序结构,有无文档均可B、使用标准或规定之外的语句C、编写详细正确的文档,采用良好的程序结构D、尽量减少程序中的注释答案:C125.确定测试计划是在()阶段制定的。A、总体设计B、详细设计C、编码D、测试答案:A判断题1.软件的开发与运行经常受到硬件的限制和制约。A、正确B、错误答案:A2.传统的单元测试方法与面向对象软件的单元测试有很大不同。A、正确B、错误答案:A3.测试中应该选择发现错误可能性大的数据作为测试数据。A、正确B、错误答案:A4.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。A、正确B、错误答案:A5.程序的格式应有助于读者理解程序。A、正确B、错误答案:A6.应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。A、正确B、错误答案:B7.目前的绝大多数软件都不适合于快速原型技术A、正确B、错误答案:B8.面向对象设计中应尽量设计简单的类,避免类中有过多属性和方法。A、正确B、错误答案:A9.系统测试的主要方法是白盒测试,主要进行功能测试、性能测试、安全性测试及可靠性等测试。A、正确B、错误答案:B10.缺乏处理大型软件项目的经验,是产生软件危机的唯一原因。A、正确B、错误答案:B11.对于每一条独立路径而言,测试用例是唯一的。A、正确B、错误答案:B12.采用模块化技术有助于提高软件的可靠性。A、正确B、错误答案:A13.完善性维护是提高或完善软件的性能。A、正确B、错误答案:A14.软件测试是要发现软件中的所有错误。A、正确B、错误答案:B15.用穷举测试是较现实的测试方法。A、正确B、错误答案:B16.重视程序结构的设计,能使程序具有较好的层次结构。A、正确B、错误答案:A17.由于软件是逻辑产品,软件质量较容易直接度量。A、正确B、错误答案:B18.喷泉模型是对象驱动的,适合于面向对象的开发方法。A、正确B、错误答案:A19.编程序时应尽可能利用硬件特点以提高程序效率。A、正确B、错误答案:B20.将基类映射到一张表,每个子类映射到一张表。这种方法适用于子类的属性和基类的属性都比较多的情况。A、正确B、错误答案:A21.设计几乎都是从头开始,成本和进度很难估计。A、正确B、错误答案:A22.尽可能使用高级语言编写程序。A、正确B、错误答案:A23.以结构化分析方法建立的系统模型就是数据流图。A、正确B、错误答案:B24.测试,开发者通常不在测试现场,由用户记下遇到的所有问题。A、正确B、错误答案:B25.软件需求分析的任务是建立软件模块结构图。A、正确B、错误答案:B26.用户对软件需求的描述不精确,往往是产生软件危机的原因之一。A、正确B、错误答案:A27.编码时应尽可能使用全局变量。A、正确B、错误答案:B28.测试是程序的执行过程,目的在于发现错误。A、正确B、错误答案:A29.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。A、正确B、错误答案:A30.如果通过软件测试没有发现错误,则说明软件是正确的。A、正确B、错误答案:B31.一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。A、正确B、错误答案:B32.软件是一种物理实体A、正确B、错误答案:B33.面向对象的分析方法中,状态图描绘的是事件与对象状态的关系,当对象接收到一个事件后,其状态会发生改变。(A、正确B、错误答案:A34.等价类划分法选择测试用例的原则之一:设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的无效等价类。A、正确B、错误答案:B35.瀑布模型适用于项目开始时需求不确定的情况A、正确B、错误答案:B36.测试用例、出错统计和有关的分析报告一般不用长期保存。A、正确B、错误答案:B37.编码时尽量多用全局变量。A、正确B、错误答案:B38.类是具有相同属性和服务的一组对象的集合。A、正确B、错误答案:A39.用例图中,“参与者”的图形符号为一个小木头人。A、正确B、错误答案:A40.软件测试的目的是为了无一遗漏的找出所有的错误。A、正确B、错误答案:B41.软件评审的作用是在发现及改正错误的成本相对较小时就及时发现并排除错误。A、正确B、错误答案:A42.结构化分析框架的核心是数据流图。A、正确B、错误答案:B43.程序中的注解越少越好。A、正确B、错误答案:B44.B/S结构可以更加充分利用网络上的各种资源,但是应用程序维护的工作量大大增加。A、正确B、错误答案:B45.面向对象的集成测试也可以使用传统的自顶向下和自底向上集成策略。A、正确B、错误答案:A46.面向对象的分析方法中,状态图通过描绘系统的状态及引起系统状态转换的事件来表示系统的行为。A、正确B、错误答案:A47.流程图也称为程序(框图)是最常用的一种表示法。A、正确B、错误答案:A48.开发软件就是编写程序。(A、正确B、错误答案:B49.一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见。A、正确B、错误答案:A50.软件也会磨损和老化。A、正确B、错误答案:B51.加工规格说明必须描述实现加工的策略而不是实现加工的细节。A、正确B、错误答案:A52.采用模块化技术有助于提高软件的可修改性。A、正确B、错误答案:A53.B/S结构是“零客户端”方式。A、正确B、错误答案:A54.软件的质量好坏主要由验收人员负责,其他开发人员不必关心。A、正确B、错误答案:B55.任务子系统中的协调任务不仅作协调工作,也可以让其再承担其它服务工作。A、正确B、错误答案:B56.UML只能应用于软件系统模型的建立。A、正确B、错误答案:B57.在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手资料,并从中提取出有价值的需求。A、正确B、错误答案:A58.文档可用于专业人员和用户之间的通信和交流、软件开发过程的管理、运行阶段的维护。A、正确B、错误答案:A59.应当把“尽早和不断地测试”作为开发者的座右铭。A、正确B、错误答案:A60.甘特图横轴表示项目,纵轴表示时间,线条表示期间计划和实际完成情况。A、正确B、错误答案:B61.适应性维护是改进软件未来的可维护性和可靠性。A、正确B、错误答案:B62.继承是子类自动地共享基类中定义的数据和方法的机制。A、正确B、错误答案:A63.好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案。A、正确B、错误答案:A64.可以用CASE环境或程序自动生成工具来自动生成一部分程序。A、正确B、错误答案:A65.进行总体设计时要加强模块间的联系。A、正确B、错误答案:B66.缺乏有力的方法学的指导和有效的开发工具的支持,这往往是产生软件危机的原因之一。A、正确B、错误答案:A67.人机界面应根据用户需求设计。A、正确B、错误答案:A68.面向对象的单元测试主要是对类成员函数测试。A、正确B、错误答案:A填空题1.模块之间的耦合性最低的耦合是()。答案:非直接耦合2.在结构化分析方法中用实体―关系图表达系统中的对象及其关系。在实体―关系图中,表达对象的实例之间的关联有三种类型:一对一联系、()联系、多对多联系。答案:一对多3.模块独立性由两个定性标准度量:内聚和()。答案:耦合4.软件测试分为单元测试、集成测试、()和确认测试几个步骤。答案:系统测试5.问题定义阶段必须回答的关键问题是:()?答案:要解决的问题是什么6.如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。这属于()法的黑盒测试。答案:边界值分析7.()测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。答案:黑盒8.热水器和小鸟牌热水器这两个事物之间是()关系。答案:继承9.瀑布模型的几个阶段中,()阶段环节出错,对软件的后期影响最大。答案:需求分析10.对表进行()的分解方法常常用于表中记录与时间相关的情况,一般在主表中只存放最近的数据记录,而将以前的数据记录转到对应的历史表中。答案:横切11.模块A执行几个逻辑上相似的功能则该模块具有()内聚。答案:逻辑12.开发时期通常由四个阶段组成:总体设计、详细设计、()和测试。答案:|编码13.模块的内聚性最高的内聚方式是()。答案:功能内聚14.CMM的软件过程成熟度等级包括初始级、可重复级、已定义级、已管理级和()级。答案:优化15.银行卡管理系统软件与POS机之间的接口属于软件与()的接口。答案:硬性16.如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。这属于()法的黑盒测试。答案:边界值分析17.面向对象设计在设计任务管理子系统时,常见的任务类型有()、时钟驱动型任务、优先任务、关键任务和协调任务。答案:事件驱动型任务18.分层数据流图中顶层数据流图描述系统的输入和()数据流。答案:输出19.盒图是对()的改进,它避免了流程线的随意跳转。答案:程序流程图20.一般地,可行性研究主要集中在经济可行性、技术可行性和()等几个方面。答案:法律可行性21.目前使用最广泛的两种软件工程方法为结构化方法和()。答案:面向对象方法22.变换型数据处理问题的工作过程大致分为3步,即取得数据、()和给出数据。答案:变换数据23.针对应用系统运行期间的数据特点,修改它的排序算法使其更高效,属于软件维护中的()。答案:完善性24.低级语言包括机器语言和()语言,优点是执行速度快,但代码编写难度较大。答案:汇编25.计算机的系统软件由程序、数据和()三部分组成。答案:文档26.针对应用系统运行期间的数据特点,修改它的排序算法使其更高效,属于软件维护中的()维护。答案:完善性27.瀑布模型一般包括计划、需求分析、设计、编码、测试、()等几个阶段。答案:维护28.目前使用最广泛的两种软件工程方法为结构化方法和()。答案:面向对象方法29.等价类划分法进行软件测试,对输入数据要求:“成绩取值范围从0到100”。则有效等价类是(),两个无效等价类是“成绩<0”和“成绩>100”。答案:0≤成绩≤10030.继承是子类自动地共享()中定义的数据和方法的机制。答案:基类(父类)31.()就是设计若干个测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次。答案:判定覆盖32.语句覆盖就是设计若干个测试用例,运行被测程序,使得每一()至少执行一次。答案:可执行语句33.开发时期通常由四个阶段组成:总体设计、详细设计、()和测试。答案:编码34.结构化分析阶段用()图来对描述系统的行为建模。答案:状态转换图35.封装使数据和加工该数据的方法封装为一个整体,以实现独立性很强的模块,使得用户只能见到对象的外特性,而对象的内特性对用户是()的。答案:隐蔽36.衡量一个模块内各组成成分间的紧密程度的度量是()。答案:内聚性37.C++是在C语言的基础上开发的一种面向()的编程语言。答案:对象38.程序控制一般分为三种基本结构即顺序、()和循环。答案:分支(选择)39.如果发现一个类中对象都是由另一个类中多个对象组合而成,那么这两个类就具有()关系。答案:聚合40.结构化分析阶段用()图来对系统的功能进行建模。答案:数据流41.流图G中边的条数为18,结点数为12,则其环路复杂度V(G)=()。答案:842.类和类之间的静态关系关系包括泛化关系、()关系和聚合关系。答案:关联43.对数据流图加工的说明中,()是它最核心的内容。答案:加工逻辑44.()注释通常置于每个程序模块的开头部分,它应当给出程序的整体说明,对于理解程序本身具有引导作用。答案:序言性45.()等价类是指对程序来说不合理的、无意义的输入数据的集合。答案:无效46.软件开发时期具体设计和实现在前一个时期定义的软件,它通常由下述四个阶段组成:()、详细设计、编码和测试。答案:总体设计(概要设计)47.CMM是基于政府评估软件承包商的软件能力发展而来的,有两种通用的评估方法用以评估组织软件过程的成熟度:软件过程评估和()。答案:软件能力评价48.银行卡管理系统软件与POS机之间的接口属于软件与()的接口。答案:硬件49.软件定义时期通常进一步划分成三个阶段,即问题定义、可行性研究和()。答案:|需求分析50.软件工程学的诞生主要是由于()的出现。答案:软件危机51.流图G中判定结点的数目为5,则其环路复杂度V(G)=()。答案:652.一个模块直接控制的()模块的个数称为该模块的扇出数。答案:下层53.瀑布模型的几个阶段中,()阶段环节出错,对软件的后期影响最大。答案:需求分析54.瀑布模型()阶段定义的标准将成为软件测试中的确认测试阶段的目标。答案:需求分析55.软件的()性是指把程序从一种计算环境转移到另一种计算环境的难易程度。答案:可移植简答题1.将E-R图映射成关系数据库中的关系模型时,两个实体间一对多联系如何映射?答案:可以将联系中的“一”端毫无变化地映射到一张表,将联系中“多”端三的实体映射到带有外键的另一张表外键即为“一”端实体的主键,满足关系的参照完整性;也可以将两个实体的联系单独构成一个表,此表包含两个实体的主键,加上两个实体映射成的表,总共映射成三个表。2.简述B/S结构的优缺点。答案:

优点:B/S结构的“零客户端”方式,使组织的供应商和客户的计算机方便地成为管理信息系统的客户端,进而在限定的功能范围内查询组织相关信息,完成与组织的各种业务往来的数据交换和处理工作,扩大了组织计算机应用系统的功能覆盖范围,可以更加充分利用网络上的各种资源,同时应用程序维护的工作量也大大减少。

缺点:B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能;B/S体系结构的系统扩展能力差,安全性难以控制;采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远低于C/S体系结构;B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理。3.简述喷泉模型的特点。答案:是一种以用户需求为动力,以对象为驱动的模型,主要用于采用对象技术的软件开发项目。4.名词解释:PDL答案:伪代码是一种介于自然语言和形式化语言之间的半形式化语言,是一种用于描述功能模块的算法设计和加工细节的语言,也称为程序设计语言(PDL)。5.简述什么是软件危机?答案:软件危机:软件发展第二阶段的末期,由于计算机硬件技术的进步。一些复杂的、大型的软件开发项目提出来了,但软件开发技术的进步一直未能满足发展的要求。在软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。6.简述什么是面向对象开发方法。答案:是一种把面向对象的思想应用于软件开发过程中指导开发活动的系统方法,是建立在”对象“概念基础上的方法学,简称OO方法。7.什么是过程设计?答案:过程设计的主要工作是确定软件各个模块内的算法及内部数据结构,并选定某种过程的表达形式来描述各种算法,其设计依据为结构化需求分析阶段的数据流图、状态转换图及数据字典。8.简述结构化开发方法的基本思想。答案:按用户至上的原则,结构化、模块化,自顶向下地对系统进行分析与设计。9.软件开发时期通常由哪四个阶段组成?答案:总体设计、详细设计、编码和测试。10.简述螺旋模型的限制条件。答案:(1)螺旋模型强调风险分析,但要求许多客户接受和相信这种分析,并做出相关反应是不容易的,因此,这种模型往往适应于内部的大规模软件开发。

(2)如果执行风险分析将大大影响项目的利润,那么进行风险分析毫无意义,因此,螺旋模型只适合于大规模软件项目。

(3)软件开发人员应该擅长寻找可能的风险,准确地分析风险,否则将会带来更大的风险。11.简述什么是三层C/S结构。答案:应用系统一般划分为三层:

(1)数据管理层,实现数据库安全性的要求;数据库访问并发性的控制;数据库前端的客户应用程序的全局数据完整性规则;数据库的备份与恢复。

(2)应用逻辑层,实现与业务相关的处理逻辑。

(3)表示层,提供用户与数据库交互的界面,向数据库服务器提交用户请求并接收来自数据库服务器的信息。三层C/S结构中,服务器端实现数据管理层,应用服务器实现应用逻辑层,客户机应用程序实现表示层。12.列举软件工程的七条基本原理。答案:(1)用分阶段的生命周期计划严格管理

(2)坚持进行评价段评审

(3)实行严格的产品控制

(4)采用现代程序设计技术

(5)结果应能清楚地审查

(6)开发小组的人员应该少而精

(7)承认不断改进软件工程实践的必要性13.需求获取要解决的问题主要包括哪些?答案:

(1)发现和分析问题,并分析问题的因果关系。

(2)与用户进行各种方式的交流,并使用调查研究方法收集信息。

(3)按照三个成分观察问题的不同侧面:即数据、过程和接口。

(4)将获取的需求文档化,形式有用例、决策表、数据流图、数据字典等。14.简述甘特图的特点和作用。答案:甘特图的特点是突出了生产管理中最重要的时间因素,

作用:

(1)计划产量与计划时间的对应关系。

(2)每日的实际产量与预定计划产量的对比关系。

(3)一定时间内实际累计产量与同时期计划累计产量的对比关系。15.什么是黑盒测试?答案:黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。它把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。16.什么是对象模型?答案:对象模型是模型的静态结构,用于表示软件要处理的数据,在UML中表示为类图。类图中包括类、类的内部结构以及类与类之间的关系。17.结构化分析的框架主要包括哪些内容?答案:功能建模(数据流图)、数据建模(实体-联系图)、行为建模(状态转换图)、框架核心(数据字典)。18.名词解释:快速原型模型答案:是相对于生命周期模型而言的另一种系统开发模型它强调系统设计者与最终用户之间自始至终通力合作用比较短的时间完成问题空间定义后采用一些适当的开发工具立即建立一个可运行的原型然后交付用户试用由其提出修改意见再采用迭代法或增量法反复修改来完善产品的功能开成最终产品的一种开发方法。19.什么是软件测试?答案:为了发现错误而执行程序的过程。或者说,软件测试是发现程序错误的过程,它根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即数据及其预期的输出结果),并利用这些测试用例去运行程序。20.简述需求获取的原则和步骤。答案:原则:深入浅出原则、以流程为主线的原则

步骤:(1)深入了解应用领域,开发高层的业务模型

(2)定义项目范围和高层需求

(3)识别用户类型和用户代表

(4)获取具体的需求21.软件项目管理的内容主要包括哪几个方面?答案:软件项目管理的内容主要包括如下几个方面:人员的组织与管理,软件度量,软件项目计划,风险管理,软件质量保证,软件过程能力评估,软件配置管理等。22.软件生存期分哪几个时期?答案:由软件定义、软件开发和软件维护三个时期组成。23.一般从哪三个方面对系统进行可行性分析?答案:(1)技术可行性

(2)经济可行性

(3)法律可行性24.简述CMM的能力评估。答案:(1)软件过程评估:用于确定一个组织当前的软件工程过程状态及组织所面临的软件过程的优先改善问题,为组织领导层提供报告以获得组织对软件过程改善的支持。软件过程评估集中关注组织自身的软件过程,在一种合作的、开放的环境中进行。评估的成功取决于管理者和专业人员对组织软件过程改善的支持。

(2)软件能力评价:用于识别合格的软件承包商或者监控软件承包商开发软件的过程状态。软件能力评价集中关注识别在预算和进度要求范围内完成制造出高质量的软件产品的软件合同及相关风险。评价在一种审核的环境中进行,重点在于揭示组织实际执行软件过程的文档化的审核记录。25.简述体系结构的设计应遵循启发式设计原则。答案:(1)提高模块独立性

(2)模块规模适中

(3)结构图的深度和宽度适中

(4)结构图中扇入和扇出适当

(5)模块的作用域应在控制域之内

(6)模块功能的完善化

(7)消除重复功能,改善软件结构26.列举几个具有代表性的需求分析和设计工具。答案:需求分析工具:结构化图形工具箱、面向对象模型化工具及分析工具

设计工具:概要设计工具、详细设计工具27.名词解释:泛化关系答案:泛化关系又称继承关系,表示一般与特殊的关系,它是指子类继承父类的所有属性和行为,子类也可以具有自己独有的属性和行为。28.将E-R图映射成关系数据库中的关系模型时,数据对象实体如何映射?答案:一个数据对象(实体)可以映射为一个表。根据用户的数据操作需求,也可以分解为多个表,一般采用横切和竖切的方法进行分解。29.简述螺旋模型的优缺点。答案:

优点:

(1)、设计上的灵活性,可以在项目的各个阶段进行变更。

(2)、以小的分段来构建大型系统,使成本计算变得简单容易。

(3)、客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性。

(4)、随着项目推进,客户始终掌握项目的最新信息,从而他或她能够和管理层有效地交互。

(5)、客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品。

缺点:

很难让用户确信这种演化方法的结果是可以控制的。建设周期长,而软件技术发展比较快,所以经常出现软件开发完毕后,和当前的技术水平有了较大的差距,无法满足当前用户需求。30.简述面向对象的设计步骤。答案:(1)设计系统的环境模型

(2)设计系统的体系结构

(3)设计各子系统

(4)对象的设计31.什么是软件度量?答案:软件度量是对软件开发项目、过程及其产品进行数据定义、收集以及分析的持续性定量化过程,目的在于对此加以理解、预测、评估、控制和改善。32.什么是快速原型模型?有哪些优点?答案:快速原型模型又称原型模型,是增量模型的另一种形式。它是在开发真实系统之前,构造一个原型,即快速建立起来可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。然后,在该原型的基础上,逐渐完成整个系统的开发工作。

优点:(1)、有助于满足用户的真实需求;

(2)、原型系统已经通过与用户的交互而得到验证。据此产生的规格说明文档能够正确的描述用户需求;

(3)、软件产品的开发基本上是按线性顺序进行;

(4)、在开发的过程的后续阶段不会因为发现规格说明文档的错误而进行较大的返工。

(5)、快速原型的突出特点是“快速”。33.面向对象的分析模型一般包括哪3大类?答案:面向对象的分析模型一般有3大类:用例模型、对象模型和交互模型。34.什么是数据字典?答案:

数据字典以词条方式定义在数据模型、功能模型和行为模型中出现的数据对象及控制信息的特性,给出它们的准确定义。主要是数据流图上所有的成分的定义和解释的文字集合,包括数据流、加工、数据存储、数据元素,以及数据源点和汇点等。35.简述什么是软件工程。答案:指导计算机软件开发的维护的一门工程学科。36.什么是软件再工程?答案:软件再工程是指通过对目标系统的检查和改造,其中包括设计恢复(库存目录分析)、再文档、逆向工程、程序代码和数据重构以及正向工程等一系列活动,旨在将逆向工程、重构和正向工程组合起来,将现存系统重新构造为新的形式,以开发出质量更高、维护性更好的软件。37.简述喷泉模型的优点。答案:喷泉模型可提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程。38.什么是软件维护?一般有哪四种维护活动?答案:软件维护就是在软件已经交付使用之后,为了改正错误、提高性能或满足新的需要而修改软件的过程。

四种维护活动包括改正性维护、适应性维护、完善性维护和预防性维护。39.简述螺旋模型的缺点。答案:螺旋模型是风险驱动的,因此要求软件开发人员必须具有丰富的风险评估经验和相关专业知识,否则将出现真正的风险:当项目实际上正在走向灾难时,开发人员可能还以为一切正常。所以,很难让用户确信这种演化方法的结果是可以控制的。40.统一过程模型包括哪6个核心工作流?答案:业务建模、需求、分析设计、实现、测试、部署。41.软件定义时期通常划分成哪三个阶段?答案:问题定义、可行性研究和需求分析三个阶段。42.名词解释:螺旋模型答案:是以布鲁纳的学科结构课程思想为理论基础,把对学科的认识过程看成一个螺旋上升的环状序列,每个环中的学科结构都是不变的。43.名词解释:封装答案:封装是一种信息隐蔽技术,它体现于类的说明,使数据更安全。封装使数据和加工该数据的方法封装为一个整体,以实现独立性很强的模块,使得用户只能见到对象的外特性,而对象的内特性对用户是隐蔽的。44.简述UML的基本组成。答案:UML基本构造块,有3种:事物、关系和图。

UML规则,不能简单地把UML的构造块随机地放在一起。像任何语言一样,UML有一套规则,这些规则描述了一个结构良好的模型看起来应该像什么。

UML公共机制,有4种贯穿整个语言且一致应用的公共机制。45.名词解释:软件工程答案:软件工程环境是一组方法、过程及计算机程序(计算机化的工具)的整体化构件,他支持从需求定义、程序生成知道维护的整个软件生存期。46.什么是信息隐藏?答案:对于类对象的用户来说,类对象中属性的表示方法和操作的实现算法是隐藏的,他们只能通过类对象的接口访问其属性和操作。47.什么是软件逆向工程?答案:软件逆向工程又称软件反向工程,是指从可运行的程序系统出发,运用解密、反汇编、系统分析、程序理解等多种计算机技术,对软件的结构、流程、算法、代码等进行逆向拆解和分析,推导出软件产品的源代码、设计原理、结构、算法、处理过程、运行方法及相关文档等。48.简述软件危机爆发的原因。答案:(1)软件不同与硬件,他是计算机系统的逻辑部件而不是物理部件;

(2)软件开发的过程是多人分工合作,分阶段完成的过程,参与人员之间的沟通和配合十分重要;

(3)开发人员和管理人员只重视开发而轻视问题的定义,使软件产品无法满足用户的要求;

(4)软件管理技术不能满足现代软件开发的需求,没有统一的软件质量管理规范;

(5)在软件开发和维护关系的问题上存在错误的观念。49.什么是行为建模?答案:即绘制系统的状态转换图,通过描绘系统的状态及引起系统状态转换的事件来表示系统的行为。50.数据流图的基本图形符号包括哪些?答案:

(1)外部实体:数据输入源或数据输出汇点,不是目标系统的一部分,只是外围环境中的实体部分,包括人员、组织、部门或其他相关的软件系统。

(2)数据流:数据在系统内传播的路径,数据沿箭头方向流动。数据流可以在加工和加工之间也可以在数据存储和加工之间传送,数据流在数据存储和加工之间传送时含义明确,数据存储就足以说明数据流,所以不必命名。同一数据流图上不能有同名数据流。

(3)加工:又称数据处理,是对数据对象进行某些处理或变换,其名称简要的描述完成什么加工。流入加工的可以是多个数据流,流出加工的也可以是多个数据流。

(4)数据存储:又称数据文件,可以是数据库文件或任何形式的数据组织。流入数据存储的数据流表示写入数据,流出数据存储的数据流表示读出数据。51.名词解释:数据字典答案:数据字典以词条方式定义在数据模型、功能模型和行为模型中出现的数据对象及控制信息的特性,给出它们的准确定义。52.简述敏捷开发的原则。答案:(1)快速迭代

(2)让测试人员和开发者参与需求讨论

(3)编写可测试的需求文档

(4)多沟通,尽量减少文档

(5)做好产品原型

(6)及早考虑测试53.简述什么是敏捷开发。答案:以用户的需求进化为核心,采用迭代,循序渐进的方法进行软件开发。54.在选择程序设计语言时,可以考虑哪几方面的因素?答案:

(1)应用领域的不同决定选择的语言。

(2)系统用户的要求。

(3)程序员的经验和知识。

(4)开发和维护成本。

(5)软件可移植性要求。55.什么是模块独立性?它的两个定性标准度量是什么?答案:模块独立是指每个模块只完成一个相对独立的特定子功能,并且和其他模块之间的关系很简单,和其他模块之间没有过多的相互作用。模块独立性由两个定性标准度量:内聚和耦合,提倡模块遵循高内聚、低耦合的原则,保证模块具有较好的独立性。56.简述什么是实体-关系模型及其三种组成元素。答案:

实体-关系模型表示为可视化的实体-关系图,也称为E-R图。E-R图中仅包含3种相互关联的元素:数据对象、描述数据对象的属性及数据对象彼此间相互连接的关系。

数据对象,也称为实体,是目标系统所需要的复合信息的表示,所谓复合信息是具有若干不同属性的信息。属性定义数据对象的特征。实体间的联系是错综复杂的,但就两个实体型的联系来说,主要有以下3种情况:(1)一对一(1:1)联系(2)一对多(1:m)联系(3)多对多(m:n)联系57.简述提高代码重用性程序设计准则。答案:(1)提高方法的内聚

(2)减小方法的规模

(3)保持方法的一致

(4)把策略与实现分开

(5)全面覆盖

(6)尽量不使用全局信息

(7)利用继承机制

(8)使用委托机制58.结构化设计通常划分成哪两个步骤?答案:结构化总体设计和结构化详细设计。59.将E-R图映射成关系数据库中的关系模型时,两个实体间一对一联系如何映射?答案:可以在两个表中都引入对方实体的主键作为外键,进行双向导航;可以在任意一个表中引入对方实体主键作为外键,进行单向导航;也可以将两个实体的联系单独构成一个表,此表包含两个实体的主键,加上两个实体映射成的表,总共映射成三各表;还可以将两个实体合并成一个表。60.简述什么是软件危机?答案:在计算机软件的开发和维护过程中出现了一系列严重问题的现象。61.简述软件维护过程。答案:首先必须建立一个维护组织;然后必须确定维护报告的内容,并为每个维护要求规定一个标准化的事件序列,以及建立一个适用于维护活动的维护记录保管过程并确定需要保存的记录内容;最后必须确定对软件维护的评价内容和评价过程。62.什么是螺旋模型?答案:螺旋模型是一种演化软件开发过程模型,它兼顾了快速原型的迭代的特征以及瀑布模型的系统化

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论