第7章软件工程全解课件

上传人:沈*** 文档编号:241971908 上传时间:2024-08-08 格式:PPT 页数:52 大小:786KB
返回 下载 相关 举报
第7章软件工程全解课件_第1页
第1页 / 共52页
第7章软件工程全解课件_第2页
第2页 / 共52页
第7章软件工程全解课件_第3页
第3页 / 共52页
点击查看更多>>
资源描述
,*,第七章 软件工程基础知识,1,整体概述,概述二,点击此处输入,相关文本内容,概述一,点击此处输入,相关文本内容,概述三,点击此处输入,相关文本内容,2,主要知识点,软件开发生命周期各阶段的目标和任务,软件开发项目管理基础知识(时间管理、成本管理、质量管理、人力资源管理、风险管理等)及其常用管理工具,主要的软件开发方法(生命周期法、原型法、面向对象法、,CASE,),软件开发工具与环境知识,软件过程改进知识,软件质量管理知识,3,7.1,软件工程和项目管理基础,考点:软件工程和软件生存周期的概念,软件开发 项目管理的基础知识,一、软件的生存周期,可行性分析和项目开发计划;,需求分析,软件设计,编码,测试和维护,4,二、软件开发项目管理基础知识,1.,成本估算,(,1,)自顶向下估算方法,(,2,)自底向上估算方法,(,3,)差别估算方法,2.,风险分析,主要关注三个方面:关心未来;关心变化;必须解决需要作出选择的问题;,3.,进度管理:进度安排常用图形表示(,Gantt,图和,PERT,图),4.,人员管理,可分组管理:需求分析组,设计组,编码组,测试组和维护组等,5,三、工具与软件开发环境,1.,工具,(,1,)软件开发工具,需求分析工具;设计工具;概要设计工具;编码与排错工具;测试工具,(,2,)软件维护工具,版本控制工具;文档分析工具;开发信息库工具;逆向工程工具;再工程工具,(,3,)软件管理和软件支持工具,项目管理工具;配置管理工具;软件评价工具,6,2.,软件开发环境,支持软件产品开发的软件系统,有软件工具和环境构成,7,四、软件过程能力评估,1.,软件过程评估的意义,(,1,)软件过程改进的需要,(,2,)降低软件风险的需要,2.,软件能力成熟度模型,(,1,)初始级,(,2,)可重复级,(,3,)已定义级,(,4,)以管理级,(,5,)优化级,8,练习,1.软件工程的三要素是,A.技术,方法和工具 B.方法,工具和过程,C.方法,对象和类 D.过程,模型和方法,2.软件生命周期的最后一个阶段是,A书写软件文档 B.软件维护 C.稳定性测试 D.书写详细用户说明,3.软件项目管理所涉及的范围覆盖了整个软件的,A.开发过程 B.运行与维护过程 C.定义过程 D.生存期,B,B,D,9,4.软件开发成本主要是指软件开发过程中所花费的及相应的代价。,A.劳动力 B.工作量 C.资源 D.持续时间,5.软件开发环境是支持软件产品开发的软件系统,它由和环境集成机制构成,环境集成机制包括数据集成、控制集成和界面集成。,A.软件工具集 B.软件测试工具集,C.软件管理工具集 D.软件设计工具集,B,A,10,6.CMM,描述了,个级别的软件过程成熟度,成熟度反映了软件过程能力的大小,任何一个软件机构的软件过程必定属于其中某个级别。,A.3 B.5 C.7 D.9,B,11,7.2,面向对象技术基础,考点,:,面向对象分析与设计的基本概念,包括对象,类,消息,继承,多态等,一、基本概念,1.,对象,2.,消息,3.,类,4.,继承,5.,多态,6.,动态绑定,12,二、面向对象分析与设计基本概念,1.,面向对象分析(,OOA,):建立待开发软件系统的模型,2.,面向对象设计(,OOD,):定义系统构造蓝图,并根据系统构造蓝图在特定的环境中实现系统,三、,UML,(统一建模语言),1.,构成要素,A.UML,基本构造块,B.,支配这些构造块如何放置在一起的规则,C.,相关公告机制,13,2.UML,的内容,类图,:,展现了一组对象,接口,协作和它们之间的关系,.,对象图,:,展现了一组对象以及它们之间的关系,.,对象图描述了在类图中所建立的事物实例的静态快照。,用例图,:展现了一组用例、参与者以及它们之间的关系,描述了谁将使用系统以及用户期望以什么方式与系统交互。,序列图,:描述了在一个用例或操作的执行过程中以时间顺序组织的对象之间的交互活动,通信图,:强调收发消息的对象之间的结构组织。,14,状态图,:展现了一个状态机,由状态、转换、事件和活动组成,用于建模时间如何改变对象的状态以及引起对象从一个状态向另一个状态转换的事件。,活动图,:是一种特殊的状态图,展现了在系统内从一个活动到另一个活动的流程。,交互图,:组合了序列图和活动图的特征,显示了每个用例的活动中对象如何交互。,定时图,:是另一个交互图,关注一个对象或一组对象在改变状态时的时间约束条件。,15,练习,1.,类是对象的模板,一个类可生成多个对象,若某个类生成了三个对象,则,A.,这三个对象所存储的数据一定是不同的,B.,这三个对象所存储的数据一定是相同的,C.,这三个对象一定具有相同的操作,D.,这三个对象无法共享数据,2.,下列关于超类,子类,基类的叙述中,正确的是,A.,子类是超类的特化,B.,基类是超类的特化,C.,基类是子类的特化,D.,超类是基类的特化,A,A,16,3.,A,A,C,17,C,D,C,18,5.,面向对象分析的主要任务不包括,A.,构建分析模型,以描述用户的需求,B.,构建设计模型,以描述系统如何解决问题,C.,建立一个准确的一致的系统模型以描述软件需要解决的问题,D.,构建分析模型,验证最终系统是否满足软件需求,B,19,7.3,软件需求分析,考点:需求分析的主要任务和结构化分析方法,一、结构化需求分析的基本任务,准确地定义新系统的目标,为了满足用户需要,回答系统必须做什么的问题,1.,问题识别,2.,分析与综合,导出软件的逻辑模型,二、结构化分析方法,自顶向下,逐层分解,20,1.,数据流图:,用来描述数据流从输入到输出的变换流程,2.,数据字典,:用来描述,DFD,中的每个数据流、文件以及组成数据流或文件的数据项,B.环境需求,人员需求,C.人员需求,经费需求 D.性能需求,环境需求,D,A,23,7.4,软件设计,考点,:,概要设计与详细设计的主要任务,结构化设计方法,一、概要设计的基本任务,1.,设计软件系统结构,2.,数据结构及数据库设计,3.,编写概要设计文档,4.,概要设计评审,24,二、软件设计的基本原理,1.,模块化,2.,抽象,3.,信息隐蔽,4.,模块独立性:,耦合性和内聚性,耦合:无直接耦合,数据耦合,标记耦合,控制耦合,公共耦合,内容耦合,内聚:偶然内聚,逻辑内聚,时间内聚,通信内聚,顺序内聚,功能内聚,25,三、结构图,1.,模块,2.,模块的控制关系,3.,模块间的信息传递,4.,两个附加符号,5.,结构图的形态特征,四、结构化设计方法,面向数据流的设计方法,事物流,变换流,26,具体的设计过程,1.,精化,DFD,2.,确定,DFD,类型,3.,分解上层模块,设计中下层模块结构,4.,根据优化准则对软件结构求精,5.,描述模块功能,接口及全局数据结构,6.,复查,27,五、软件详细设计,1,、详细设计的基本任务,对每个模块进行详细的算法设计,对模块内的数据结构进行设计,对数据库进行物理设计,其他设计;,编写详细设计说明书;,评审,28,2.,结构化程序设计,:自顶向下,逐步求精;使用三种基本控制结构构造程序;主程序员组的组织形式;,3,、处理过程设计,(,1,)程序流程图,(,2,)盒图,(,3,),PAD,图,(,4,)形式语言,(,5,)决策树,(,6,)决策表,29,4.Jackson,方法:,面向数据结构的设计方法,用于开发规模较小的数据处理系统的设计。适用于详细设计阶段。,5.,用户界面设计,:,菜单方式,会话方式,操作提示方式以及操作权限管理方式等,30,练习,1.,一个软件的生存周期包含可行性分析和项目开发计划等活动,其中,是其中的核心技术,其任务是确定如何实现软件系统,A.,可行性分析和项目开发计划,B.,需求分析,C.,设计,D.,编码,2.,关于模块设计的原则,以下叙述中正确的是,A.,模块的内聚性高,模块之间耦合度高,B.,模块的内聚性高,模块之间耦合度低,C.,模块的内聚性低,模块之间耦合度高,D.,模块的内聚性低,模块之间耦合度低,C,B,31,3.软件的用户界面作为人机接口起着越来越重要的作用,用户界面的是用户界面设计中最重要的也是最基本的目标。,A.灵活性 B.风格多样性 C.美观性 D.易操作性,D,32,7.5,软件编码,考点:注意程序的设计风格,一、程序设计语言,二、程序设计风格,1.,源程序中的内部文档,2.,注释,3.,语句构造,4.,输入和输出,5.,效率,33,7.6,软件测试,考点:软件测试的目的和原则;软件的测试方法和测试的具体执行过程,一、测试的目的和基本原则,1.目的:发现错误而执行程序,2.测试的基本原则,3.测试过程,34,二、测试方法,1.,静态测试:人工检测和计算机辅助静态分析,2.,动态测试:运行程序,3.,黑盒测试用例的设计方法:,等价类划分,边界值分析,错误推测,因果图,35,4.,白盒测试用例的设计方法:,逻辑覆盖,循环覆盖,基本路径测试,36,三、软件测试的过程和对象,(1)单元测试,(2)集成测试,(3)确认测试,(4)系统测试,37,7.7,系统运行与维护,考点:软件维护的类型,一、系统运行的概念,二、系统维护的定义,三、系统维护的类型,1.,根据维护的目的划分:正确性维护,适应性维护,完善性维护,预防性维护,2.,根据维护的具体内容:程序维护,数据维护,代码维护,设备维护,38,7.8,软件质量管理与质量保证,考点:常见的描述软件质量的质量模型的内容,一、,ISO/IEC 9126,软件质量模型,三个层次:质量特性 质量子特性 度量指标,二、,Mc Call,软件质量模型,模型框架:质量特性 评价准则 度量指标,39,1.Mc Call,软件质量模型从软件产品的运行、修正、转移等三个方面确定了,11,个质量特性,(,52,)是属于产品转移方面的特性。,A.,正确性,B,。可靠性,C.,互用性,D.,灵活性,2.,测试是软件开发过程中一个独立且非常重要的阶段。一个规范化的测试过程通常包括多个基本的测试活动。确定测试内容、进度安排、测试所需的环境和条件、测试培训安排等工作属于(,53,)阶段的内容。,A.,拟定测试计划,B.,编制测试大纲,C.,设计和生成测试用例,D.,生成测试报告,练习,C,A,40,3.,某系统中一个组件的某个函数中,有一个变量没有正确初始化,在(,54,)阶段最可能发现问题。,A.,单元测试,B.,集成测试,C.,确认测试,D.,系统测试,4.,在软件开发过程中,常采用图形表示相关的信息,(,55,)不用于表示软件模块的执行过程。,A.N-S,盒图,B.E-R,图,C.PAD,图,D.,程序流程图,5.,为了扩充功能和改善性能,需要在已有软件系统中增加一些在系统分析和设计阶段没有规定的功能与性能特征,这类软件维护属于(,56,)维护。,A.,正确性,B.,适应性,C.,完善性,D.,预防性,A,B,C,41,6.ISO/IEC 9126,软件质量模型中,第一层是质量特性,如功能性和可靠性等,第二层是质量子特性,如功能性的质量子特性有适应性和准确性等。与软件转移到不同环境时的处理或手段有关的软件属性称为适应性,这一子特性属于,_,质量特性。,A.,可维护性,B.,可移植性,C.,易使用性,D.,可靠性,7.,根据维护的具体内容的不同,可对软件维护进行分类。(,49,)是指对文件或数据库中的记录进行增加、修改和删除等操作,通常采用专用的程序模块。,A.,程序维护,B.,数据维护,C.,代码维护,D.,设备维护,B,B,42,8.,测试用例由测试输入数据和与之对应的预期输出结果组成。人们常用白盒法和黑盒法设计测试用例,其中白盒法主要是为了检查(,51,)等。,A.,是否有错误的功能或遗漏的功能,B.,性能是否能够接受,C.,是否有数据结构或外部数据库访问错误,D.,程序内部结构是否有效,D,43,9.,绑定是一个把过程调用和响应调用所需要执行的代码加以结合的过程。绑定可在编译时进行,也可在运行时进行。若一个给定的过程调用和执行代码的结合直到调用发生时才进行,这种绑定称为(,52,)。,A.,静态绑定,B.,动态绑定,C.,过载绑定,D.,强制绑定,10.,软件开发商对软件产品进行持续不断改进的动力主要来自,_,。,A.,用户的反馈意见,B.,反盗版,C.,促销,D.,技术进步,B,A,44,11.,软件开发过程中为确保软件质量所采取的措施中,不包括,A.,开发前应选定或制定开发标准或开发规范,并遵照执行,B.,在开发初期制定质量保证计划,并在开发中坚持执行,C.,用户应参与开发全过程,并监督开发质量,D.,严格进行阶段评审,12.,以下关于软件开发文档的叙述中,错误的是(,55,),A.,软件开发是程序及其相应文档的生产过程,B.,软件开发过程中的重要信息需要固化在文档中,以便积累开发经验,C.,由于担心设计人员中途离职,所以要让他们写下文档,D.,在软件开发过程中,面对面交流并不可靠,应当完全用文档来代替,C,C,45,统一建模语言(,UML,)图中,,_,(,46,),_,属于动态视图,它可用于描述一个业务过程的流程。,(,46,),A.,状态图,B.,序列图,C.,活动图,C.,通信图,采用统一建模语言(,UML,)进行面向对象建模时,,_,(,47,),_,用于描述系统的静态结构。,(,47,),A.,通信图,B.,类图,C.,活动图,D.,序列图,在面向对象开发方法中,,_,(,48,),_,是一种信息隐蔽技术,目的是使对象的使用者和生产者分离。,(,48,),A.,封装,B.,继承,C.,多态,D.,重载,C,B,A,46,统一过程是用例和风险驱动,以架构为中心,迭代的增量开发过程。,_,(,49,),_,是一种统一过程。,(,49,),A.RUP B.XP C.SCRUM D.,水晶法,软件开发项目进度安排常用的图形描述有,Gantt,(甘特)图和,PERT,(项目计划评审技术)图。,PERT,图难以清晰描述,_,(,50,),_,,而,Gantt,图难以清晰地描述,_(51)_,。,(,50,),A.,每个任务从何时开始,B.,每个任务到何时结束,C.,各任务之间的并行情况,D.,各任务之间的依赖关系,(,51,),A.,每个任务从何时开始,B.,每个任务到何时结束,C.,每个任务的进度计划,D.,各任务之间的依赖关系,A,C,D,47,待开发软件的技术性能指标属于软件的,_,(,52,),_,。,(,52,),A.,功能需求,B.,性能需求,C.,环境需求,D.,用户界面需求,采用黑盒技术设计测试用例的方法包括,_,(,53,),_,。,A.,对分查找,B.,逻辑覆盖,C.,人工检测,D.,边界值划分,B,D,48,对象之间通过消息机制实现相互作用和通信,,_(41)_,不是消息的组成部分。,A,接受消息的对象,B,待执行的函数的名字,C,待执行的函数的内部结构,D,待执行的函数需要的参数,类的构造函数被自动调用执行的情况发生在定义该类的,_(42)_,时。,A,成员函数,B,数据成员,C,对象,D,友元函数,_(43)_,不是面向对象程序设计的主要特征。,A,封装,B,多态,C,继承,D,结构,C,A,D,49,Q|A,您的问题是?,善于提问,勤于思考,问答环节,50,结束语,感谢参与本课程,也感激大家对我们工作的支持与积极的参与。课程后会发放课程满意度评估表,如果对我们课程或者工作有什么建议和意见,也请写在上边,51,谢谢您的观看与聆听,Thank you for watching and listening,52,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


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

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


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