软件工程导论习题答案.doc

上传人:人*** 文档编号:563089496 上传时间:2023-07-17 格式:DOC 页数:19 大小:404.35KB
返回 下载 相关 举报
软件工程导论习题答案.doc_第1页
第1页 / 共19页
软件工程导论习题答案.doc_第2页
第2页 / 共19页
软件工程导论习题答案.doc_第3页
第3页 / 共19页
软件工程导论习题答案.doc_第4页
第4页 / 共19页
软件工程导论习题答案.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《软件工程导论习题答案.doc》由会员分享,可在线阅读,更多相关《软件工程导论习题答案.doc(19页珍藏版)》请在金锄头文库上搜索。

1、软件工程导论课后习题答案 清华大学出版社 张海藩主编第一章l 软件工程方法学(3个要素) :通常把软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型。三要素:方法、工具和过程。l 软件生命周期模型 瀑布模型:优点:1.可强迫开发员采用规范的方法2.严格地规定了每个阶段必须提交的文件3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。 缺点:传统的瀑布模型过于理想化,是由文档驱动的。 快速原型模型:通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用户反馈意见的方法,获取用户真正的需要。 增量模型:优点:能在较短时间内向用户提交可完成部分工作的产品;逐

2、步增加产品功能可以使用户有较充实的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击。 螺旋模型:优点:对可选方案和约束条件的强调有利于已有软件的重用;减少了过多测试;维护只是螺旋模型中另一个周期。1-1 什么是软件危机? 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。1-2 什么是软件工程? 是指导计算机软件开发和维护的一门工程学科。1-3 简述结构化范型和面向对象范型的要点,并分析它们的优缺点。目前使用得最广泛的软件工程方法学(2种):1. 传统方法学:也称为生命周期方法学或结构化范型。优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单

3、,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。1-4 软件生命周期划分成哪些阶段l 软件生命周期(各阶段)软件生命周期由软件定义、软件开发和运行维护三个时期组成。1. 软件定义时期划分为三个阶段:问题定义、可行性研究和需求分析2. 开发时期:总体设计、详细设计、编码和单元测试、综合测试。3. 维护时期:主要任务是使软件持久地满足用户的需要。1

4、-5 什么是软件过程?它与软件工程方法学有何关系?l 软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤l 软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型1-6 传统“瀑布模型”的主要缺陷是什么?试说明改进的方法。 传统的瀑布模型过于理想化了。增加“反馈环”第二章l 可行性研究的目的:就是用最小的代价在尽可能短的时间内确定问题是否能够解决。l 可行性研究的任务:1.进一步分析和澄清问题;2.导出系统的逻辑模型;3.从逻辑模型出发,提出若干种系统实现方案4.研究每种实现方案的可行性:l 技术上的可行性 使用现有的

5、技术能实现这个系统吗? l 经济上的可行性 这个系统的经济效益能超过它的开发成本吗? (投资与效益)l 操作可行性 系统的操作方式在这个用户组织内行得通吗? l 社会、政策允许的可行性5.为每个可行的解决方案制定一个粗略的实现进度6.对以后的行动方针提出建议方法:1.系统流程图2.数据流图:(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。数据流数据存储处理处理数据源点符号3.数据字典:是关于数据的信息的集合,也就是对数据流图中饮食的所有元素的定义的集合。数据流图与数据字典共同构成系统的逻辑模型。4.成本/效益分析5.数据流图 定货系统P32 习题2第2题P4

6、3(银行储蓄系统) 习题2第3题P43(机票预订系统) 习题2第4题P43(医院监护系统)日志数据要求生理信号生理信号危机病人信息产生警告信息3分析信号2处理事务1接受信号1病人警告信息护士病情报告日期时间定时生理信号日志数据更新日志6处理事务1定时取样5时钟生理信号D1患者安全范围患者安全范围D1患者日志产生病情报告7护士6.数据定义1、顺序 2、选择 | 3、重复 下限 上限 定货系统P39 习题2第5题P442-1 应该从哪些方面研究目标系统的可行性?l 技术上的可行性 使用现有的技术能实现这个系统吗? l 经济上的可行性 这个系统的经济效益能超过它的开发成本吗? (投资与效益)l 操作

7、可行性 系统的操作方式在这个用户组织内行得通吗? l 社会、政策允许的可行性2-2 为方便储户,某银行拟开发计算机储蓄系统。储户填写的存款单或取款单由业务员键入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并印出存款单给储户;如果是取款,系统计算利息并印出利息清单给储户。请画出此系统的数据流图。储户取款单打印利息清单利息清单储户验证密码2.32.1存款单打印存单银行存单计算利息1.22.2D1存款信息存款信息记录存款信息1.1存款信息存款信息存款信息利息值l 某航空公司拟开发一个机票预定系统。旅行社把预订机票的旅客信息(姓名、性别等)输入进该系统,系统为旅客安排航

8、班,印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单交款取票,系统核对无误即印出机票给旅客。订票信息取票通知旅行社旅客信息旅客打印处理1.3旅客信息D1订票信息安排航班1.2处理事务1录入信息1.1旅客信息机票信息账单机票旅客取票通知打印机票2.2交款2.1机票信息账单/票款航班信息交款信息2-3 北京某高校可用的电话号码由以下几类:校内电话号码由4位数字组成,第一位数字不是零;校外电话又分为本市电话和外地电话两类,拨校外电话先拨0,若是本地电话再接着拨8位数字(固话第一位不是0)或11位数字(移动电话第一位为1);若是外地电话,则拨3位区码再拨8位电话号码(固话第一位不是0),或拨

9、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第三章l 需求分析的准则:1、必须并描述的信息域,根据这条准则应该建立数据模型。2、必须定义软件应完成的功能,这条准则要求建立功能模型。3、必须描述作为外部事件结果的软件行为,这条准则要求建立行为模型。4、必须

10、对描述信息、功能和行为的模型进行分解,用层次的方式展示细节。l 需求分析的任务(P46)1、确定对系统的综合要求;2、分析系统的数据要求;3、导出系统的逻辑模型;4、修正系统开发计划。l 方法 实体-联系图l 教学管理系统P54课程号课名学时学分学号姓名性别系年级教工号姓名性别职称职务l 习题3第3题P63 (银行储蓄系统)数额类型到期日利率名称地址姓名住址电话号码储户储蓄所身份证号码电话号码存取款密码NMl 习题3第5题P63 (医院监护系统)时间脉搏体温血压姓名科室姓名住址电话号码病人护士住院号工作证号监护心电图NM 数据流图 状态转换图l 电话系统P57l 习题3第6题P63 (复印机)

11、卡纸do/警告缺纸do/警告复印do/复印闲置复印命令完成复印命令卡纸发现缺纸排除卡纸故障装满纸第五章l 总体设计的任务划分出组成系统的物理元素程序、文件、数据库、人工过程和文档等等设计软件的结构。也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。l 总体设计过程两个阶段1.系统设计阶段,确定系统的具体实现方案;2.结构设计阶段,确定软件结构。l 总体设计过程9个步骤1设想供选择的方案 2选取合理的方案 3推荐最佳方案 4功能分解 5设计软件结构 6 设计数据库7制定测试计划 8书写文档 9审查和审核l 低耦合(5种类型)1. 数据耦合:数据传递 2.控制耦合:控制信息传

12、递 3.特征耦合:传过多的信息给被调用模块4.公共环境耦合:因全局变量,共享通信区 5.内容耦合:诸如一个模块访问另一个模块内部l 高内聚(7种类型) 功能内聚10分 顺序内聚9分通信内聚7分 过程内聚5分时间内聚3分 逻辑内聚1分 偶然内聚0分l 面向数据流的设计方法P95 变换流l 数字仪表板系统P96l 患者监护系统(参见习题2第4题) 事务流l 用户命令交互子系统(DFD)密码处理控制器现用/非现用系统系统设置控制器读系统数据建立配置文件显示信息与状态读密码用文件比较密码密码输出控制器产生无效信息用户执行模块读用户命令命令处理读用户命令密码显示信息系统参数数据用户命令读系统数据配置信息

13、显示信息和状态命令分析处理读密码命令类型建立配置文件原配置数据激活/非活动系统与文件中密码比较格式化配置数据检验信息过程重试信息四位数字检验信息检验信息A/D信息配置数据格式化配置数据密码命令开/关命令配置命令SC图机票预订系统(参见习题2第3题)第六章l 结构程序设计概念P108 如果一个程序的代码块仅仅通过顺序、选择和循环这三种基本控制结构进行连接,而且每个代码块只有一个入口和一个出口,则称这个程序是结构化的l 结构程序设计3种概念类型P1091、 经典的结构程序设计只允许使用顺序、IF-THEN-ELSE型分支和DO-WHILE型循环着三种基本控制结构2、 扩展的结构程序设计 还允许使用DO-CASE型多分支结构和DO-UNTIL型循环结构3、 修正的结构程序设计 还允许使用EXIT(或BREAK)结构方法1、人机界面设计2、过程设计的工具P1143、面向数据结构的设计方法Jackson方法4、程序复杂程度的定量度量P127 McCabe方法根据程序控制流的复杂程度定量度量程序的复杂程度,这样度量出的结果称为程序的环形

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号