软件工程课后习题及其答案_第1页
软件工程课后习题及其答案_第2页
软件工程课后习题及其答案_第3页
软件工程课后习题及其答案_第4页
软件工程课后习题及其答案_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、软件工程习题CH1 一、填空题1 费用 可靠性 可维护性 生产率 重用。2到目前为止软件生产的发展经历了三个阶段 程序设计、程序系统 件工程。3计算机科学中的研究曾国均可用于软件工程但计算机科学侧重于原理和理论软件工程侧重软件系统构造。4、软件工程有用管理科学的方法和原理进行软件生产的管理。5、软件工程是用科学知识和技术原理 定义 开发 护软件的一门科学。 管理学 、 经济学 心理学 。7、作为一门交叉学科,软件工程具有很强的综合性,它涉及 计算机科学 、 工程科学 、 管理科学 数学 等领域。8、软件生产周期是指一个软件从提出开发要求开始直到该软件报废为止的整个时期。通常包括 究 析 、 总

2、体设计、 详细设计、码测试、 护等活动,可以将这些活动以适当方式分配到不同阶段去完成。9、开发软件工具的主要目的是为了提高软件生产效率和改善软件的质量。10、描述软件开发过程中各种活动如何执行的模型称为周期模型。11 、 面向对象的方法 12、结构化方法由 结构化分析 、 结构化设计 和 结构化程序设计 构成。它是一种面向 数据流 的开发方法。13、量 模型是一种非整体开发方法的模型开发一部分向用户展示一部分可让用户及早看到部分软件及早发现问题或者先开发一意的软件产品。14、喷泉模型是一种以 用户需求 为动力,以 象 作为驱动的模型,适合于 面向对象 的开发方法它克服了瀑布模型不支持软件重用和

3、多项开发活动集成的局限性喷泉模型使开发过程具有 迭代性 和 无间隙性。15、结构化方法总的指导思想是自顶向下逐步求精。它的基本原则是功能的 分解和象。它是软件工程中最早出现的开发方法,特别适用于数据处理领域的问题16、螺旋模型瀑布模型和 量模型结合起来,加入了两种模型均忽略了的风险分析,弥补了这两种模型的不足。17螺旋模型将开发过程分为几个螺旋周期在每个螺旋周期内分为4个工作步骤制定计划,确定目标,选定实施方案,明确开发限制条件。第二步风险分析分析所选方案、识别风险,通过原型消除风险。第三步开发实施,实施软件开发。第四步 用户评估,评价开发工作,提出修改意见,建立下一周期的计划。18面向对象开

4、发方法包括面向对象分析、面向对象设计、面向对象实现三部分。19问题定义 、 可行性研究 需求分析 、 总体设计 、 详细设计 、 编流水,逐级下落。21、简单实用、应用广泛、技术成熟的开发方法是 结构化方法 。22、增量构造模型是在前面的开发阶段按瀑布模型进行整体开发,后面的开发段 增量方式开发。23增量模型是在项目的开发过程中以一系列的增量方式开发系统增量方式括增量开发和增量提交。24、根据原型的目的、方式以及内容的取舍不同,原型特征可分为 可执行的规格说明、基于脚本的设计、 采用专门语言和能重用软件四类。25增量构造模型是在瀑布模型的基础上对一些阶段进行 整体开发对另一些阶段进行增量开发。

5、26、增量开发是指在项目开发周期内,以一定的时间间隔开发部分工作软件 ;增量提交是指在项目开发周期内,以一定的时间间隔 增量方式 向用户提交 工作软件 及相应文档 。27、原型模型又称 快速原型模型 ,它是 增量模型 的另一种形式。28、快速原型模型根据原型的不同,有 探索型 原型、 实验型 原型、 演化型 原型三类。29、原型开发步骤包括: 快速分析 、 构造原型 、 运行原型 、 评价原型和 修 改 。30、快速原型的思想是在研究 需求分析 的方法和技术中产生的。31、瀑布模型本质上是一种 线性 顺序模型。32 全部开发 阶段。这是典型的演化提交模型的形式,它是在强有力的 软件工具支持下,

6、通过原型过程的 反复循环 ,直接得到软 件 系 统 。33 快速分析 , 快速实现 一个原型,用户与开发者在 试用原型、反复评价 过程中加强通信与反馈, 通过 改进原型 ,减少误解,弥补遗漏,适应变化,最终提高软件质量。34、探索型的原型模型是把原型用于开发的 需求分析 阶段,目的是要弄清 用户需求 ,确定 所期望的特性 ,并探索各种方案的 可行性 。35、构造原型时,必须注意 功能性能 取舍,忽略一切暂时时不关心的部分。36型37、探索型的原型模型主要针对开发 目标模糊 、 用户与开发者对项目都缺乏经验的情况,通过对原型的开发来明确 用户的需求 。38、用原型过程代替全部开发阶段,这种快速原

7、型是 演化型 原型。39、快速原型模型是在原型基础上,逐渐完成整个系统的开发工作。40、实验型原型主要用于 设计阶段,考 实现方案是否合适 能否实现。41替设计在设计速分析 实现方案,快速构造原型,通过运行,考查设计方案的可行性与合性,原型成为设计的总体框架或设计结果的一部分。42软件开发中的原型是软件的一个早期可运行的版本它反映了最终系统的重要特征。43、增量模型根据增量方式和形式的不同,分为 渐增模 型 和型模型。44若原型不满足需求说明则根据明确的要求修改原型则修改和规 需求说明,重新构造原型。45瀑布模型不适应需求可变的软件开发只有到开发结束才能见到整个软件系统。46型。47、瀑布模型

8、属于整体开发模型,增量模型属于非整体开发模型。48增量模型在开发过程中以一系 增量方式开发系统推迟某阶段 节从而尽早产生工作软件。49、软件原型是软件的早期可运行版本,反映最终系统的重要特性。50、增量构造模型在 需求分析和设计阶段按整体方式开发,但 编码和测试阶按增量方式开发。二、选择题1、软件是一种(B)产品。A.有B.逻C.D.2、软件工程学的目的应该是最终解决软件生产率的(B)问题。A.提高软件开发效率B.使软件生产工程化C.消除软件危机D.加强软件的质量保证3、与计算机科学的理论研究不同,软件工程是一门(B)学科。A.理论性B.工程性C.原理D.4、软件危机的主要原因有(C)。软件本

9、身的特点用户使用不当硬件可靠性差对软件的错误认识缺乏好的开发方法和手段A.B.C.D.中相对次要的因素是(D)。A.文档质B.开发效率C.软件功能D.软件性6、软件工程与计算机科学性质不同,软件工程着重于(C)。A.原理探讨B.理论研究C.构造软件系统D.方法的应7、软件工程学科出现的主要原因是(C)。A. 计算机的发展B. 网络的发展C. 软件危机的出现D. 程序设计方法学的影响 ) 。A.消除软件危C.实现软件可重D.程序设计自动化 机,软件危机的主要表现包括了下述(D)方面。生产成本过高需求增长难以满足进度难以控制质量难以保A.B.C.D.全部1C)A.螺旋B.增量C.功能D.11、结构

10、化方法和原型化方法是软件开发中常用的两种基本方法,在实际的应用中,它们之间的关系表现为(B)。A.相互排斥B.相互补充C.交替使D.独立使用12、软件生存周期包括可行性研究、需求分析、总体设计、详细设计、编码(B和维护。A.工B.测试C.法D.文档13般认为可能占用人员最多的阶段是(C)。A.分析阶段B.设计阶段C.编码阶段D.测试阶14、解决“软件系统做什么”是(C)阶段的任务。A.可行性研究B.详细设计C.需求分析D.15为8计详细设计编码测试维护8个阶段又可划分为三个周期开发(A)A.运行B.可行性研究C.详细设计D.测试与排错 16在软件生命周期中的8(C)选项对软件影响最大。A.详细

11、设计阶段B.总体设计阶C.需求分析阶D.测试和维护阶1(A)A.需求分析阶段B.总体设计阶段C.详细设计阶D.可行性研究阶18、软件生存周期中时间最长的阶段是(D)。A.需求分析阶段B.总体设计阶段C.测试阶D.维护阶19、检查软件产品是否符合需求定义的过程称为(B)。A.集成测试B.确认测试C.验证测D.验收测20、在软件生存周期中,用户主要是在(A)参与软件开发。A.软件定义期B.软件开发期C.整个软件生存周21、螺旋模型将瀑布模型和增量模型结合,并增加了(B)。A.系统工程B.风险分析C.设计评D.进度控制22、螺旋模型在(D)向外每旋转一圈,就得到元宵的一个版本。A.模块划分B.子程序

12、分C.计D.原型23、喷泉模型描述了(A)体现了这种开发方法创建软件的过程所有的迭代和开发各阶段之间无“间隙”的特征。A.面向对象B.面向数据C.面向数据结D.面向数据驱动2D)A.详细设计阶段B.总体设计阶段C.可行性研究阶段D.需求分析阶25、增量模型是一种(B)模型。A.整体开发B.非整体开C.灵活性差D.较晚产生工资软26、增量模型是(C)。A.与瀑布模型无关B.与原型模型有C.瀑布模型的改进D.原型模型的变种三、简答题1、什么是软件危机?它有哪些典型表现?为什么会出席软件危机答:通常把在计算机软件的开发与维护过程中所遇到的一系列严重问题笼统地称为软件危机。软件危机主要表现:对软件开发

13、成本和进度的估计常常很不准确(效率低)用户对“已完成的”软件系统不满意的现象经常发生(需求不准)软件产品的质量往往靠不住(质量差)软件常常是不可维护的(维护难)软件通常没有适当的文档资料(重用差)软件成本在计算机系统总成本中所占的比例逐年上升(成本高)软件开发生产率提高的速度远远跟不上计算机应用迅速普及深(性能低) 入的趋势产生软件危机的原因:有的设计,从而使得软件较难维护。软件的另一个突出特点是规模庞大,而持续复杂性将随着程序规模增加以指数速度上升。软件可能具有的状态通常都是天文数字,无法完全预见软件可能遇到的每一种情况。软件问题发展成软件危机的主要原因。2、什么是软件工程?它有哪些本质特征

14、?怎样用软件工程消除软件危机? 答:软件工程是指导计算机软件开发和维护的一门工程学科,该学科的目的是生产出能按期交付的、在预算范围内的、满足用户需求的、质量合格的软件产品。软件工程具有下述本质特性: (1)软件工程关注大型程序的构造(2)软件工程的中心课题是控制复杂性(3)软件经常变化开发软件的效率非常重要(7)由具有一种文化背景的人代替具有另一种文化背景的人创造产品软件工程的 7 条原理是消除软件危机的保证:(1)用生命周期计划严格管理(2)坚持进行阶段评审实行产品一致性控制(5)清楚地审查软件产品开发小组的人员应该少而精承认不断改进软件工程实践的必要性软件生命周期模型概括地描述软件过程,规

15、定了软件过程包含的各个阶段,以及完成这些阶段的顺序。典型的生命周期模型有:瀑布模型瀑布模型规定了各项软件工程活动自上而下,相互衔接的固定次序,如同瀑布流水, 逐级下落。优点:强迫开发人员采用规范的技术方法;严格地规定了每个阶段必须提交的文档;缺点:在可运行的软件产品交付给用户之前,用户只能通过文档来了解未来的产品是什么样户的需求。快速原型瀑布型模型的缺陷在于软件开发阶段推进是直线型的,工程实践说明这是一个“理想化”模型,不完全符合人们认识问题的规律。原型化开发方法主要思想是:先建立一个能够反映用户需求的原型系统(“样机”), 充、改进、求精,最终建立完全符合用户需求的目标系统。初始原型可以非常

16、简单,它只实现未来系统的主要功能,系统主要模块之间的重要接立用户对项目开发的信心。优点:任何功能一经开发就能进入测试以便验证是否符合产品需求。帮助导引出高质量的产品要求。如果没有可能在一开始就弄清楚所有的产品需求, 它们可以分批取得。而对于已提出的产品需求,则可根据对现阶段原型的试用而做出修改。风险管理可以在早期就获得项目进程数据,可据此对后续的开发循环做出比较切实的估算。提供机会去采取早期预防措施,增加项目成功的机率。大大有助于早期建立产品开发的配置管理,产品构建,自动化测试,缺陷跟踪,文档管理。均衡整个开发过程的负荷。开发中的经验教训能反馈应用于本产品的下一个循环过程,大大提高质量与效率。

17、如果风险管理发现资金或时间已超出可承受的程度,则可以决定调整后续的开发, 或在一个适当的时刻结束开发,但仍然有一个具有部分功能的,可工作的产品。心理上,开发人员早日见到产品的雏型,是一种鼓舞。使用户可以在新的一批功能开发测试后,立即参加验证,以便提供非常有价值的反馈。可使销售工作有可能提前进行,因为可以在产品开发的中后期取得包含了主要功能的产品原型去向客户作展示和试用。缺点:“模型效应”对于开发者不熟悉的领域把次要部分当作主要框架,做出不切题的原型。原型迭代不收敛于开发者预先的目标。即每次更改,为了消除错误,次要部分越来越大,“淹没”了主要部分。原型过快收敛于某些特定需求,而忽略了一些基本点,

18、特别是与系统基本性能有关的部分。资源规划和管理较为困难,随时更新文档也带来麻烦、版本控制可能导致失控。长期在原型环境上开发,只注意得到满意的原型,容易“遗忘”用户环境和原型环境的差异。增量模型增量模型把软件产品作为一系列的增量构件来设计、编码、集成和测试。每个构件由往实现软件的基本需求,提供最核心的功能。特点:以功能递增的方式进行软件开发能较快地产生可操作的系统;在每一步递增中,都可以把用户/开发者的经验结合到不断求精的产品中;从而使用户有比较充裕的时间学习和适应新软件,减少全新软件给客户组织带来的冲击;可改善测试效果和降低软件开发总成本。(4)螺旋模型阶段问题定义 需求分析关键问题阶段问题定

19、义 需求分析关键问题要解决的问题是什么? 有可行的解吗?系统必须做什么?里程碑关于规模和目标的报告书系统的高层逻辑模型系统的逻辑模型题?详细设计怎样具体地实现这个系统?编码规格说明编码和单元测试 正确的程序模块综合测试源程序、单元测试方案和结果综合测试方案和结果、软件配置维护持久地满足拥用户需要维护记录Ch2 可行性研究一、填空题1 软件可行性研究在尽可能短的时间内确定该软件项目否能够开发、是否值得开发。2可行性研究的目的不是是开发一个软件项目而是研究这个项目是否值得去开发中的问题能否解决。3可行性研究的本质是要进行一次简化压缩了需求分析和计过程在较高层次上以较抽象的方式进行需求分析和设计过程

20、。4、可行性研究需要从技术可行性、经济可行性、社会可行性和 作可行性四个方面分析研究每种解决方案的可行性。5、技术可行性是对开发项目的功能、能、 限制条件进行分析,定现有资源条件下,技术风险有多大,项目是否能实现。6、经济可行性一般要考虑的情况包括 成本效益。7技术可行性的研究包括:本-效益分析、公司经营的长期策略、开发所要的成本和资源和潜在的市场前景。8、社会可行性所涉及的范围包括合同、任、权、用户组织管理模式、范围以及其他一些技术人员常常不了解的陷阱。9、典型的可行性研究有以下步骤:确定项目的规模和目标研究正在运行的系统建立新系统的高层逻辑模型、导出和评价各种方案、推荐可行的方案和编写可行

21、性研究报告。10一个可行性研究报告的主要内容如下引言可行性研究的前提对现有系统的分析所建议系统的技术的可行性、所建议系统的经济可行性、社会因素可行性分析其他可供选择的方案、结论意见。11、系统效益经济效益+社会效益。12、效益分有型效益和 无形效益两种。13项目概述、实施计划、 人员组织及分工和交付限。14、纯收= 经济效益-投资。15、系统流程图图形符号表示系统中各个元素之间的信息流动。16、软件工程有两种效益,它们 有形效益和 无形效益。17、可行性的最后一个步骤是编写可行性研究报告。18系统的经济效益等于因使用新的系统而增加的收入加上节省的运行费用。19、经费使用是否合理是从社会角度评价

22、开发一个新的软件项目是否可行。20、可行性研究中描述系统高层次物理模型的工具是 系统流程图。21、可行性研究的本质是进行一次简化、压缩了的需求分析和设计。22、可行性研究的第一个步骤是确定项目的规模和目标二、选择题1、研究开发资源有效性是进行(A)可行性研究的一个方面A.技B.经济C.社会D.中是从软件的功能可行性角度考虑的是(B)可行性2、为什么要进行可行性研究?可行性研究的任务是什么?答:究是大压缩简化了的系统分析和设计过程,是战略问题。目的用最小的代在尽可能短的时间内确定项目是否能够开发?是否值得去开发。价A.经B.技术C.操作D.2、为什么要进行可行性研究?可行性研究的任务是什么?答:

23、究是大压缩简化了的系统分析和设计过程,是战略问题。目的用最小的代在尽可能短的时间内确定项目是否能够开发?是否值得去开发。价3、在遵循软件工程原则开发软件过程中,计划阶段应该依次完成(B)A.可行性研究、需求分析、问题定B.问题定义、可行性研究、需求分析C.需求分析、问题定义、可行性研D.可行性研究、问题定义、需求分4、技术可行性要解决(D)A.存在侵权否B.成-效益问题C.运行方式可D.技术风险问题5、制定软件计划的目的在于尽早对欲开发的软件进行合理估价,软件计划的任务是(D)A.组织与管理B.分析与估算C.设计与测试D.规划与调6、可行性研究中,系统流程图用于描述(A)A.当前运行的系统B.

24、当前逻辑模C.目标系D.新系7、研究软硬件资源的有效性是进行(A)可行性研究的一方面。A.技B.经C.操 作 8、可行性研究要进行的需求分析和设计应是(C。A.详细的B.全面的C.简化的D.彻底的9、系统定义明确之后,应对系统的可行性进行研究,(B不是可行性研究范围。A.技术可行性B.实用可行性C.经济可行性D.社会可行性10、在可行性研究阶段,对每个合理的方案,(B)不是分析人员应准备资料。系统流程图B.数据流C.本效益分D.三、简答题1、画出可行性研究过程流程图可行性研究的任务:(2);任何侵权行为、妨碍性后果和责任等。CH3 需求分析一、填空题12、在需求分析阶段,首先进行问题识别,即双

25、方确定对问题的综合需求,这些需求包括: 功能需求、性能需求、环境需求、 用户界面需求。另外还有可靠性、安全性、保密性、可移植性、可维护性等方面的需求。3、数据流图有 数据流、数据处理、数据存储、数据的源点和终点四个基本成分。4需求分析阶段。5、数据字典中的加工逻辑主要描述该加工 做什么 ,即该加工策略,而不是实现加工的细节,它描述如何把输入数据流变量变换为输出数据流的 加工规则 。67、需求分析阶段所要编写的文档有:需求规格说明书、初步用户手册、确认测试计划。8流向数据存储的数据流可理解为写入文件或查询文件从数据存储流出的数据可理解为从文 读数据或得到查询结果。9410、数据字典就是用来定义数

26、据流图中的 各个成分的具体含义的。它和数据流图共同构成了系统的逻辑模型 ,是 需求说明书的主要组成部分。11型、编写文档12、常用加工逻辑的描述工具有:结构化语言、判定表、判定树13、结构化语言采用 顺序、分支、循环 三种基本结构。14 流向 数据存储 之间的数据流命名外,数据流应该采用名词或名词短语。15、建立数据字典一般的两种形式是手工建立 和 利用计算机辅助建立并维护。16数据存储名称别名简述组成组织方式查询要求等。17、结构化分析方法是面向 数据流 进行需求分析的方法。二、选择题1、需求分析(D)。A.”.6个字C.要求编写需求规格说明书D.以上都对2、进行需求分析可使用多种工具,但(

27、C)是不适用的。A.数据流B.判定表C.PAD图D.数据字3、需求分析阶段研究的对象是软件项目的(A)。A.用户要求B.合理要C.系统要求D.环境要求4、在数据字典中,作为一个词条加以定义,使得每一个图形元素的名字都有一个确切的(D)。A.对B.解C.符号D.描5、在数据流图中,有名字及方向的成分是(C)。A.控制流B.信息流C.数据流D.数据源6、在数据流图中,不能被计算机处理的成分是(D)。A.控制流B.信息流C.数据流D.数据源点7、在结构化分析中,用以表达系统内部数据的运行情况的工具有(A)。A.数据流图B.数据字典C.表D.判定树8、软件需求分析阶段的工作,可以分成4个方面:问题识别

28、、分析与综合、制定规格说明以及(C)。A.进度规划B.测试计C.需求分析评审D.可行性研究报9、结构化分析方法使用的描述工具(B)定义了数据流图中每一个图形元素。A.数据流图B.数据字典C.表D.判定10、需求规格说明书的作用不应包括(D)。A.软件设计的依据B.用户与开发人员对软件要做什么的共同理解C.软件验收的依据D.软件可行性行研究的依据 11、软件需求规格说明书的内容不应包括对(B)的描述A.主要功B.算法的详细过程C.用户界面及运行环境D.软件的性12、通过(B)A.结构分B.功能分解C.数据分解D.系统分13、数据存储和数据流都是(D),仅仅所处的状态不同。分析结B.件C.动作D.

29、数三、简答题1、为什么要进行需求分析?通常对软件系统有哪些需求? 答:表现出来的特征、必须具备的质量、必须满足的约束的叙述。头被污染了,那么整条河流也就被污染了。需求分析四项主要任务:未来。导出系统的逻辑模型:数据模型(E-R 图、功能模型(数据流图、行为模型(状态图。修正系统开发计划:根据分析过程中获得的对系统的更深入更具体的了解,可以较准确地估计系统成本和进度,修正以前制定的开发计划。CH4 总体设计一、填空题1、在软件的体系结构中,模块是可组合、分解和更换的单元。模块具有接口、功能、逻辑和状态等属性。2、总体设计的文档主要有:概要设计说明书 和 数据库设计说明书3 数据存储设计概念设计逻

30、辑设计、物理设计45、抽象是认识复杂现象过程中使用的思维工具,即抽出事物 本质 的、 共同 的特性而暂不考虑它的 细节 ,不考虑其它因素。6软件结构设计是以模块为基础以需求分析的结果为依据从实现的角度进一步划分模块,并组成模块的层次结构。7、软件设计是一个把 软件需求 转换为软件表示的过程,包括总体设计和 详细设计。8、进入了设计阶段,要把软件“做什么”的 逻辑 模型变换为“怎么做”的 物理 模型,即着手实现软件需求,并将设计的结果反映在 设计 文档中。9计方案的 可行性 等都一一进行评审。10、在一个模块中,功能、状态、接口 反映模块外部特征,逻辑反映它的内部特性。11、信息隐蔽 是指在设计

31、和确定模块时,使得一个模块的内包含的信息对于不需要遮羞信息的其它模块来说是不能 访问 的。12 开发工作量 开发成本 软件生产率 模块化的依据。13、设计软件结构,具体为:(1)采用某种方法将一个复杂系统按功能划分为 模块(2) 确定每个模块的 功能(3) 确定模块之间的 调用关系(4) 确定模块之间的 接口 ,即模块之间传递的信息。(5)评价模块结构的质量。14、模块间耦合高低取决与模块间接口的复杂性、调用方式、传递信息。15、耦合性分6种类型,最强耦合内容耦合,最弱耦合无直接耦合。16、模块独立性中每个模块只完成问题要求的 独立的 子功能,并且与其它模块的联系 最少且接口简单。17、内聚性

32、分7种类型,最强内聚偶然内聚,最弱内聚功能内聚。18、耦合性指软件结构 各模块间相互联系紧密程度的一种度量。模块之间联系越 紧密,其耦合性就越强,模块的独立性 则越差。1920、 标记耦合件名等,其实传递的是这个数据结构的地址。25、功能内聚是内聚程度最强的内聚,指模块内所有元素共同完成一个功能,缺不可。功能内聚的模块与其它模块的耦合弱26、总体设计主要是把各项功能需求转换成系统的 体系结构。27、结构图主要内容有模块、模块的控制关系、模块的信息传递28、内聚性指模块的 功能联系块内各元素(语句之间、程序段之间)联系越 密则内聚性越高。29、衡量模块独立性的两个定性的度量标准是耦合性、内聚性3

33、03132同一个数据结构 输入数据 或产生相同的 输出数据。33(或数据结构) 信息隐 藏 。34 输出 就是下一功能元素的3模块36、将软件系统划分模块时,尽量做到 高 内聚、 低 耦合。37 非正常入口 转入另一模块内部。DFD 事务型事物39、模块的 扇出 指一个模块直接下属模块的个数,扇入 指一个模块直接上属模块的个数。42、一个模块的作用范围指受该模块内 一个判定影响的所有模块集合,一个模块的控范围指模块本身 其所有下属模块(直接或间接)的集合。44、变换型 DFD 由 输入、变换、输出 三部分组成。45、变换型数据处理的工作过程一般分三步:取得数据、变换数据、给出数据46、通过信息

34、隐藏可以定义和实施对模块的过程细节和局部数据结构的存取限制47、结构图的深度值结构图控制的层次,结构图宽度指一层中最大的模块数量。48一个模块的作用范围应在其判定所在模块应与受其影响的模块在次上尽量靠近。49HIPO图是表示软件结构的一种工具它使H 图描述软件总的模块层次结构使用IPO图描述每个模块输入数据、输出数据、处理功能及模块调用的详细情况。50公共耦合指通过一个公共数据环境相互作用的那些模块间的耦合其复杂程度随耦合模块的个数增加而增加。51、DFD一般分为 变换型 事物型两类 换的DFD是一个顺序结构。52、软件结构从形态上总的考虑是:顶层扇出数较高一些,中间层扇出数较低一些底层扇入数

35、 高 一些。53DFDDFD完成以后行软件评审。55、两个模块通过全局变量相互作用,这种耦合方式称为公共耦合。56、软件结构设计是 总体设计 关键的一步,直接影响到下一阶段详细设计和编码的工作。57、软件结构设计是以 模块 为基础,在需求分析阶段,已经把系统分解成层次结构。设计阶段以需求分析的结果为根据,从实现的角度进一步划分为模块,并组成模块的层次结构。二、选择题1、软件设计一般分为总体设计和详细设计,它们之间的关系是(A)。A.全局和局部B.抽象和具体C.总体和层次D.功能和结2、软件结构使用的图形工具,一般采用(C)图。A.DFDB.PADC. SCD. 3、下列中属于软件设计的基本原理

36、的是(D)。A.数据流分析B.变换流分C.事务流分析D.模块6、将几个逻辑上相似的成分放在一个模块中,该模块属于(A)内聚。A. 辑B.间C.能D.7、模块内的某成分的输出是另一成分的输入,该模块属于(B)内聚。A. 能B.序C.辑D.9、软件设计阶段一般又可分为(B。A.逻辑设计与功能设计B.C.概念设计与物理设计D.10、模块中所有成分引用共同数据,该模块属于(D)内聚。A. 辑B.间C.功D.11、结构图中不是主要成分的是(C。A. 块B.模块间传递数C.模块内部数D.模块的控制关系12、好的软件结构应该是(B。A.高耦合,高内聚B.低耦合,高内C.高耦合,低内聚D.低耦合,低内聚14、

37、程序内部的各个部分之间存在的联系,用结构图表达时,最关心的是模块的内聚性和(C。A.独立性B.有效C.性D.安全性15、程序内部的各个部分之间存在的联系,用结构图表达时,最关心的是模块的(D和耦合性。A.一致性B.作用C.嵌套限制D.内聚性17(D外部界面,由它构成的软件易于理解、测试和维护。A. 然B.顺序C.D.功18、软件设计中模块间的耦合性尽可能(B。A. 强B.弱C.强D.19一个模块把一个数值量作为参数传递给另一模块这两个模块之间的耦合(B。A.逻辑耦合B.数据耦合C.控制耦D.内容耦2(DA.公共耦合B.数据耦合C.控制耦D.内容耦合2D。A.公共耦合B.数据耦合C.控制耦D.内

38、容耦合22、一个模块把开关量作为参数传递给另一模块。这两个模块之间的耦合是(C。A. 外部耦合B.2B数据耦合C.)内聚最强。控制耦合D.内容耦合A. 偶然B.功能C.通信D.顺序25、在面向数据流的软件设计方法中,一般将信息流分为(A。A.变换流和数据流B.变换流和控制流C.事务流和控制流D.数据流和控制流26、在多层的结构图中,其模块的层次数称为结构图的(A。A. 度B.度C.出D.扇入27(D)着重反映的是模块间的隶属关系,即模块间的调用关系和层次关系。A.程序流程图B.数据流C. E-R图D.结构图29、软件设计一般将用到图形工具,下列(C结构图E-R 图IPO 图H 图A. 和B.和

39、C.和D.全部30、首先将系统中的关键部分设计出来,再让系统的其余部分的设计去适应它们,这称为(C。A.模块化B.逐步求精C.抽象D.信息隐藏31(AA. 变换型B事务型C.结构化D.非结构化33、模块(CA. 耦合越强B.扇入数越多C.耦合越弱D.扇出数越多37为了提高模(B去的机会。A.耦合性B.独立性C.内聚D.共享39、模块的独立性是由内聚性和耦合性来度量,其中内聚性是(B。A.模块间的联系程度B.模块的功能强度C.信息隐蔽的程度D.接口的复杂程41(D)把已确定的软件需求转换成特定形式的设计表示,使其得以实现。A.系统设计B.详细设计C.逻辑设D.总体设)内聚。A. 辑B.间C.D.

40、。A.数据流图B.结构C.程序流程D.PAD51、划分模块时,一个模块的(A。A.作用范围在控制范围B.控制范围在作用范围内C.作用范围与控制范围互不包D.作用范围和控制范围不受任何限制CH5 详细设计一、填空题1、详细设计阶段的根本目标是确定应该怎样具体地实现所要求的系统。2、详细设计阶段的任务还不是具体地编写程序,而是设计出程序 图。3、结构程序设计的基本结构包括:顺序、分支和循环。4、PAD图清晰地反映了程序结构的层次结构,图中竖线为程序的 层次。5、如果一个程序的代码块仅仅通过顺序、选择和循环这 3 种基本结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序为结构化程序。6

41、PAD是一种由左向右展开的二维树型结构它的控制流程为自上而下、左而右地执行。720纪70是Jackson 方法Warnier方法。8Jacson结构图能对结构进行自顶向下示层次结构。9、在详细设计阶段,使用最广泛的描述程序逻辑结构的工具是程序流程图。10、在JSP设计中,需要找出输入数据结构和输出数据结构中有对应关系的数据单元“对应关系”指上有直接因果关系,11、结构化程序设计方法简称SPPAD图又指 问题分析12详细设计是软件设计的第二阶段主要确定每个模块具体设计过程过程设计。13、结构化程序设计技术指导人们用良好的思想开发理解、易 验证的程序。14PAD图、 程序流程图、图判定表等。15人

42、机界面设计过程中几乎会遇到下面4个问题系统响应时间、 用户帮助设施出错信息处理和命令交互。16、当用户工作速度是由人机界面决定的时候,系统响应时间短/快不好。17几乎交互式系统的每个用户都需要帮助大多数现代软件都提供联机帮助设施,使得用户无需离 用户界面就能解决自己的问题。18、具体设计帮助设施时,必须解决的一系列问题是:提供部分/全部功能帮助信息、用户怎样请求帮助、怎样显示 帮助信息、用户怎样 返回 到正常的交互方式中、怎样组织 帮助信息 。19、用户怎样请求帮助有三种方式:帮助菜单、 特殊功能键 和 HELP 命令。20、怎样组织帮助信息的三种方式:平面结构、层次结构超文本结构。21、组织

43、帮助信息的平面结构指所有信息都通过关键词访问。22、在组织帮助信息的层次结构中,用户可以查到 细的信息。23交互式系统给出的出错信息或警告信息户可以解的术语描述问题、信息应该提供有助于从误的建设性意见、信息应该指出错误可能导致哪 面 信息应该伴随着听觉上 视觉上的提示24、用户界面设计主要靠设计者经验,分三类:一般交互指南、信息显示指南和数据输入指南。25、用户界面的设计发展可分为字符用户界面设计、形用户界面设计多媒体用户界面设计三个阶段。26、用户界面设计最重要的目标可用性。27、设计人机交互子系统需要把户作为主角。二、选择题1、在软件开发过程中,以下说法正确的是(B)。A.程序流程图是逐步

44、求精的好工具BN-S 图不能任意转换控制,符合结构化原则C.判定表是一种通用的设计工D.程序流程图和N-S图都不易表达模块的层次结构2、近年来,人机界面设计的工作量占总设计量的(A)以上。A.一B.三分之一C.三分之D.四分之3、在理想情况下,所有应用软件都有(D)的命令使用方法。A.简B.易记忆C.可理D.一4(D)不是评估人机界面设计模式的标准。A.界面设计规格说明书的长度和复杂B.界面风格C.命令或系统状态的数量D.息5、用户界面设计最重要的目标是(C)。A.灵活性B.可使用性D.可靠性 )被认为是操作者。A.人B.机器C.人和机器D.7、Jackson方法是一种面向(B)的设计方法。A

45、.对象B.数据结构C.数据流D.过8、Jackson方法是根据(A)来导出程序结构。A.数据结构B.控制结构C.数据D.用例9(D)工具在软件详细设计过程中不采用。A.判定表B.IOP图C.PADD.DFD10、JAP方法是根据输入输出的数据结构按一定的规则映射成软件的(C)。A.体系结构B.数据结构C.程序结构D.物理结11、Jackson图上下层之间的关系是(B)关系。A.调用B.组成C.继承D.12、详细设计的任务是确定每个模块的(B)。A.外部特B.内部特性C.算法D.13、结构化程序设计主要强调的是程序的(C)。A.效B.执行速度C.易读性D.14、程序的三种基本控制结构的共同特点是

46、(D)。A.不能嵌套使用B.智能用来编写简单程序C.已经用硬件实现D.单入口单出1在l(C)A.可靠性B.可重用C.适应D.可移植16、软件复杂性度量的参数包括(B)。A.效率B.规模C.完整D.容错17、模块设计中,最不希望的内聚(D。A.功能内聚B.通信内聚C.过程内聚D.偶然内18、模块的内聚性从高到低的正确次序(C)。A.偶然内聚,时间内聚,逻辑内聚B.通信内聚,时间内聚,逻辑内聚逻辑内聚,通信内聚,顺序内聚D.功能内聚,通信内聚,时间内聚CH6 实现一、填空题1、通常把 编码 和 测试 统称为实现2、程序的质量主要取决于 软件设计 的质量,但是,所选用的程序设计语言的特点和 编码风格

47、 也将对程序的可靠性、 可读性 、 可测试性 和可维护性产生深远的影响。3、无论怎么强调软件 测试 的重要性和它对软件可靠性的影响都不过分。4、测试的目的就是在软件投入产生之前,尽可能多地发现软件中的错误。5前软件测试码的最后复审。6、由专门的测试人员承担的测试工作成为合测试。7、编码和 单元测试术语软件生命周期的同一个阶段。8、通过测试发现错误之后还必须诊断并改正错误,这是调试的目的。9、软件可靠性模型试验故障率数据。10、源程序代码的逻 简明清晰 易读易懂是好程序的一个重要标准。11为了提高出程序的易读性减少错误并提高软件开发率编码时应注意养成良好的程序设计风格。12与编码风格有关的因素是

48、文档化数据说明语句构造、 输入输出和率。13、贯穿于软件生存期中的一个极为重要的问题是 软件质量。14、一个好的测试用例能够发现至今尚未发现的错误。15、一个成功的测试 发现了至今尚未发现的错误的测试。16、在测试程序时,人们可能根据验或直觉推测程序中可能存在的各错误,从而有针对性地编写检查这些错误的测试用例,这就是错误推测法。17、桩模块用来代替被测试模块 所调用的模块,它的作用 返回被测试模块需的信息。18软件产品在交付使用前一般要经过以下三步测试单元测试 集成测试和 定测试。围确定一个有效的等价类和 两个无效等价类。20、用白盒技术设计测试用例的方法有:语句覆盖、 判定覆盖、条件盖 路径

49、覆盖。21、用黑盒技术设计测试用例的方法有: 等价类划分、边界值分析、 错误测、因果图。22、软件测试可能发现软件中的错误,但不能证明软件没有错误。2图(。入口T入口TA1 ANDB=0X=X/ATA=2 OR X1X=X+1返回ced图 1 被测试模块的流程图2图(。2图(。二、选择题1、与选择编程语言无关的因素是(C)。A.软件开发方法B.软件执行环境C.程序设计风格D.识2、黑盒测试是从(A)观点出发的测试。A.用户B.开发人员C.管理人D.3、白盒测试是从(B)观点出发的测试。A.用户B.开发人员C.管理人D.4、软件测试的目的是(D)。A.证明软件的正确性B.找出软件系统中存在的所有

50、错误C.证明软件系统中存在错误D.尽可能多的发现如何系统中的错误5、从已经发现故障的存在到准确的故障位置并改正故障,这一过程称为(C)。A.错误检测B.故障排除C.调试D.测6、一般来说,投入运行的软件中有错误(A)。A.不是不可以理解的B.是不能容忍的C.是要求退货的理由D. 是必然7、软件测试的内容和步骤甚多,其中基础的是(B)。A.集成测试B.单元测试C.系统测试D.确认测8、黑盒测试方法主要用于测试(B)。A.结构的合理性B.程序正确性D.程序内部逻9、在测试中,下列错误的说法是(B)。测试是为了发现程序中的错误而执行程序的过程测试是为了表明程序是正确的好的测试用例能够发现至今尚未发现

51、的错误。一个成功的测试是发现了至今尚未发现的错误的测试10、软件测试是保证软件质量的重要措施,它的实施应该在(B)。A.详细设计阶段B.软件开发全过C.需求分析阶段D.总体设计阶11、软件生命周期划分为8个阶段,其中单元测试在(D)阶段完成的。A需求分析B.总体设计C.详细设计D.实 现 12、软件生命周期划分为8个阶段,其中集成测试在(B)阶段完成的A需求分析B.总体设计C.详细设计D.实 现 13、软件生命周期划分为8个阶段,其中确认测试在(A)阶段完成的A需求分析B.总体设计C.详细设计D.实 现 14、单元测试主要使用(B)测试技术A.B.C.人工D.计算机辅15、(D不是确认测试的重

52、要内容A.复查软件配置B.C.用户积极参D.通常使用白盒测试技术CH7 维护一、填空题1 文档是影响软件可维护性的决定因素。2、软件再工程模型定义6类活动。二、选择题1(D)不是软件工程的主要目的。A.提高软件的可维护B.减少软件维护所需要的工作量C.降低软件系统的总成本D.自动生成软件2、在软件生存周期中,工作量所占比例最大的阶段是(D)阶段。A.需求分析B.计C.测试D.维护3、Software document is an important part of software and a basic of software development phase.It alseinfluen

53、cessoftwares(B).A.ReusabilityB.MaintenanceC.Expansibility4(C)A.改正性维护B.适应性维护C.完善性维D.预防性维护5(D)软件的维护。可测试性可理解性可修改性可移植性A.B.C.D.6的4(B)A.改正性维护B.适应性维护C.完善性维D.预防性维护7的4(C )A.改正性维护B.适应性维护C.完善性维D.预防性维8、软件生命周期的(D)阶段工作和软件可维护性有密切的关系。A.编码B.设计C.测试D.每)。A.改正性维护B.适应性维护C.完善性维D.预防性维10、为增加软件功能和性能而进行的软件修改维护工程是(C)。A.改正性维护B.

54、适应性维护C.完善性维D.预防性维11、软件维护工作大部分的工作是由于(D)而引起的。A.程序的可靠B.使用新的硬件环境C.适应新的软件环境D.用户的需求改12、软件维护指的是(A)。A.对软件的改进、适应和完B.维护正常运行C.配置新软件D.软件开发的一个阶段三、简答题11000015此时20(第2个月改正了5个。 (1MTTFMTTF的关系曲线。(2)为做到 MTTF=100h,必须进行多长时间的集成测试?当集成测试结束时总共改正了多少个错误,还有多少个错误潜伏在程序中?答:MTTF=a+b根据题意,a+b=10 a+2b=15解得 a=5,b=5MTTF=5+5画出曲线如图(略。MTTF

55、=100h100=5+5,解得=19 由10000MFFT=K (ET Ec )10000T由题意得:10 K (ET 15)1510000K (ET 25)解得:ET=45,K=33.33当集成测试结束时 MTTF=100h,即1001000033.33(45 Ec (19)解得 Ec(19)=42程序潜伏的错误=45-42=3CH8 面向对象分析-设计-实现一、填空题1、对象的抽象是类或对象。2、动态模型描述了系统制结构。3、继承是类自动共享父类属性和作的机制。4、对象具有封装性,实现了数据和操作的组合。5、信息隐蔽通过对象的 封装性 来实现的。6、类具有操作,它是对象的行为的抽象。7、面

56、向对象有三个基本要素,它们是 抽象、封装性 共 享性。8、 本是系统在一个特定执行期间所发生的事件序列。9、构造状态机制的方式与构造对象的方式类似括和集。10、功能模型由多 数据流图组成,每 数据流图说明了操作和结束的含义。11 、约束系。12、每个类模型由逻辑部分和符号部分组成。13、状态是对象的属性值和接的一种抽象。14、所谓对象模型就是表 态和结 构化的系统的数据性质。15在UML语言中,利用用例图来对需求分析中的问题进行描述。16、对象模型为建 动态模型和 功能模型,提供了实质性框架。17、用例图是从系统外部执行者的角度理解系统的功能。18用例图描述执行者与系统的交互其执行者可以是用户

57、也可以是另一个 统。19、UML用来描述软件系统的 标准化、可视化、文件化。20用例图的基本特点是一个用例是户与计算机次典型交互。21、顺序图描述对象之间的动态交互关系,着重体现对象间消息传递的 时间顺序。22在OO技术发展中,用例这个概念最早是IvarJacobson提出的。23、用例和参加者之间的连线称作派生,是关系的一种。24、面向对象方法中的一个主要目标是保持问题域组织框架完整性、稳定这样可提高分析、设计到实现的追踪性。25、重用是提高软件生产率和目标系统质量的重要途径。二、选择题1、对象模型的描述工具是(C。A.状态图B.数据流C.图D.结构图2、每个对象可用它自己的一组属性和它可以

58、执行的一组(C)来表现。A.行为B.能C.作D.数3、以下说法错误的是(D).A.对象具有很强的表达能力和描述功能B.对象是人们要进行研究的任何事物C.对象是封装的最基本单D.类封装比对象封装更具体、更细4、以下说法错误的是(A).多态性防止了程序相互依赖性而带来的变动影响C.多态性与继承性相结合使软件具有更广泛的重用性和可扩充性D.封装性是保证软件部件具有优良的模块性的基础5、以下说法错误的是(D).面向对象方法不仅支持过程抽象,而且支持数据抽象。C.信息隐藏通过对象的封装来实现的。D.在面向对象方法中,类是最基本的模块。6对象是面向对象开发方法的基本成分每个对象可用它本身的一(B)和它可执

59、行的一组操作来定义。A.服务B.属性C.象D.7、通过执行对象的操作改变对象的属性,但它必须通过(B)的传递。A.接口B.消息C.数D.操8(C)模型表示了对象的相互行为。A.对象B.功能C.态D.分).A.对象模型指出了发生了什B.动态模型确定了什么时候发生C.10、有时间间隔的操作是(B)。A.动作B.活动C.工D.11、以下说法正确的是(B).功能模型不包括对象模型中值的约束条件功能模型说明对象模型中操作的含义功能模型说明动态模型中值的约束含义功能模型说明对象模型中动作的意义12、一个(C)能用不同的方法表示它的特征。A.事件B.抽象C.态D.脚本13、下面(B)不属于状态框中的保留字。

60、A.entryB.backC.exitD.do14、UML 通过图形化的表示机制从多个侧面对系统的分析和设计模型进行刻画,它共有 种视图,其中类图和(D)统称为“静态图。A.顺序图B.状态图C.活动图D.包图出的主要的操作分为以下三大类(C)。A.查B.动作C.象D.活动16、UML不具备以下结构的是(D)。A.静态对象结B.动态行为C.系统部署D.功能结17(B)不是定义用例模型的主要工作。A.定义系B.需求分析C.识别和定义角色D.识别用例和理清用例之间的关系18(C)面向客户、建模人员、开发人员和测试人员,是系统模型图的核心。A.类C.用例D.顺 序 图 19(A)描述各种处理器、外围设

温馨提示

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

评论

0/150

提交评论