计算机软件技术基础第1章 软件工程



《计算机软件技术基础第1章 软件工程》由会员分享,可在线阅读,更多相关《计算机软件技术基础第1章 软件工程(59页珍藏版)》请在文档大全上搜索。
1、 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 1第1章 软件工程 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 21.1 软件工程概述1.1.1 软件工程的定义计算机软件定义:程序、相关数据及其说明文档。其中:程序是指完成预定功能和性能的可执行指令序列;数据是程序能正常操作信息
2、的数据结构; 文档是与程序开发维护和使用相关的各种图文资料。软件的发展大致经历了程序设计时代、软件时代软件工程时代 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 3 软件工程学定义:是指导计算机软件开发和维护的一门工程学科。它采用工程的概念、原理、技术和方法来开发与维护软件,把先进的管理技术和先进的计算机科学技术方法结合起来,经济地开发出高质量的软件并有效地维护它。 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术
3、基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 41.1.2 软件生存周期(1)软件定义期 包括问题定义、可行性研究和需求分析三个阶段。(2)软件开发期 包括系统设计、详细设计、编码和测试四个阶段。(3)软件维护期 即运行维护阶段。 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 51.1.3 软件开发模型 瀑布模型快速原型模型增量模型螺旋模型喷泉模型
4、构件组装模型第四代技术模型 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 61.2 软件的分析是整个软件过程的第一个时期软件分析进一步可分为三个阶段:问题定义可行性研究需求分析此阶段结束时要产生如下文档:可行性报告、软件计划、需求说明书等。 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信
5、息系统 71.2.1 问题定义问题定义的任务是确定问题的性质、工程目标以及规模。1.2.2 可行性研究可行性研究的任务是用最小的代价确定在问题定义阶段的系统目标和规模是否现实,所确定的问题是否可以解决,给出若干个解决问题方案,论证系统方案在经济上、技术上和操作上是否可行。1.2.3 需求分析这个阶段的任务是理解和表达用户的要求,对用户的业务活动进行分析,明确在用户的业务环境中软件系统应该“做什么”。确定对系统的综合要求,包括:软件系统的范围、功能、性能、限制和约束以及将来可能会提出哪些要求。 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件
6、技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 8需求说明书:需求规格说明书主要包括以下内容:引言、数据描述(数据流图、数据字典)、功能描述、性能描述、质量保证和其他。需求说明书的作用: 作为用户和软件开发人员之间的合同;作为开发人员进行设计和编程的根据;作为软件开发完成后验收的依据。 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 91.2.4 软件分析方法结构化分析方法是面向数据
7、流进行需求分析的一种方法。它使用数据流图、数据字典等工具进行分析。可按如下的步骤进行:1)建立当前系统的物理模型,通过对现实环境的调查研究,获得当前系统的物理模型。通常用数据流图把当前系统的工作流程描述出来。2)建立当前系统的逻辑模型。去掉具体模型中的非本质因素,抽象出当前系统的功能和性能,建立当前系统的逻辑模型。3)建立目标系统的逻辑模型。分析当前系统与目标系统的差别,建立目标系统的逻辑模型。目标系统是一个使用计算机的系统。4)对目标系统进行完善和补充、并写出完整的需求说明。 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算
8、机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 101.2.5 表达工具数据流图:表示了软件的信息流向和信息的加工。数据字典:对信息和加工进行更详细的描述。还可使用结构英语、判定表、判定树对信息加工的加工逻辑进行描述。 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 111数据流图(1)数据流图的基本成分 数据流图由四种基本成分组成:数据流、数据存储、加工、源点和终点。四种基本成分的图形如图所示。
9、 数据流。数据存储。数据处理。源点和终点。XF数据存储PSXF数据存储PS 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 12(2)数据流图的结构 1)顶层。决定系统的范围,决定输入输出的数据流,它说明系统的边界,把整个系统的功能抽象为一个加工,顶层数据流图只有一张。2)中间层。顶层之下是若干中间层,某一中间层既是它上一层的加工的分解结果,又是它下一层若干加工的抽象,即它又可进一步分解。3)底层。底层数据流图的加工是由基本加工构成的,不
10、能再进行分解。 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 13A2.11.11232.21.21.3A2.11.11232.21.21.3输入输出加工或变换输入输出加工或变换图1-8 分解与抽象 图1-7 软件模型 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 142数据字典
11、数据字典中有如下四种条目:数据流数据存储数据项基本加工条目。 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 计算机软件技术基础计算机软件技术基础计算机软件技术基础 信息管理与信息系统信息管理与信息系统 151.3 软件的设计这个阶段的任务是: 设计软件系统的模块层次结构 设计数据库的结构 设计模块的控制流程其目的是明确软件系统“如何做”。这个阶段又分为两个步骤:总体设计(系统设计)和详细设计。这个阶段结束要交付总体设计说明书和详细设计说明书,也可以合并在一起,称为设计说明书。 计算机软件技术基础计算机软件技术基础计算机软件技术基