- 1、本文档共148页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ch软件技术基础--软件工程简介new.ppt
软件发展的几个阶段 程序设计时代(50-60年代) 软件指程序,软件开发关注程序编写,用汇编及机器语言 程序系统时代(60-70年代) 软件指程序及说明书,软件开发包括程序设计和测试,用高级语言 软件开发中的问题 计划很难制定致使经费预算常常突破 需求在开发的初期阶段提得不够明确, 或是未能得到确切的表达。 开发过程没有统一的、公认的方法论和规范指导 未能充分做好检测工作 软件危机: 软件工程 软件工程是用科学知识和技术原理来定义、开发、维护软件的一门综合性的交叉学科,软件工程是开发与维护软件的规范化系统方法。 它综合应用计算机科学、数学及管理科学等原理开发软件的工程。其中: 计算机科学、数学用于构造模型与算法。 工程科学用于制定规范、设计范型、评估成本及确定权衡。 管理科学用于用于计划、资源、质量、成本等管理。 软件工程的定义 Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。 IEEE:软件工程是开发、运行、维护和修复软件的系统方法。 Fritz Bauer:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 软件发展的几个阶段 软件工程时代(70年代以后) 软件指程序、文档、数据 软件开发包括软件生命期,用软件语言(包括需求定义语言、软件功能语言、软件设计语言、程序设计语言等)。 软件工程项目的基本目标 付出较低的开发成本 达到要求的软件功能 取得较好的软件性能 开发的软件易于移植 需要较低的维护费用 能按时完成开发工作,及时交付使用 软件开发项目力图在以上目标的冲突中取得一定程度的平衡。 软件工程三要素:方法、工具和过程 软件工程方法:为软件开发提供了 “如何做” 的技术。 软件工具:为软件工程方法提供了自动的或半自动的软件支撑环境。 软件工程过程:定义了 方法使用的顺序 要求交付的文档资料 为保证质量和适应变化所需要的管理 软件开发各个阶段的完成标志 软件生存周期 软件生存周期概念 软件生存周期(software life cycle)又称为软件生命期,生存期。是指从形成开发软件概念起,所开发的软件使用以后,直到失去使用价值消亡为止的整个过程。 一般来说,整个生存周期包括计划、开发、运行三个时期,每一个时期又划分为若干阶段。每个阶段有明确的任务,这样使规模大、结构复杂和管理复杂的软件开发变得容易控制和管理。 软件生存周期 软件生存周期模型 软件生存周期模型:描述软件开发过程中各种活动如何执行的模型。是软件工程过程的简化的抽象描述。 瀑布模型 演化模型 螺旋模型 喷泉模型 增量模型 软件生存周期模型 1. 瀑布模型 软件生存周期模型 2. 演化模型—快速原型化方法 3. 螺旋模型 4. 喷泉模型 迭代 重复 演进 无间隙 各阶段间无明显界限 5. 增量模型 首先完整地开发系统的一个初始子集; 然后,根据该子集,建造一个更加精细的版本; 不断地进行系统的更新的增量开发。 软件生命期各阶段 一、 软件计划与可行性研究 目的 一、软件计划与可行性研究 内容 软件可行性研究 软件可行性研究 可行性研究的具体步骤 软件可行性研究 可行性研究报告内容 二、 软件系统需求分析 需求分析概念 需求分析的基本任务 结构化分析方法 二、 软件系统需求分析 1. 需求分析概念 2. 需求分析的基本任务 是要准确地定义新系统的目标,满足用户需要。回答系统必须“做什么”的问题。本阶段要进行以下几方面的工作: 3. 结构化分析方法 SA方法利用图形等半形式化的描述方式表达需求,简明易懂,用它们形成需求说明书中的主要部分。这些描述工具是: (1)数据流图(DFD) (2)描述加工逻辑的工具:结构化语言、判定表、判定树 (3)数据字典(DD) 3. 结构化分析方法 (1)数据流图(DFD) 3. 结构化分析方法 (1)数据流图(DFD) 描述银行取款过程的数据流图 对数据流图的每一个基本加工,必须有一个基本加工逻辑说明。 基本加工逻辑说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规则。 加工逻辑说明必须描述实现加工的策略而不是实现加工的细节。 加工逻辑说明中包含的信息应是充足的,完备的,有用的,无冗余的。 (2) 用于写数据加工(处理)逻辑说明的工具 结构化英语 判定表 判定树 1)结构化英语 结构化英语的词汇表: 英语命令动词 数据词典中定义的名字 有限的自定义词 逻辑关系词 IF_THEN_ELSE、 CASE_OF 、 WHILE_DO、 REPEAT_UNTIL
文档评论(0)