软件工程教案复习李梁省公共课一等奖全国赛课获奖课件.pptx
《软件工程教案复习李梁省公共课一等奖全国赛课获奖课件.pptx》由会员分享,可在线阅读,更多相关《软件工程教案复习李梁省公共课一等奖全国赛课获奖课件.pptx(65页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1软件工程复习 重庆理工大学计算机科学与工程学院 李梁 第第1页页2课程关键点l第第1-31-3章章 软件工程概、软件过程及软件开发模型软件工程概、软件过程及软件开发模型l软件、程序、数据、文档含义软件、程序、数据、文档含义l软件危机及其表现、处理方法软件危机及其表现、处理方法l软件工程定义与关键思想软件工程定义与关键思想l软件工程基本原理与标准软件工程基本原理与标准l软件工程基本范型软件工程基本范型l软件过程及软件过程模型软件过程及软件过程模型l软件工程生命周期概念以及它各个阶段内容,各阶段软件工程生命周期概念以及它各个阶段内容,各阶段主要任务主要任务 l软件工程主要开发模型:软件工程主要开
2、发模型:瀑布模式、瀑布模式、增量模型增量模型、螺旋、螺旋模型、面向对象过程模型模型、面向对象过程模型第第2页页3课程关键点l第第5 5章章 软件需求分析软件需求分析l软件需求软件需求分析概念、主要过程与步骤、软件需求类分析概念、主要过程与步骤、软件需求类型型l软件处理方案:目标、性能指标评价、处理方式、软件处理方案:目标、性能指标评价、处理方式、可行性分析。可行性分析。l开启分析过程:开启分析过程:确认利益相关者确认利益相关者、识别视点识别视点、协同协同工作工作、首次提问首次提问l主要需求获取技术:主要需求获取技术:会谈、调查表、场景描述、会谈、调查表、场景描述、l主要需求描述技术:主要需求描
3、述技术:流程图和用例图流程图和用例图第第3页页4课程关键点l第第6 6章章 结构化分析建模结构化分析建模l分析模型概述分析模型概述l结构化分析模型概念结构化分析模型概念l SA概念和概念和SA法主要模型(功效、数据、行为)法主要模型(功效、数据、行为)l掌握数据流程图基本画法,会画数据流程图掌握数据流程图基本画法,会画数据流程图l掌握数据字典书写格式,会编写数据字典掌握数据字典书写格式,会编写数据字典l对已明确需求软件,会设计其主要数据流程图,编写主对已明确需求软件,会设计其主要数据流程图,编写主要数据字典要数据字典l掌握决议树、决议表绘制,熟悉结构式语言表示法;掌握决议树、决议表绘制,熟悉结
4、构式语言表示法;l掌握掌握IPO图画法图画法第第4页页5课程关键点l第第8-98-9章章 结构化软件设计结构化软件设计l系统设计(概要设计、过程设计)任务和步骤(过程)系统设计(概要设计、过程设计)任务和步骤(过程)l设计标准:抽象、自顶向下逐步求精、模块化、信息隐藏、设计标准:抽象、自顶向下逐步求精、模块化、信息隐藏、重构概念重构概念l常见模块独立性度量标准:耦合(常见模块独立性度量标准:耦合(7 7种)和内聚(种)和内聚(7 7种)种)l软件模块结构中基本术语和启发式设计策略:软件模块结构中基本术语和启发式设计策略:深度、宽度、深度、宽度、扇出、扇入、调用、判断调用、数据信息、控制信息扇出
5、、扇入、调用、判断调用、数据信息、控制信息l掌握概要设计(总体设计)绘制工具:层次图和掌握概要设计(总体设计)绘制工具:层次图和HIPOHIPO图、图、软件结构图软件结构图l掌握掌握SDSD法设计过程与步骤法设计过程与步骤l会区分变换型、事务型数据流图,并掌握对应映射方法会区分变换型、事务型数据流图,并掌握对应映射方法l会使用会使用SDSD法将法将DFDDFD转映射成模块结构图转映射成模块结构图l了解对模块结构图启发式设计策略了解对模块结构图启发式设计策略第第5页页6课程关键点l第第8-98-9章章 结构化软件设计结构化软件设计l知道详细设计(过程设计)内容、过程及步骤知道详细设计(过程设计)
6、内容、过程及步骤l界面设计步骤与基本准则界面设计步骤与基本准则l会使用常见过程设计工具:程序流程图、会使用常见过程设计工具:程序流程图、NSNS表、判定表、表、判定表、过程设计语言过程设计语言l了解编码语言分类,选择设计语言要考虑原因了解编码语言分类,选择设计语言要考虑原因l知道常见编程语言和工具(知道常见编程语言和工具(C/SC/S和和B/SB/S)l知道常见数据库产品知道常见数据库产品l知道常见软件知道常见软件CASECASE工具工具l知道开发规范及编码格调主要内容知道开发规范及编码格调主要内容l知道结构化程序设计三种基本控制结构知道结构化程序设计三种基本控制结构 第第6页页7课程关键点l
7、第第7 7、10-1110-11章章 面向对象分析与设计面向对象分析与设计l面向对象方法学概念、特点,与面向过程开发方法区分;面向对象方法学概念、特点,与面向过程开发方法区分;l面向对象分析设计步骤、过程面向对象分析设计步骤、过程l清楚对象、类、实例、消息、属性、方法(服务)、继承、清楚对象、类、实例、消息、属性、方法(服务)、继承、消息、主题概念消息、主题概念l知道知道OMTOMT对象建模技术对象、动态与功效三大模型对象建模技术对象、动态与功效三大模型l知道知道UMLUML主要模型(用户、结构、行为、实现、环境)及组主要模型(用户、结构、行为、实现、环境)及组成主要图形(对象类图、次序图、状
8、态图)画法和事务成主要图形(对象类图、次序图、状态图)画法和事务(类、属性、服务、主要关联、多重性、角色、包、泛化、(类、属性、服务、主要关联、多重性、角色、包、泛化、聚集、关联类、用例、事件、状态、消息)聚集、关联类、用例、事件、状态、消息)l对已明确需求描述,会设计其面向对象模型(用例图、活对已明确需求描述,会设计其面向对象模型(用例图、活动图、对象类图、行为脚本、次序图、状态图)动图、对象类图、行为脚本、次序图、状态图)第第7页页8课程关键点l面向对象分析设计技术面向对象分析设计技术l知道对象、类、实例、属性、行为、继承、消息、包知道对象、类、实例、属性、行为、继承、消息、包概念概念l知
9、道面向对象需求分析过程知道面向对象需求分析过程l知道知道UMLUML概念和概念和UMLUML基本模型基本模型l对已明确需求系统,会设计其面向对象模型及动态模对已明确需求系统,会设计其面向对象模型及动态模型(用例图、活动图、类图、次序图、状态图)型(用例图、活动图、类图、次序图、状态图)第第8页页9课程关键点l第第11-1211-12章章 软件实现软件实现l知道软件测试目标、标准、标准和测试步骤知道软件测试目标、标准、标准和测试步骤l知道黑盒法与白盒法测试技术知道黑盒法与白盒法测试技术l知道单元、集成、确认、系统测试主要内容,在开发过程知道单元、集成、确认、系统测试主要内容,在开发过程中位置和使
10、用主要技术(注意驱动、桩模块概念)中位置和使用主要技术(注意驱动、桩模块概念)l会设计黑合测试中等价类划分、边值测试测试实例会设计黑合测试中等价类划分、边值测试测试实例l知道一些主要专题测试(如知道一些主要专题测试(如测试、测试、测试、可靠性测试、测试、可靠性测试、性能测试、恢复测试)性能测试、恢复测试)l测试用例设计目标测试用例设计目标及编制方法及编制方法l了解软件维护概念、任务及软件维护分类了解软件维护概念、任务及软件维护分类第第9页页10重点技术l需求调查:业务流程图、用例图、活动图需求调查:业务流程图、用例图、活动图lSASA法:分层法:分层DFDDFD图、数据字典编制(描述)、判断表
11、、图、数据字典编制(描述)、判断表、判断树判断树lSDSD法:软件结构图、法:软件结构图、HIPOHIPO图、图、DFDDFD映射方法:变换分析映射方法:变换分析与事务分析与事务分析lOOOO:对象模型(对象类图)、动态模型(行为脚本、:对象模型(对象类图)、动态模型(行为脚本、状态图、次序图)、功效模型(状态图、次序图)、功效模型(DFDDFD)l测试:等价类划分、边值分析设计测试用例测试:等价类划分、边值分析设计测试用例l注意:案例方案文档(图书、注意:案例方案文档(图书、ATMATM、POSPOS、短信、出卷)、短信、出卷)第第10页页11l软件软件是计算机系统中与硬件相互依存另一部分,
12、是计算机系统中与硬件相互依存另一部分,它是包含它是包含程序,数据及其相关文档完整集合。程序,数据及其相关文档完整集合。l程序程序是按事先设计功效和性能要求执行指令序列是按事先设计功效和性能要求执行指令序列l数据数据是使程序能正常操纵信息数据结构是使程序能正常操纵信息数据结构l文档文档是与程序开发,维护和使用相关图文材料是与程序开发,维护和使用相关图文材料l软件软件=程序程序+文档文档l软件危机概念:软件危机概念:软件危机是指在计算机软件开发和维护软件危机是指在计算机软件开发和维护过程中所碰到一系列严重问题。即包含两方面问题:过程中所碰到一系列严重问题。即包含两方面问题:怎样怎样开发软件、怎样维
13、护软件开发软件、怎样维护软件软件及软件危机09:04:35第第11页页12软件工程基本概念软件工程软件工程软件工程软件工程:是以工程化思想进行软件开发,以生产高质量和高是以工程化思想进行软件开发,以生产高质量和高效率软件。效率软件。教材定义教材定义关键观点:把软件看作是一个工程产品。关键观点:把软件看作是一个工程产品。Fritz Bauer定义:定义:软件工程是为了经济地取得能够在实际机器软件工程是为了经济地取得能够在实际机器上有效运行可靠软件而建立和使用一系列完善上有效运行可靠软件而建立和使用一系列完善工程化标准。工程化标准。软件工程基本原理:推迟实现观点、逐步求精观点、分解与抽软件工程基本
14、原理:推迟实现观点、逐步求精观点、分解与抽象观点、信息隐蔽观点、质量确保观点象观点、信息隐蔽观点、质量确保观点软件过程软件过程是为了开发出软件产品,或者是为了完成软件工程项是为了开发出软件产品,或者是为了完成软件工程项目而需要完成相关目而需要完成相关软件工程活动。软件工程活动。通常使用通常使用生命周期模型生命周期模型简练简练地描述软件过程地描述软件过程软件过程模型:软件过程模型:就是把软件生命周期中各项开发活动流程用一就是把软件生命周期中各项开发活动流程用一个合理框架个合理框架(开发模型开发模型)来规范描述。来规范描述。09:04:35第第12页页13阶段阶段关键问题关键问题结束标准(任务)结
15、束标准(任务)问题定义问题定义问题是什么?问题是什么?l关于规模和目标汇报书关于规模和目标汇报书可行性研究可行性研究是否可行?是否可行?l系统高层逻辑模型;系统高层逻辑模型;l数据流图;成本数据流图;成本/效益分析效益分析需求分析需求分析系统必须做什么?系统必须做什么?l系统逻辑模型;数据流图;系统逻辑模型;数据流图;l数据字典,算法描述数据字典,算法描述 概要设计概要设计l任何处理问题?任何处理问题?系统流程图;成本系统流程图;成本/效益分析效益分析层次图和结构图层次图和结构图详细设计详细设计l怎样详细实现怎样详细实现HIPOHIPO或或PDLPDL编码和单元编码和单元测试测试l正确程序模块
16、正确程序模块源程序清单;单元测试方案和源程序清单;单元测试方案和结果结果测试测试l符合要求软件符合要求软件l综合测试方案和结果;综合测试方案和结果;l完整一致软件配置完整一致软件配置运行、维护运行、维护持久地满足用户需要持久地满足用户需要l完整准确维护统计完整准确维护统计09:04:35第第13页页14CMM(Capability Maturity Model):是用于评价软件机构软是用于评价软件机构软件过程能力成熟度模型。件过程能力成熟度模型。是指对过程计划或定义水平、过程是指对过程计划或定义水平、过程是指对过程计划或定义水平、过程是指对过程计划或定义水平、过程实施水平、过程管理和控制水平、
17、过程改进潜力等指标综合实施水平、过程管理和控制水平、过程改进潜力等指标综合实施水平、过程管理和控制水平、过程改进潜力等指标综合实施水平、过程管理和控制水平、过程改进潜力等指标综合评价评价评价评价思想思想:管理软件过程方法不妥引发问题,造成新软件技术利:管理软件过程方法不妥引发问题,造成新软件技术利用并不会自动提升软件生产率和质量。用并不会自动提升软件生产率和质量。关键关键:CMM为软件企业过程能力提供一个为软件企业过程能力提供一个阶梯式改进框架阶梯式改进框架阶梯式改进框架阶梯式改进框架,它基于过去全部软件工程过程改进结果,吸收以往软件工程它基于过去全部软件工程过程改进结果,吸收以往软件工程经验
18、教训,提供一个基于过程改进框架。经验教训,提供一个基于过程改进框架。CMMI I(Capability Maturity Model Integration):即能力成熟:即能力成熟度模型度模型集成集成,是,是CMM模型最新版本。模型最新版本。能力成熟度模型-CMM09:04:36第第14页页15为企业发展要求过程成熟级别,分为为企业发展要求过程成熟级别,分为5级:级:p初始级初始级(Initial):普通企业皆含有):普通企业皆含有p可重复级可重复级(Repeatable):成功经验能够重复):成功经验能够重复p已定义级已定义级(Defined):一套完整企业过程,人员自觉):一套完整企业过
19、程,人员自觉恪守(培训)恪守(培训)p已管理级(已管理级(Managed、已控制):过程、已控制):过程&产品可度量和产品可度量和控制控制p优化级(优化级(Optimizing):过程连续改进):过程连续改进作用:作用:从无序到有序、从特殊到普通、从定性管理到定量从无序到有序、从特殊到普通、从定性管理到定量管理、最终到达动态优化。管理、最终到达动态优化。能力成熟度模型-CMM09:04:36第第15页页16l瀑布模型提供了软件开发基本框架。瀑布模型提供了软件开发基本框架。l瀑布模型将软件生命周期划分为软件计划、需求分析和定瀑布模型将软件生命周期划分为软件计划、需求分析和定义、软件设计、软件实现
20、、软件测试、软件运行和维护这义、软件设计、软件实现、软件测试、软件运行和维护这6个阶段个阶段,要求了它们自上而下、相互衔接固定次序,如同,要求了它们自上而下、相互衔接固定次序,如同瀑布流水逐层下落而得名瀑布流水逐层下落而得名l它是一个软件开发架构,开发过程是经过一系列阶段次序它是一个软件开发架构,开发过程是经过一系列阶段次序展开。展开。l每个阶段都会产生循环反馈每个阶段都会产生循环反馈l各个阶段产生文档是维护软件产品时必不可少,没有文档各个阶段产生文档是维护软件产品时必不可少,没有文档软件几乎是不可能维护。软件几乎是不可能维护。l瀑布模型特点:次序性和依赖性、推迟实现、质量确保观瀑布模型特点:
21、次序性和依赖性、推迟实现、质量确保观点、是一个线性模型、强调文档作用。点、是一个线性模型、强调文档作用。瀑布模型09:04:36第第16页页17阶段目标阶段目标关键问题关键问题l主要活动主要活动l阶段结果阶段结果问题定义问题定义l发觉事实,并描发觉事实,并描述问题是什么述问题是什么?l事实事实问题:发觉和研究系统问题:发觉和研究系统面临问题面临问题l项目提议书项目提议书可行性分析可行性分析l明确问题是否值明确问题是否值得做?回答是否得做?回答是否能够做?能够做?l问题问题提议:系统初步调查与提议:系统初步调查与分析分析l可行性分析汇可行性分析汇报报项目立项项目立项l处理项目标立项处理项目标立项
22、问题问题l提议提议项目:编制初步需求和项目:编制初步需求和立项审批表;立项评审立项审批表;立项评审项目立项书项目立项书项目计划项目计划l处理项目标控制处理项目标控制问题问题项目项目计划:编制项目计划;评审与修订项计划:编制项目计划;评审与修订项目计划目计划项目计划书项目计划书需求分析需求分析回答系统做什么?明确回答系统做什么?明确系统不能做什么?系统不能做什么?问题问题需求:需求详细调查;问题转化与需需求:需求详细调查;问题转化与需求描述;需求评审;需求分析求描述;需求评审;需求分析l系统分析汇报系统分析汇报总体设计总体设计l处理框架性怎样处理框架性怎样做问题?做问题?需求需求软件架构:需求转
23、化与设计;设计评软件架构:需求转化与设计;设计评审与修改;补充调研审与修改;补充调研l概要设计汇报概要设计汇报详细设计详细设计l回答详细细节怎回答详细细节怎么做问题么做问题软件架构软件架构软件结构:需求分析与研究;设软件结构:需求分析与研究;设计评审与修改;补充调研计评审与修改;补充调研l详细设计汇报详细设计汇报编码编码l回答详细做问题回答详细做问题软件结构软件结构程序代码:编码、单元测试,硬程序代码:编码、单元测试,硬件安装与测试,系统集成件安装与测试,系统集成源程序清单源程序清单l测试与测试与公布公布评价做怎样评价做怎样l代码代码软件:系统测试;系统软件:系统测试;系统安装与测试;系统公布
24、;系统安装与测试;系统公布;系统培训;系统切换培训;系统切换l系统测试汇报系统测试汇报l用户手册用户手册运行与维护运行与维护l持久地满足用户持久地满足用户需要,尽可能延需要,尽可能延长系统生命力长系统生命力l软件软件答案:结构系统之前发答案:结构系统之前发觉问题答案,处理问题觉问题答案,处理问题l系统运行日志系统运行日志l项目验收汇报项目验收汇报l系统总结汇报系统总结汇报瀑布模型瀑布模型软件开发各阶段任务表软件开发各阶段任务表第第17页页18面向对象是一个程序设计方法,或者说它是一个程序设计面向对象是一个程序设计方法,或者说它是一个程序设计范型。范型。基本思想是使用对象,类,继承,封装,消息等
25、基本概念基本思想是使用对象,类,继承,封装,消息等基本概念来进行程序设计。来进行程序设计。面向对象要素:面向对象要素:p抽象:强调实体本质、内在属性,忽略一些无关紧要属抽象:强调实体本质、内在属性,忽略一些无关紧要属性。类实现了对象数据(即状态)和行为抽象,是对象性。类实现了对象数据(即状态)和行为抽象,是对象共性抽象。共性抽象。p封装性:指全部软件部件内部都有明确范围以及清楚外封装性:指全部软件部件内部都有明确范围以及清楚外部边界。部边界。p共享性:共享性:面向对象特征:对象惟一性;分类性;继承性;多态性面向对象特征:对象惟一性;分类性;继承性;多态性(多形性)。(多形性)。面向对象过程模型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 教案 复习 李梁省 公共课 一等奖 全国 获奖 课件
限制150内