《软件工程复习重点》PPT课件.ppt

上传人:w****2 文档编号:14734484 上传时间:2020-07-29 格式:PPT 页数:36 大小:277.50KB
收藏 版权申诉 举报 下载
《软件工程复习重点》PPT课件.ppt_第1页
第1页 / 共36页
《软件工程复习重点》PPT课件.ppt_第2页
第2页 / 共36页
《软件工程复习重点》PPT课件.ppt_第3页
第3页 / 共36页
资源描述:

《《软件工程复习重点》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《软件工程复习重点》PPT课件.ppt(36页珍藏版)》请在装配图网上搜索。

1、软件工程导论复习要点,软件工程学概述 可行性研究 需求分析 形式化说明技术 总体设计 7 实现 详细设计 8 维护,第一章 软件工程学概述,1、什么是软件工程?软件工程的基本原理是什么? 软件工程是(1)把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用与软件;(2)研究(1)中提到的途径。著名的软件工程专家B.W.Boehm于1983年提出了软件工程的7条基本原理,他认为这是确保软件产品质量和开发效率的原理的最小集合。 (1)用分阶段的生命周期计划严格管理;(2)坚持进行阶段评审;(3)实行严格的产品控制;(4)采用现代程序设计技术;(5)结果能清楚地审查;(6)

2、开发小组的人员应该少而精;(7)承认不断改进软件工程实践的必要性。,2、软件工程方法学包含哪些要素?目前使用的最广泛的软件工程方法学是什么? 软件工程方法学的3要素:方法、工具和过程。目前使用的最广泛的软件工程方法学是传统方法学和面向对象方法学,其中面向对象方法学有4个要点,可以用下列方程式概括: 面向对象方法 =对象+类+继承+通过消息通信,第一章 软件工程学概述,3、软件生命周期有哪些3个时期?再细分的话,可分为哪些阶段? 软件生命周期由软件定义、软件开发和软件维护3个时期组成,再细分的话,分为问题定义、可行性研究、需求分析、总体设计、详细设计、编码和单元测试、综合测试、软件维护8个阶段。

3、其中软件维护阶段工作量最大。,第一章 软件工程学概述,第二章 可行性研究,1、可行性研究的目的是什么?应从哪些方面研究可行性? 可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否有解,以及是否值得去解。从技术、经济和操作3个方面研究项目的可行性。,2、如何了解数据流图和数据字典?如何画数据流图? 数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换,或者说是描绘数据在软件中流动和被处理的逻辑过程。它是系统逻辑功能的图形表示,是分析员和用户之间极好的通信工具。可行性研究阶段,数据流图与数据字典共同构成系统的逻辑模型。只有数据流图和对数据流图中的每个

4、元素的精确定义放在一起,才能共同构成系统的规格说明。,第二章 可行性研究,1、需求分析的任务是什么? 确定对系统的综合要求(功能需求,性能需求,可靠性和可用性需求,出错处理需求,接口需求,约束,逆向需求,将来可能提出的要求);分析系统的数据要求(通过建立数据模型来分析,如数据字典,层次方框图、Warnier图,并将数据结构规范化);导出系统的逻辑模型(完善数据流图、实体联系图、状态转换图、数据字典、主要的处理算法(IPO图);修正系统开发计划(根据在分析过程中获得的对系统的更深入更具体的了解,可以比较准确地估计系统的成本和进度,修订前期制定的开发进度计划)。,第三章 需求分析,第三章 需求分析

5、,2、分析建模 所谓模型,是为了理解事物而对事物作出的一种抽象,是对事物的一种无歧义的书面描述,通常由一组图形符号和组织这些符号的规则组成。 根据结构化分析准则,需求分析过程应该建立3种模型,分别是数据模型、功能模型和行为模型。 1)实体联系图用于建立数据模型的图形; 2)数据流图是建立功能模型的基础; 3)状态转换图是建立行为模型的基础。 要求绘画出实体联系图,数据流图,状态转换图。,例子: 银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并

6、打印出存款存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并打印出利息清单给储户。,第三章 需求分析,3、要从哪些方面验证软件需求? 至少应该从一致性、完整性、现实性和有效性等4个方面验证软件需求的正确性,其中完整性和有效性这两个方面的正确性必须有用户的积极参与才能验证,而且为了验证这两个方面的正确性往往需要开发原型系统。,第三章 需求分析,第四章 形式化说明技术,1、有穷状态机 2、Petri网技术,第五章 总体设计,1、在设计过程中,总体设计一般有哪两个主要阶段组成?总体设计遵循怎样的基本原理? 总体设计过程通常由两个主要阶段组成

7、:系统设计阶段,确定系统的具体实现方案;结构设计阶 段,确定软件结构。总体设计遵循模块化、抽象、逐步求精、信息隐藏、局部化和模块独立等6条基本原理。,2、什么模块独立?模块独立如何度量? 模块独立是指开发具有独立功能且和其他模块没有过多的相互作用的模块。模块独立的概念是模块化,抽象、信息隐藏和局部化概念的直接结果。模块的独立程度可以由两个定性标准度量:(1)耦合,指不同模块彼此间互相依赖(连接)的紧密程度;(2)内聚:指在一个模块内部各个元素彼此结合的紧密程度。模块独立性比较强的模块应该是具有高内聚性和的低耦合度。,第五章 总体设计,3、耦合和内聚的分类中各自的含义? 耦合分为无耦合/非直接耦

8、合;数据耦合;控制耦合;特征耦合;公共环境耦合;内容耦合。 内聚分为偶然内聚;逻辑内聚;时间内聚;过程内聚;通信内聚;顺序内聚;功能内聚。,第五章 总体设计,4、启发式规则有哪些? (1)改进软件结构提高模块独立性;(2)模块规模应该适中;(3)深度、宽度、扇出和扇入都应适当;(4)模块的作用域应该在控制域之内;(5)力争降低模块接口的复杂度;(6)设计单入口、单出口的模块;(7)模块功能应该可以预测。,第五章 总体设计,5、描绘软件结构的图形工具有哪些?面向数据流的设计方法? 描绘软件结构的图形工具有层次图、HIPO图,结构图。面向数据流设计是与数据流分析(DFA)对应的结构化软件设计技术。

9、面向数据流的设计方法的目标是给出设计软件结构的一个系统化的途径。面向数据流的设计方法定义了一些不同的“映射”,利用这些映射可以把数据流图变换成软件结构。通常所说的结构化设计方法(简称SD方法),也就是基于数据流的设计方法。,第五章 总体设计,面向数据流的设计从数据流图(DFD)入手,分析DFD的类型,找出DFD的处理中心,映射成初步的软件结构(层次结构图),按照设计准则细化和优化结构,描述模块的接口和全局数据,经过评审后,提交下一步进行详细设计。面向数据流的设计将得到以数据流图为基础的软件模块结构图。 要求利用面向数据流的设计方法设计出软件结构。,第五章 总体设计,第六章 详细设计,1、详细设

10、计通常以结构程序设计技术为逻辑基础,因为从软件工程观点看,可理解性是软件最重要的质量标准之一。结构程序设计中有哪几种基本控制结构? 结构程序设计中有3种基本控制结构,分别为顺序、选择和循环。,2、掌握过程设计的工具(程序流程图、盒图、PAD图,判定表、判定树,过程设计语言) 要求可以利用判定表和判定树表示具体问题。,第六章 详细设计,例子(行李托运费的算法):,假设某航空公司规定,乘客可以免费托运重量不超过30kg的行李。当行李重量超过30kg时,对头等舱的国内乘客超重部分每公斤收费4元,对其他舱的国内乘客超重部分每公斤收费6元,对外国乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分

11、每公斤收费比正常乘客少一半。,第七章 实现,1、软件测试:为发现程序中的错误而执行程序的过程。 软件测试的准则(尽早和不断的测试、彻底测试的不可能、软件测试是有风险的行为、并非所有的软件错误都能恢复、反向思维逻辑、由小到大的测试范围、避免检查自己的代码、追溯至用户需求) 测试步骤(模块测试、子系统测试、系统测试、验收测试、平行运行),2、软件测试的目的是发现错误,通常把测试方法分为白盒测试和黑盒测试两大类。因为通常不可能做到穷尽测试,所以精心设计测试方案是保证达到测试目的所必需的。,第七章 实现,3、白盒测试方法又称为逻辑覆盖法,其测试用例选择,是按照不同覆盖标准确定的。如果知道软件内部工作过

12、程,可以通过测试来检验软件内部动作是否按照规格说明书的规定正常进行,这种测试称为白盒测试。它的前提是可以把程序看成装在一个透明的白盒子里,测试者完全知道程序的结构和处理算法。这种方法按照程序内部的逻辑测试程序,检测程序中的主要执行通路是否都能按预定要求正确工作。也称结构测试。,第七章 实现,白盒测试方法又称为逻辑覆盖法,其测试用例选择,是按照不同覆盖标准确定的。 要求注意其中测试用例覆盖的执行路径。,弱,强,语 句 覆 盖,判 定 覆 盖,条 件 覆 盖,判 定 条 件 覆 盖,条 件 组 合 覆 盖,第七章 实现, 语句覆盖: 选择足够的测试用例,使得程序中每个语句至少都能被执行一次。 判定

13、覆盖: 执行足够的测试用例,使得程序中每个判定至少都获得一次“真”值和“假”值。 条件覆盖:执行足够的测试用例,使得判定中的每个条件获得各种可能的结果。 判定/条件覆盖:执行足够的测试用例,使得判定中每个条件取到各种可能的值,并使每个判定取到各种可能的结果。 条件组合覆盖:执行足够的例子,使得每个判定中条件的各种可能组合都至少出现一次。,第七章 实现,选取如下测试用例: I. A=3,B=0,X=3 (执行路径sacbd) II. A=2,B=1,X=1 (执行路径sabed),4、什么是黑盒测试法?常用的黑盒测试技术是什么? 黑盒测试法把程序看作一个黑盒子,完全不考虑程序的内部结构和处理过程

14、。也就是说,黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据并产生正确的输出信息,程序运行过程中能否保持外部信息的完整性。也称功能测试。常用的黑盒测试技术的方法有:等价划分法、边界值分析法、错误推测法、因果图法等。,第七章 实现,第八章 维护,1、软件维护是指软件系统交付使用以后,为了改正错误或满足新的需求而修改软件的过程。按照不同的维护目的,维护工作可分成4类。 完善性维护:扩充原有系统的功能,提高原有系统的性能,满足用户的实际需要。 纠错性维护:对在测试阶段未能发现的,在软件投入使用后才逐渐暴露出来的错误的测试、诊断、定位、纠

15、错以及验证、修改的回归测试过程。,第八章 维护,适应性维护: 要使运行的软件能适应运行环境的变动而修改软件的过程。 预防性维护:为了进一步改善软件的可靠性和易维护性,或者为将来的维护奠定更好的基础而对软件进行修改。,软件可维护性是:维护人员理解、改正和改进软件的难易程度。一个软件的可维护性,主要由三个因素决定: 1.可理解性 可理解性表现为外来读者理解软件的结构、接口、功能和内部过程的难易程度。 影响软件可理解性的重要因素有:模块化、结构化设计、详细的设计文档资料、源代码内部文档、良好的程序设计语言等。,决定软件可维护性的因素,第八章 维护,2.可测试性 在设计开发阶段应该注意尽量把软件设计成容易测试和容易诊断的,可用的测试工具和调试工具对测试和诊断非常重要。 3.可修改性 软件的可修改程度与软件设计阶段采用的原则和策略是直接相关的。如:模块的耦合、内聚、控制范围和作用范围、局部化程度都直接影响软件的可修改性。,第八章 维护,4.可移植性 5.可重用性 决定软件可维护性的最终因素是软件设计阶段所采用的方法,以及软件文档资料的好坏。 提高软件的可维护性是软件工程的一个重要目标。,第八章 维护,考试题型,填空(5个) 选择(5个) 判断(10个) 简答(3个) 应用(3个)。,祝大家考试顺利!,

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!