收藏 分享(赏)

软件工程 复习资料 总结.doc

上传人:cjc2202537 文档编号:115693 上传时间:2018-03-20 格式:DOC 页数:4 大小:258KB
下载 相关 举报
软件工程 复习资料 总结.doc_第1页
第1页 / 共4页
软件工程 复习资料 总结.doc_第2页
第2页 / 共4页
软件工程 复习资料 总结.doc_第3页
第3页 / 共4页
软件工程 复习资料 总结.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、1. 软件危机:指在计算机软件的开发和维护过程中所遇到的一系列严重问题。产生软件危机的原因:与软件本身的特点有关;来自于软件开发人员的弱点2. 软件工程学的 3 要素:方法,工具,过程。.3. 软件生命周期由软件定义,软件开发,运行维护三个时期组成。4. 软件定义时期的 3 个阶段:问题定义,可行性研究,需求分析。开发时期的 4 个阶段:总体设计,详细设计,编码和单元测试,综合测试。5. 螺旋模型:基本思想是使用原型及其他方法来尽量降低风险。6. 需求分析的任务:功能需求、性能需求、可行性和可用性需求、出错处理需求、接口需求、约束、逆向需求、将来可能提出的需求7. 可行性研究分为:技术可行性、

2、经济可行性、操作可行性8. 数据流图符号:正方形(立方体)数据的源点或终点;圆角矩形(圆形)变换数据的处理;开口矩形(两条平行横线)数据存储;箭头数据流9. 数据流图(DFD):是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换10. 数据字典的内容:数据流、数据流分量(数据元素) 、数据存储、处理11. 总体设计(概要设计或初步设计)过程:设想供选择的方案、选取合理的方案、推荐最佳方案、功能分解、设计软件结构、设计数据库、制定测试计划、书写文档、审查和复查12. 总体设计的两个主要阶段:系统设计阶段,确定系统的具体实现方案;结构设计阶段,确定软件结构13. 书写文档有:

3、系统说明、用户手册、测试计划、详细的实现计划、数据库设计结果14. 确认测试(验收测试):验证软件的有效性15. 软件有效性:如果软件的功能和性能如同用户所合理期待的那样,软件就是有效的16. 内容耦合(最高程度的耦合):一个模块访问另一个模块的内部数据;一个模块不通过正常入口而转到另一个模块的内部;两个模块有一部分程序代码重叠;一个模块有多个入口。17. 公共耦合:一个模块往公共环境送数据,另一个模块从公共环境取数据(数据耦合的一种形式,比较疏散的耦合) ;两个模块都既往公共环境送数据又从里面取数据(介于数据耦合和控制耦合之间,比较紧密)18. 软件测试的目的:为了发现程序中的错误而执行程序

4、的过程;好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;成功的测试是发现了至今为止尚未发现的错误的测试。19. 软件测试的准则:所有测试都应该能追溯到用户需求;应该远在测试开始之前就制定出测试计划;把 Pareto 原理应用到软件测试中;应该从“小规模”测试开始,并逐步进行“大规模”测试;穷举测试是不可能的;为了达到最佳的测试效果,应该由独立的第三方从事测试工作。20. 白 盒 测 试 的 目 的 : 通 过 检 查 软 件 内 部 的 逻 辑 结 构 , 对 软 件 中 的 逻 辑 路 径 进 行 覆 盖 测 试 ;在 程 序不 同 地 方 设 立 检 查 点 , 检 查 程 序

5、的 状 态 , 以 确 定 实 际 运 行 状 态 与 预 期 状 态 是 否 一 致 。21. 白 盒 测 试 的 定 义 : 也 称 为 结 构 化 测 试 、 基 于 代 码 的 测 试 , 是 一 种 测 试 用 例 设 计 方 法 , 它 从 程 序的 控 制 结 构 导 出 测 试 用 例 。22. 黑 盒 测 试 : 黑 盒 测 试 是 以 用 户 的 角 度 , 从 输 入 数 据 与 输 出 数 据 的 对 应 关 系 出 发 进 行 测 试 的 。 很明 显 , 如 果 外 部 特 性 本 身 设 计 有 问 题 或 规 格 说 明 的 规 定 有 误 , 用 黑 盒 测

6、试 方 法 是 发 现 不 了 的 。23. 软件设计过程应遵循的基本原理;模块化、抽象、逐步求精、信息隐蔽和局部化、模块独立。1)模块化 采用模块化可以使软件结构清晰,可读性强,易编写,易调试,易维护,并且有助于软件开发的组织管理。总之,通过模块化,可以把复杂的问题分解成许多容易解决的小问题,这样原来困难的问题也就随之解决。2)抽象 抽象就是把相似方面集中概括起来,暂时忽略他们的细节差异。软件工程的每一步其实都是对软件解法的抽象层次的一次精化。3)逐步求精 集中精力解决主要问题,尽量推迟对细节问题的考虑,即把精力集中在与当前开发最相关的方面,细节问题将留到适当时候再考虑。自顶向下逐步求精是软

7、件结构设计的常用途径,逐步求精可以看作是一个时期内必须解决的种种问题按优先级排序的问题。4)信息隐蔽和局部化 设计模块时,要使得一个模块内包含的信息(方法、属性、数据、数据结构)对不需要这些信息的其他模块来说,是不能访问的。即隐藏模块的实现细节。 局部化要求把一些关系密切的软件元素物理地安排在一起,这样不仅有助于信息隐藏,而且有助于编写、调试、测试、维护模块。5)模块独立 设计软件时,尽量使得每个模块完成一个相对独立的子功能,并且与其他模块的关系相对简单,即,模块之间的接口关系应该尽量简单。模块独立是好设计的关键,而设计又是决定软件质量的关键,因此,模块独立原理在软件结构设计中显得非常重要。2

8、4. 计算环形复杂度的方法:(1)V(G)=E-N+2,其中,E 是流图中边的条数, N 是结点数;(2)V(G)=P+1,其中,P 是流图中判定节点的数目25. 瀑布模型的特点:(1)阶段间具有顺序性和依赖性;(2)推迟实现的观点;(3)质量保证的观点26. 瀑布模型内容及特点:瀑布模型将软件生存周期的各项活动规定为依固定顺序连接的软干阶段工作,是一种线性模型。各阶段活动为,提出系统需求、提出软件需求、需求分析、设计、编码、测试和运行。每个开发阶段具有以下特征,从上一阶段接受本阶段工作的对象作为输入,对上述输入实施本阶段的活动,给出本阶段的工作成果作为输出传入下一阶段,对本阶段工作进行评审,

9、若本阶段工作得到确认,则继续下阶段工作,否则返回前一阶段甚至更前阶段。瀑布模型最为突出的缺点是该模型缺乏灵活性。27. 演化模型内容及特点:演化模型主要针对事先不能完整定义需求的软件开发,其开发过程一般是首先开发核心系统,当核心系统投入运行后,软件开发人员根据用户的反馈,实施开发的迭代过程,每一迭代过程均由需求、设计、编码、测试、集成等阶段组成,直到软件开发结束。演化模型在一定程度上减少了软件开发活动的盲目性。28. 瀑布模型、演化模型、螺旋模型之间的联系:相同点是这三个模型都分为多个阶段,而瀑布模型一次完成软件,演化模型分为多次完成,每次迭代完成软件的一个部分,螺旋模型也分为多次完成,每次完

10、成软件的一个新原型,并考虑风险分析。填空:1. HIPO 图由可视目录表和 IPO 图2. 生命周期的基本任务:问题定义、可行性研究、需求分析、总体设计、详细设计、编码和单元测试、综合测试3. 状态转换图(状态图):通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。4. 模块独立程度的两个定性标准度量:内聚、耦合5. 信息流的两种类型:变换流、事物流6. 使用渐增方式把模块结合到程序中去时,有自顶向下和自底向上两种集成策略7. 黑盒测试又称为功能测试,白盒测试又称为结构测试简答:1. 软件测试的步骤:模块测试、子系统测试、系统测试、验收测试、平行测试。模块测试又称为单元测试,其目的

11、是保证每个模块作为一个单元能正确运;子系统测试死把经过单元测试的模块放在一起形成一个子系统来测试,着重测试模块的接口,不仅应该发现设计和编码的错误,还应该验证系统确实能提供需求说明书中指定的功能。子系统和系统统称为集成测试。验收测试,验证系统确实能够满足用户的需要,也称为确认测试。平行测试是同时运行新旧两个系统,比较他们的不同,任务是发现系统的错误2. 北京某高校可用的电话号码有以下几类:校内电话号码由 4 位数字组成,第 1 位数字不是 0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨 0,若是本市电话则再接着拨 8 位数字(第 1 位不是 0),若是外地电话则拨 3 位区码再拨

12、8 位电话号码(第 1 位不是 0)。请定义上面的电话号码。答:电话号码= 校内电话号码|校外电话号码校内电话号码=非零数字 +3 位数字校外电话号码= 本市号码|外地号码本市号码=数字零 +8 位数字外地号码=数字零 +3 位数字+8 位数字非零数字=1|2|3|4|5|6|7|8|9数字零=03 位数字=3数字 38 位数字=非零数字 +7 位数字7 位数字=7数字 7数字=0|1|2|3|4|5|6|7|8|93. 北京某高校可用的电话号码有以下几类:校内电话号码由 4 位数字组成,第 1 位数字不是 0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨 0,若是本市电话则再接着拨

13、 8 位数字(第 1 位不是 0),若是外地电话则先拨区码(3-5 位数字) ,再拨当地电话号码(7 或 8 位数字,第 1 位不是 0)。请定义上面的电话号码。答:电话号码= 校内电话号码|校外电话号码校内电话号码=非零数字 +3 位数字校外电话号码= 本市号码|外地号码本市号码=数字零 +非零数字+7 位数字外地号码=数字零 +区码+当地号码非零数字=1|2|3|4|5|6|7|8|9数字零=03 位数字=3数字 37 位数字=7数字 7区码=3数字5当地号码=非零数字 +6数字7数字=0|1|2|3|4|5|6|7|8|94. 某交易所规定给经纪人的手续费计算方法如下:总手续费等于基本手

14、续费加上与交易中的每股价格和股数有关的附加手续费。如果交易总金额少于 1000 元,则基本手续费为交易金额的 8.4%;如果交易总金额在 1000 元到 10000 元之间,则基本手续费为交易金额的 5%,再加 34 元;如果交易总金额超过 10000元,则基本手续费为交易金额的 4%加上 134 元。当每股售价低于 14 元时,附加手续费为基本手续费的 5%,除非买进、卖出的股数不是 100 的倍数,在这种情况下附加手续费为基本手续费的 9%。当每股售价在 14元到 25 元之间时,附加手续费为基本手续费的 2%,除非交易的股数不是 100 的倍数,在这种情况下附加手续费为基本手续费的 6%

15、。当每股售价超过 25 元时,如果交易的股数零散( 即,不是 100 的倍数),则附加手续费为基本手续费的 4%,否则附加手续费为基本手续费的 1%。要求:(1) 用判定表表示手续费的计算方法;(2) 用判定树表示手续费的计算方法。答:(1)判定表如图 4-6 所示:画出下列伪码程序的流图,计算它的环形复杂度。你觉得这个程序的逻辑有什么问题吗?C EXAMPLELOOP:DO WHILE X0A=B+1IF A10 THEN X=AELSE Y=ZEND IFIF Y0THEN PRINT GELSE PRINT KEND IFSTOP(2)该算法问题在于控制最外层循环的变量 Z 不仅没有经过初始化,并且在该循环内部没有任何有可能该变 Z 的语句。因此,该段代码中的 WHILE 循环部分代码要么不会执行,要么可能出现死循环。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 实用文档 > 工作总结

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报