软件开发流程介绍PPT学习课件

  • 格式:ppt
  • 大小:544.00 KB
  • 文档页数:16

下载文档原格式

  / 16
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
层次体系。 软件结构设计优化准则: 1 划分模块时,尽量做到高内聚,低耦合,保持模块相对ቤተ መጻሕፍቲ ባይዱ立性,可将功能过于简单
而又有联系的模块进行合并,合并时消除重复功能。 2 有判定功能的模块应与受其影响的模块在层次上尽量靠近。 3 软件结构的深度,宽度,扇入,扇出应适当。 4 模块的大小要适中。 5 模块的接口要简单,清晰,含义明确,便于理解,易于实现,测试于维护。
需求分析是指,开发人员准确理解用户的要求,进行细致的调查分析, 将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相 应形式的功能规约(需求规格说明书)的过程。 需求分析的任务: 1 问题识别 (1)功能需求:所开发的软件必须具备什么样的功能,这是最重要的。 (2)性能需求:待开发的软件的技术性能指标。 (3)环境需求:软件运行时所需的软,硬件的要求。 (4)用户界面要求:人机交互方式等等。 2 分析与综合,导出软件的逻辑模型
仓库 经理
含义
用例及说明
表示数据的源点或终 点
表示数据流动
7
(三)概要设计
概要设计是把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,把 软件需求转换为软件表示,描述软件的总的体系结构。 概要设计任务: 1设计软件系统结构 (1)采用某种设计方法,将一个复杂的系统按功能划分成模块。 (2)确定每个模块的功能 (3)确定模块之间的调用关系 (4)确定模块之间的接口 2 数据结构及数据库设计
3
(一)可行性分析和项目开发计划
软件可行性研究的目的就是用最小大代价在尽可能短的时间内确定该软件项 目是否能够开发,是否值得去开发。 可行性研究的任务: 1 技术可行性
确定在现有资源(软件,硬件,技术人员)条件下,项目是否能实现。 2 经济可行性
进行开发成本的估算以及了解取得经济效益的评估,确定要开发的项目是否值 得投资开发。 3 社会可行性
计························11
(五) 编
码··························12
(六) 测
试··························152
(七) 维
开发流程总图
可行性分析和项目开发计划 ↓
需求分析 ↓
概要设计 ↓
详细设计 ↓
编码 ↓
测试 ↓
维护
根据软件内部数据传递,变换的关系,自顶向下逐层分解,描绘出满足功能要求的 软件模型。 描述工具: 数据流图(DFD):以图形方式描绘数据在系统中流动和处理的过程。
数据字典(DD):为分析人员查找数据流图中有关名字的详细定义而服务。
6
(二)需求分析
数据流图
顾客 采购部门
数据字典
符号
矩形 箭头
销售管理系统
软件开发流程介绍
1
目录
开发流程总
图·························3
(一) 可行性分析和项目开发计划················4
(二) 需求分
析························5
(三) 概要设
计························8
(四) 详细设
9
(三)概要设计
A
深 度
B
宽度
扇出 扇入
深度:指结构图控制的层次,左图深 度为5。
宽度:指模块个数最多的一层中的模 块个数,左图宽度为4。
扇出:指一个模块直接下属模块的个 数,左图中模块A的扇出为3。
扇入:指一个模块直接上属模块的个 数,左图中模块B的扇入为3。
画结构图应注意事项:
1 同一名字的模块在结构图中仅出现 一次;
在分析与综合中,逐步细化软件功能,划分成各个子功能,用图文结合 的形式,建立系统的逻辑模型。 3 编写文档
《需求规格说明书》:把双方共同的理解与分析结果用规范的方式描述 出来,作为今后各项工作的基础
5
(二)需求分析
《初步用户使用手册》:着重反映被开发软件的用户功能界面和用户使用的具体要求。 《确认测试计划》:作为今后确认和验收的依据。 修改《项目开发计划》,对原计划进行适当修正。 需求分析方法: 结构化分析方法,简称SA,是面向数据流进行分析的方法。该方法使用简单易读的符号,
对于大型数据处理的软件系统,除了控制结构的模块设计外,数据结构与数 据库设计也是重要的。 3编写概要设计文档 《概要设计说明书》 《数据库设计说明书》 修改《用户手册》 修改测试计划
8
(三)概要设计
软件设计名词解释: 模块:模块在程序中是数据说明,可执行语句等程序对象的集合,或者是单独命名和编
址的元素。在软件体系结构中,模块是可组合,分解和更换的单元。 模块化:是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。 耦合性:也称快间联系,模块之间联系越紧密,其耦合性就越强,模块的独立性就越差。 内聚性:又称快内联系,模块内各元素联系越紧密,则它的内聚性就越高。 衡量软件质量的标准---高内聚,低耦合。 软件结构图:是软件系统的模块层次结构,反映了整个系统的功能实现,及将来程序的
过程设计语言(PDL),也称程序描述语言,又称为“伪码”。它是一种用 于描述模块算法设计和处理细节的语言。
IF 条件1成立 处理S1 ELSE 处理S2 ENDIF
IF 条件1成立 发出提示警告 退出运行 ELSE 显示系统主菜单 ENDIF
11
(五)编码
编码即“编程序”,它是在前一阶段详细设计的基础上进行的,它是详 细设计得到的处理过程的描述转换为基于某种计算机语言的程序,即源程序 代码。 程序设计语言的选择: 1 项目的应用领域 2 软件开发的方法 3 软件执行的环境 4 软件开发人员的知识 程序设计风格: 1 源程序文档化(编码规范) 2 数据说明(注释) 3 语句构造 4 输入输出(结束标志) 5 效率 提高效率的根本途径在于良好的设计方法,良好的设计结构与算法。
要开发的项目是否存在任何侵犯,妨碍等责任问题,要开发项目的运行方式在 用户组织内是否行得通,现有管理制度,人员素质,操作方式是否可行 产生文档:《可行性研究报告》
《项目开发计划》 《项目开发计划》是一个管理性文档,说明项目的各项主要工作,双方应承 担的责任,项目完成期限及其他条件限制。
4
(二)需求分析
2 调用关系只能从上到下;
3 不严格表示模块的调用次序,习惯 上从左到右。
10
(四)详细设计
详细设计任务:
1为每个模块进行详细的算法设计,将每个模块处理过程的详细算法描述出来。 2为模块内的数据结构进行设计,对于需求分析,概要设计确定的概念性的数据类型进
行确切的定义。
3对数据库进行物理设计 4编写详细设计说明书