首页 软件工程2011重点附有课后部分习题答案

软件工程2011重点附有课后部分习题答案

举报
开通vip

软件工程2011重点附有课后部分习题答案软件工程2011重点附有课后部分习题答案 第一章 1.软件危机:是指在计算机软件开发和维护过程中所遇到的一系列严重问题。 2.软件工程:应用一种系统的、科学严格的、定量的方法来开发、运行和维护软件; 也就是说将工程的方法用于开发软件. 软件生命周期:由软件定义、软件开发和运行维护这3个时期组成。1.软件定义时期划分为三个阶段:问题定义、可行性研究和需求分析2.开发时期:总体设计、详细设计、编码和单元测试、综合测试。维护时期:主要任务是使软件持久地满足用户的需要。 3..软件过程:是指导计算机软件开发和维护的...

软件工程2011重点附有课后部分习题答案
软件工程2011重点附有课后部分习 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 答案 第一章 1.软件危机:是指在计算机软件开发和维护过程中所遇到的一系列严重问题。 2.软件工程:应用一种系统的、科学严格的、定量的 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 来开发、运行和维护软件; 也就是说将工程的方法用于开发软件. 软件生命周期:由软件定义、软件开发和运行维护这3个时期组成。1.软件定义时期划分为三个阶段:问题定义、可行性研究和需求分析2.开发时期:总体设计、详细设计、编码和单元测试、综合测试。维护时期:主要任务是使软件持久地满足用户的需要。 3..软件过程:是指导计算机软件开发和维护的一门工程学科。 软件工程方法学三要素:方法、工具和过程 5.简述结构化范型和面向对象范型的要点,并分析它们的优缺点。 目前使用得最广泛的软件工程方法学(2种): 传统方法学:也称为生命周期方法学或结构化范型。 优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。 6..软件生命周期模型 (1)瀑布模型:优点:1.可强迫开发员采用 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 的方法2.严格地规定了每个阶段必须提交的文件3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。 缺点:传统的瀑布模型过于理想化,是由文档驱动的。 (2)快速原型模型:通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用户反馈意见的方法,获取用户真正的需要。 (3)增量模型:优点:能在较短时间内向用户提交可完成部分工作的产品;逐步增加产品功能可以使用户有较充实的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击。 (4) 螺旋模型:优点:对可选 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 和约束条件的强调有利于已有软件的重用;减少了过多测试;维护只是螺旋模型中另一个周期。 第二章 1.可行性研究的任务(选择):用最小的代价在尽可能短的时间内确定问题是否能够解决 2.可行性研究过程:根据结果应该决定的一个关键性问题:是否继续进行这项开发工程 3.系统流程图:概括地描绘物理系统的传统工具 4.数据流图:数据流图有四种基本符号: 正方形(或立方体)表示数据的源点或终点; 圆角矩形(或圆形)代表变换数据的处理;开口矩形(或两条平行横线)代表数据存储;箭头表示数据流,即特定数据的流动方向 用途:作为交流信息、分析和设计的工具 5.数据字典(背诵):由4类元素的定义组成:数据流、数据流分量(即数据元素)、 数据存储、处理 定义数据的方法:顺序、选择、重复、可选 用途:作为分析阶段的工具 主要包含的信息:名字、别名、描述、定义、位置 6.成本/效益分析: 3种估算技术(1)代码行技术(2)任务分解技术(3)自动估计成本技术 考虑的利益因素:货币的时间价值、投资回收期、纯收入、投资回收率 2-3 北京某高校可用的电话号码由以下几类:校内电话号码由4位数字组成,第一位数字不是零;校外电话又分为本市电话和外地电话两类,拨校外电话先拨0,若是本地电话再接着拨8位数字(固话第一位不是0)或11位数字(移动电话第一位为1);若是外地电话,则拨3位区码再拨8位电话号码(固话第一位不是0),或拨0再拨11位数字(移动电话第一位为1)。请用数据定义的方法,定义上述电话号码。 电话号码=[校内号码|校外号码] 校内号码=非0数字+3{数字}3 校外号码=0+[本地号码|外地号码] 本地号码=[固话号码|手机号码] 固话号码=非0数字+7{数字}7 手机号码=1+10{数字}10 外地手机号码] 外地号码= [外地固话号码| 外地固话号码=3{数字}3+固话号码 外地手机号码=0+手机号码 非0数字=[1|2|3|4|5|6|7|8|9] 第三章 1.需求分析:基本任务仅仅是确定系统必须完成哪些任务而非如何完成 准则:(1)建立信息模型(2)建立功能模型(3)建立行为模型(4)对模型进行分解,用层次的方式展示细节 任务:(1)确定对系统的综合要求 (2)分析系统的数据要求 (3)导出系统的逻辑模型 (4)修正系统的开发 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 2.模型:为了理解事物而对事物做出的一种抽象 建模(1)构造模型(2)验证模型(3)完善模型(4)实现模型 3.实体-联系图(ER图):组成:数据对象(即实体,矩形表示)、属性(“关键字”,椭圆形表示)和联系(一对一、一对多、多对多,菱形表示) 4.数据状态图:初态(实心圆表示)、终态(同心圆表示,内圆为实心圆)和中间状态(圆角矩形表示) 注意:一张图中只能有一个初态,而终态可以有0至多个 习题3.6 复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。 请用状态转换图描绘复印机的行为。 答:从问题陈述可知,复印机的状态主要有“闲置”、“复印”、“缺纸”和“卡纸”。引起状态转换的事件主要是“复印命令”、“完成复印命令”、“发现缺纸”、“装满 纸”、“发生卡纸故障”和“排除了卡纸故障”。 习题3.4机票预定系统的ER图 旅行航空 航班信息社公司 预定信息P2.1 设置航班 P1 旅客信息录入预定信息 P2.1航班信息 安排航班 机票 顾客 P2.3 打印取票单据 取票通知账单机票 账单P3.1 核对取票凭证 顾客 P3.2 取票通知 交款 机票 P3.3 打印机票 第五章 1.总体设计(概要设计或初步设计):基本目的:回答“概括地说,系统该如何实现,”这个问题。通常由系统设计阶段和结构设计阶段两个阶段组成 )模块化(2)抽象(3)逐步求精(4)信息隐藏和局部化 2.设计原理:(1 (5)模块独立(耦合即不同模块间和内聚即一个模块内的互联程度) 注意:尽量使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合;划分是尽量做到"高内聚,低耦合" 3.启发规则:(1).改进软件结构;提高模块独立性(2).模块规模应该适中 (3)深度 (层数)、宽度(模块总数的最大值)、扇出(平均通常3或4)和扇入都应适当(4)模块作用应在控制域内(5)力争降低模块接口的复杂程度(6)涉及单入口单出口的模块(7)模块功能应该可以预测 4.面向数据流的设计方法:信息流两种类型:变换流和事务流 习题5.1:为每一种类型的模块耦合举一个例子 答:(1)数据耦合:如果两个模块间的通讯信息是若干参数,其中每一个参数都是一个数据元素,称这种耦合为数据耦合。这是模块之间影响最小的耦合关系。 (2) 特征耦合:如果两个模块都与同一个数据结构有关,则称为特征耦合。 (3)控制耦合:如果模块A向模块B所传递的信息控制了模块B的内部逻 辑,那么A和B之间的耦合称为控制耦合。 A A flag f1 f2 f3 f1 ff 2 3 控 制 耦 合 (4)如果两个模块都和同一个公共数据域有关,则称为公共耦合。 5)内部耦合:如果一个模块和另一个模块的内部属性(即运行程序和内( 部数据)有关,则称为内部耦合。例如: 模块A TRC:...... 模块B GOTO TRC 习题5.1:为每一种类型的模块耦合举一个例子 答:(1)功能内聚:如果一个模块内部的各组成部分的处理动作全都为执行同一个功能而存在,并且只执行一个功能,则称为功能内聚。 判断一个模块是不是功能内聚,只要看这个模块是“做什么”,是完成一个具体的任务,还是完成多任务。 (2)顺序内聚:如果一个模块内部的各个组成部分执行的几个处理动作有这样的特征:前一个处理动作所产生的输出数据是后一个处理动作的输入数据,称为顺序内聚。 (3)通讯内聚:如果一个模块内各组成部分的处理动作都使用相同的输入数据或相同的输出数据,称为通讯内聚. (4)过程内聚:如果一个模块内各组成部分的处理动作各不相同,彼此也没有联系,但它们都受同一个控制流支配,决定它们的执行次序,称为过程内聚。 (5)时间内聚:例如:程序设计中的初始化模块 (6)逻辑内聚:把编辑各种输入数据的功能放在一个模块中。 (7)偶然(机械)内聚:如果一个模块的内部各组成部分的处理动作彼此 没有任何联系,则称为机械内聚。 第六章 1.结构程序设计:3种基本控制方式:顺序、选择和循环 2.过程设计的工具:(1)程序流程图(2)盒图(3)PAD图(4)判定表 (5)判定树(6)过程设计语言 习题6.3画出下列伪码程序的程序流程图和盒图 START IF p THEN WHILE q DO f END DO ELSE BLOCK g n END BLOCK END IF STOP 6.8画出下列伪码程序的流图,计算它的环形复杂度。你觉得这个程序的逻辑有 什么问题吗, G=H+R C EXAMPLE END DO LOOP:DO WHILE X>0 IF F>0 A=B+1 THEN PRINT G IF A>10 ELSE PRINT K THEN X=A END IF ELSE Y=Z STOP END IF IF Y<5 THEN PRINT X,Y ELSE IF Y=2 THEN GOTO LOOP ELSE C=3 END IF END IF START 1F Z>0 2T A=B+1 3 F45 A>10 T6 X=AY=Z8 7 F Y>=5 10Y<5 T9T Y=2 Print X,Y11F C=3 1111 11G=H+R F F>0 T Print GPrint K stop V(G),结点E,弧数n,1=17-11+1=7=判断结点 ,1 =6 ,1,7,封闭的区域数 第七章 1.测试方法:(1)白盒测试(大题):按软件的内部结构进行测试,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。 两种测试:逻辑覆盖测试和控制结构测试 (2)黑盒测试(简答):只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。方法:等价划分、边界值分析、错误推断。 )自顶向下集成(2)自底向上集成 2.集成测试:策略(1 渐增式测试:同时完成单元测试和集成测试 回归测试:针对(1)全部功能(2)针对可能受修改影响的 (3)被修改的测试,目的是保证由于调试或其他原因引起的变化,不会导致非预期的软件行为或额外错误的测试活动。 3.软件可靠性:是程序在给定的时间间隔内,按照规格说明书的规定成功地运行的概率。(平均故障时间) 4.大型软件测试:通常分为单元测试、集成测试和验收测试 5.测试阶段的根本任务:发现并改正软件中的错误 6.实现包括编码和测试两个阶段 7.目前保证软件可靠性的主要手段:软件测试 8.程序中隐藏错误的数目直接决定了软件的可靠性 第八章 1.软件维护:在软件已经交付使用后,为了改正错误或满足新的需要而修改软件的过程 2..软件的可维护性:决定因素(1)可理解性(2)可测试性(3)可修改性 (4)可移植性(5)可重用性 文档:(1)用户文档(2)系统文档
本文档为【软件工程2011重点附有课后部分习题答案】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_993253
暂无简介~
格式:doc
大小:131KB
软件:Word
页数:0
分类:生活休闲
上传时间:2017-09-29
浏览量:15