高中信息技术第3章软件工程基础课件沪教版选修1

上传人:宝路 文档编号:46957569 上传时间:2018-06-28 格式:PPT 页数:115 大小:595.10KB
返回 下载 相关 举报
高中信息技术第3章软件工程基础课件沪教版选修1_第1页
第1页 / 共115页
高中信息技术第3章软件工程基础课件沪教版选修1_第2页
第2页 / 共115页
高中信息技术第3章软件工程基础课件沪教版选修1_第3页
第3页 / 共115页
高中信息技术第3章软件工程基础课件沪教版选修1_第4页
第4页 / 共115页
高中信息技术第3章软件工程基础课件沪教版选修1_第5页
第5页 / 共115页
点击查看更多>>
资源描述

《高中信息技术第3章软件工程基础课件沪教版选修1》由会员分享,可在线阅读,更多相关《高中信息技术第3章软件工程基础课件沪教版选修1(115页珍藏版)》请在金锄头文库上搜索。

1、 第3章 软件工程基础1内容提要 软件工程基本概念,软件生命周期概念, 软件工具与软件开发环境。 结构化分析方法,数据流图,数据字典, 软件需求规格说明书。 结构化设计方法,总体设计与详细设计。 软件测试的方法,白盒测试与黑盒测试, 测试用例设计,软件测试的实施,单元测 试、集成测试和系统测试。 程序的调试23.1 软件工程基本概念33.1.1 软件定义与软件特点 1软件的定义和组成 定义: 计算机软件(Software)是计算机系统中与硬件相 互依赖的另一部分。 组成: 程序 数据 文档 国标(GB)定义 与计算机系统的操作有关的计算机程序、规程、规 则,以及可能有的文件、文档及数据。43.

2、1.1 软件定义与软件特点(续) 2软件的特点 软件是一种逻辑实体,而不是具体的物理实体 ,具有抽象性 软件没有明显的制造过程。对软件的质量控制 ,必须在软件开发方面下功夫 软件不存在老化问题,但存在退化问题,必须 要修改和维护 对计算机系统有着依赖性软件移植的问题 软件复杂性高,开发和维护成本高 软件开发涉及诸多社会因素53.1.1 软件定义与软件特点(续) 3软件的分类 应用软件 系统软件 操作系统 数据库管理系统 设备驱动程序 支撑软件63.1.2 软件危机与软件工程 1软件危机 软件工程源自于软件危机 主要表现: 软件需求的增长得不到满足 软件开发成本和进度无法控制 软件质量难以保证

3、软件不可维护或维护程度非常低 软件成本不断提高 软件开发生产效率的提高赶不上硬件的发展和应用需求的增长 归结为成本、质量和生产率等问题73.1.2 软件危机与软件工程 2软件工程的产生与定义 软件工程学工程学的新兴领域 定义: 国标(GB):应用于计算机软件的定义、开发和维护的一整 套方法、工具、文档、实践标准和工序。 德国人Fritz Bauer:软件工程是建立并使用完善的工程化原则 ,以较经济的手段获取能在实际机器上有效运行的可靠软件的 一系统方法。 IEEE:将系统的、规范的、可度量的方法应用于软件开发、 运行和维护的过程,即将工程应用于软件中。 主要思想:在软件开发过程中需要应用工程化

4、原则的 重要性83.1.2 软件危机与软件工程 2软件工程的产生与定义 软件工程3个要素: 方法 工具 过程93.1.3 软件工程过程与软件生命 周期 1软件工程过程 P(Plan)软件规格说明 D(Do)软件开发 C(Check)软件确认 A(Action)软件演进103.1.3 软件工程过程与软件生命 周期 软件产品从提出、实 现、使用维护、停止 使用到退役的过程 3个阶段 6个阶段工作113.1.3 软件工程过程与软件生命 周期 定义阶段 制定计划:”能做吗?“ 需求分析:“做什么?” 开发阶段: 软件设计:“如何做?”,分为概要设计和详细设计两个 阶段。 软件实现:“实现”,编码。 软

5、件测试:”做的怎么样?“ 运行维护阶段 使用,不断维护123.1.4 软件工程的目标与原则 1软件工程的目标 成功的项目: 成本 功能 移植 维护费用 按时 及时交付 目标: 在给定成本、进度的前提下,开发出具有有效性、可靠性、可 理解性、可维护性、可重用性、可适应性、可移植性、可追踪 性和可互操作性且满足用户需求的产品133.1.4 软件工程的目标与原则 2软件工程学的范畴143.1.4 软件工程的目标与原则 3软件工程的原则 抽象 信息隐蔽 模块化 局部化 确定性 一致性 完备性 可验证性153.1.5 软件开发工具与软件开发 环境 1软件开发工具 协助开发人员进行软件开发活动所使用的软件

6、 或环境 需求分析工具、设计工具、编码工具、排错工 具、测试工具等。 2软件开发环境 全面支持软件开发全过程的软件工具的集合 计算机辅助软件工程:CASE163.2 结构化分析方法173.2.1 需求分析与需求分析方法 1需求分析 定义: 任务:导出目标系统的逻辑模型,解决“做什么”的问题 全面理解用户的各项要求 准确地表达各项要求 主要工作: 需求获取 需求分析 编写需求规格说明书 需求审评183.2.1 需求分析与需求分析方法 2需求分析方法 结构化分析方法 面向数据流的结构化分析方法(SA) 面向数据结构的Jackson方法(JSD) 面向数据结构的结构化数据系统开发方法(DSSD )

7、面向对象分析方法(OOA) 静态分析方法 动态分析方法193.2.2 结构化分析方法 1关于结构化分析方法 结构化程序设计理论在需求分析阶段的运用 面向数据流进行需求分析的方法 自顶向下、逐层分解 主要工具:数据流图、数据字典203.2.2 结构化分析方法 2结构化分析的常用工具 数据流图(DFD) 数据字典 判定树 判定表213.2.2 结构化分析方法 数据流图223.2.2 结构化分析方法 数据流图:基本图形元素 233.2.2 结构化分析方法 数据流图:分层数据流图 243.2.2 结构化分析方法 2结构化分析的常用工具 数据字典 结构化分析方法的核心 对数据流图中出现的被命名的图形元素

8、的确切解释 判定树 判定树 判定表253.2.3 软件需求规格说明书 需求分析阶段的最后成果 作用: 便于用户、开发人员进行理解和交流; 反映出用户问题的结构,可以作为软件开发工作的基 础和依据; 作为确认测试和验收的依据。 主要内容 概述、数据描述、功能描述、性能描述、参考文献、 附录 特点: 正确性;无歧义性;完整性;可验证性; 一致性;可理解性;可修改性;可追踪性。263.3 结构化设计方法273.3.1 软件设计的基本概念 1软件设计的基础 开发阶段:设计、实现(编码)和测试 需求分析:主要解决“做什么”问题 软件设计:主要解决“怎么做”问题283.3.1 软件设计的基本概念 1软件设

9、计的基础 重要性: 主要内容: 结构设计、数据设计、接口设计、过程设计 步骤: 概要设计和详细设计293.3.1 软件设计的基本概念 2软件设计的基本原理 抽象 一种思维工具 抽出事物本质的共同特点,不考虑细节 模块化 模块 模块化 信息隐蔽 每个模块的实现细节对于其它模块来说是隐蔽的 模块独立性 每个模块只涉及软件要求的具体的子功能和软件系统中其它的 模块的接口是简单的 衡量指标:耦合性、内聚性303.3.1 软件设计的基本概念 内聚性 度量一个模块功能强度的一个相对指标。 一个模块只做一件事 7种类型313.3.1 软件设计的基本概念 耦合性 度量模块之间的相互联系程度 取决于接口的复杂程

10、度、调用方式、哪些信息 通过接口 模块连接方式有7种,构成耦合性的7种类型323.3.2 概要设计 1概要设计的基本任务 系统结构设计 主要任务:划分为模块 数据结构和数据库的设计 实现需求定义和规格说明过程中提出的数据对象的逻辑表示 编写概要设计文档 概要设计说明书、数据库设计说明书、用户手册和集成测试计 划。 概要设计的评审 对概要设计文档中给出的设计方案可行性、正确性、有效性、 一致性等进行审核333.3.2 概要设计(续) 2软件结构图 用来表示软件结构 基本图符343.3.2 概要设计(续) 两个附加符号 353.3.2 概要设计(续) 系统结构图(SC)中的模块 原子模块 4种类型

11、的模块 363.3.2 概要设计(续) 结构图的形态特征 深度、宽度、扇出、扇入 373.3.2 概要设计(续) 3面向数据流的设计方法 数据流图(DFD):需求分析工具 系统结构图(SC):概要设计工作 主要任务:数据流图变换成结构图 数据流的类型 变换流 事务流 383.3.2 概要设计(续) 变换流 数据流图:取得数据、变换数据、给出数据393.3.2 概要设计(续) 变换流 系统的结构图:输入、中心变换、输出403.3.2 概要设计(续) 事务流 数据流图413.3.2 概要设计(续) 事务流 系统的结构图:423.3.2 概要设计(续) 实施要点与设计过程 分析、确认数据流图的类型,

12、区分是事务型还 是变换型 说明数据流的边界 数据流图映射为程序结构 根据设计准则把数据流转换成程序结构图433.3.2 概要设计(续) 变换分析 确定数据流图是否具有变换特性 确定输入流和输出流的边界,划分出输入、变换和输 出,独立出变换中心 第一级分解 按上述步骤如出现事务流的映射方式对各个子流进行 逐级分解,直至分解到基本功能; 对每个模块写一个简要的说明 利用软件的设计原则对软件结构透一步转化 事务分析 与变换分析类似 主要差别:映射方法不同443.3.2 概要设计(续) 4.设计准则 提高模块独立性 深度、宽度、扇度和扇出适度 使模块的作用域在该模块的控制域内 应减少模块的接口和界面的

13、复杂性 设计成单入口、单出口的模块 设计功能可预测的模块453.3.3 详细设计 详细设计的任务: 确定实现算法和局部数据结构 不同于编码或编程 详细设计的常用工具: 图形工具:程序流程图、N-S、PAD和HIPO 表格工具:判定表; 语言工具:PDL(伪码)463.3.3 详细设计(续) 程序流程图 图形元素: 方框:处理步骤 菱形:逻辑条件 箭头:控制流 5种控制结构 顺序型 选择型 先判断重复型 后判断重复型 多分支选择型。473.3.3 详细设计(续) 程序流程图483.3.3 详细设计(续) N-S图 流程图:随意性与灵活性 N-S图:限制了随意的控制转移,保证了程序的良好结 构 5

14、种基本控制结构:493.3.3 详细设计(续) N-S图503.3.3 详细设计(续) N-S图 特点: 每个构件具有明确的功能域 控制转移必须遵守结构化设计要求; 易于确定局部数据和(或)全局数据的作用域 易于表达嵌套关系和模块的层次结构513.3.3 详细设计(续) PAD图 PAD问题分析图,Problem Analysis Diagram 表现程序逻辑结构的图形工具 5种基本控制结构523.3.3 详细设计(续) PAD图533.3.3 详细设计(续) PAD图 特征 结构清晰,结构化程度高 易于阅读 程序的纵线数等于程序的层次数 程序执行从PAD图最左主干线上端结点开始,自上 而下、自左向右依次执行,程序终止于最左主干线543.3.3 详细设计(续) PDL(伪码) PDL过程设计语言,Program Design Language 混合语言,类似编程语言 常用词汇: 顺序: 条件:IFTHENELSEETIDIF 循环:DOWHILEENDDO 循环:REPEAT UNTILENDREPEAT 分支:CASE OFWHENSELECTWHENSELECT ENDCASE PDL特征: 有为结构化构成元素、数据说明和模块化特征提供的关键词语法; 处理部分的描述采用

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

当前位置:首页 > 高等教育 > 大学课件

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