软件项目开发过程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

• 产品功能设计 的具体描述
23
创建原型
• • • 创建一个应用程序原型,并提交客户进行审批 。 批准后,将原型分派给开发人员进行开发。 原型是模拟应用程序的模型。
24
分配和监控任务
• • • 项目组长需要估算完成项目所需人工小时数 项目组长创建任务清单 任务清单记录: – 计划开始日期和结束日期 – 模块名称和说明书 – 完成模块所需的时间 – 进度状态
31
实施和维护
• 实施阶段: – 在本阶段,将把已开发的系统安装到客户计算机上 。 – 实施工程师确保安装过程的准确执行 。 维护阶段: – 本阶段为客户提供故障排除技术 。 – 对应用程序进行所需的软件升级。

32
项目跟踪和监控
• • • • 在项目开发生命周期,监控系统的过程和实际工作情况有助于 提高项目效率。 也有助于实现项目目标。 这些活动将与项目开发过程同步进行 。 复查是用于检查项目进度的一种程序。
33
项目组成员各行其责
• 项目组各成员在软件开发过程中各自扮演各自的角色,这些 成员一般由其岗位职责所决定的。 其职责履行情况通过其业绩评测和反馈过程进行,这是一个 团队建设的核心准则。

34
问题
1. 2. 3. 分析系统需求并定义问题的是 项目开发生命周期中 。 阶段确定项目所需的成本。 方法可
4
软件项目基本流程
启动
计划
执行
控制
结束
流程示意图
6
软件项目开发的流程及特征
• 此通用流程时间表为各种开发项目的参考,各工作项目的时间长短视项 目具体的要求来决定, 且有的流程可有可无。 • 关键点: ― 功能需求必先于设计构划. 程序设计必后于设计构划. 设计构划书 的周密严谨关系到整个产品开发的成败和质量。 ― 测试要与程序设计同步进行, 以便及时纠错。
19
软件设计规范书撰写指南
• 设计规范书是什么? ― 设计构划书是描写软件产品或系统具体功能特性和设计方案的文件。 ― 它是整个产品或系统的蓝图- 开发设计和测试计划都以次为基础进一 步撰写。 ― 它由设计项目经理负责撰写, 组织核审, 并根据开发过程中的由编程设 计改动作随时的订正, 使文件中的设计与具体的编程随时保证同步。
25
开发阶段和评估/测试阶段
• 开发阶段: – 对在原型中建立起来的用户界面进行最后的润色。 – 使用 RDBMS 工具建立数据库。 – 通过添加代码来实现窗体的各项功能。

评估/测试阶段: – 本阶段将对每个单元的功能进行测试 – 本阶段的活动包括: • 单元测试、验证屏幕输入、峰值负荷测试、容量测试、可 靠性测试和集成测试。
10
问题定义
正确识别客户的需求 系统要实现的准确目标 本阶段与成本问题相关 包括定义问题及划定界限两个环节 本阶段的输入信息是未结构化的 活动包括: 会见客户了解客户需求确定可能的解决方案定义项目范围。 • “问题定义”记录在“问题定义文档”中。 • • • • • •
11
需求分析阶段
• 在本阶段,分析人员确定当前系统的过程 • 分析过程的输入和输出 • 使用“客户需求说明书(CRS)”文档 • CRS 是多个文档的摘要
• 任何计算机化系统的委派和实施都与项目组各成员的通力合作密不 可分 (团队精神)。 • 项目组由“项目组长”领导 。
• 项目组长的作用Байду номын сангаас– 项目组长主要确定每个成员应执行哪些任务。 – 应为每个项目开发阶段分配多少时间。
3
项目人员构成
• 项目组一般由下列人员构成 : – 分析人员 – 设计人员 – 开发人员/程序员 – 测试人员 – 实施工程师 – 维护工程师
17
设计数据库和过程模块
• 数据库: – 根据 ERD 中包含的信息设计数据库。 – 表设计将遵循规范化的规则。 – 表设计记录在表设计文档中。 过程模块: – 过程设计包括将在分析阶段制定的过程定义转换为代码模 块。 – 过程设计记录在过程设计文档中。

18
设计编码标准
• • • • • 设计的过程模块需要进行标准化 标准化包括设置程序和数据库的名称约定 标准化使代码的可读性更强,更易于维护 常规编码标准 函数声明的编码标准
开发范围 开发理由
开发目标
21
软件设计规范书撰写指南
• 应有的章节 • 功能需求 • 撰写内容的纲领 • 此章节回答以下问题:此产品或系统要能提供什 么样的功能,功能要达到什么样的特性与效益。 哪些是必须有的功能与效益,哪些是可有可无的 • 此章节回答以下问题:各关健功能会被怎样使用, 使用者与客户是谁,使用者应有的水平,及教育 或培训客户的要求是什么。 • 此章节回答以下问题:此产品或系统对运行环境 的各种要求, 如操作平台要求, 硬件要求, 网络要 求, 系统安全要求, 使用时按规章执行的要求, 等 等. • 此章节列出该项目的开发时间表, 对每一具体开 发任务所需的人力及时间的初步估计, 及所有的 项目里程碑
软件项目开发过程
目录
• 项目组的人员组成 • 软件项目的基本流程 • 软件项目开发的阶段 – 问题定义,项目开发生命周期的各个阶段,以及各个阶段的特 点 – 需求分析阶段 – 设计阶段 – 开发阶段 – 评估/测试阶段 – 实施阶段 – 维护阶段 – 项目跟踪和监控活动 • 软件工程师的角色
2
项目人员简介
27
开发管理的一些指南
• 建立程序原代码的提交库,并建立完整的原代码的提交的流程管理制度 ― 原代码只允许一人改动. 改动前先要从提交库申请出原代码. 改动后 再送进提交库。 ― 改动完先要在开发工程师的机器上编译, 与其它组件一起运行过, 确 证没有致命的缺陷后,才能送进原代码的提交库。 ― 在产品发行前, 整个提交库都被锁上, 只有被批准的缺陷修补的原代 码才能提交进库。
• 使用概况方案
• 运行需求
• 开发时间表
22
软件设计规范书撰写指南
• 应有的章节 • 撰写内容的纲领
• 成功所依赖 • 的因素
• 未解决的问题
• 此章节列出对所有可以估计到的外在制约的因素, 特别是写明哪些因素是该项目成功所依赖的, 如 特别的人才, 设备, 所需的技术, 等等.
• 此章节列出任何尚未解决的问题, 或有待近一步 调查商讨才能定出答案的有关设计方案和计划, 及任何与客户间尚未同意的事项, 等等. • 此章节列出此产品或系统所有设计细节 – 对每个 功能及设计,及运用时的使用界面,做详细的解 释。 • 对使用界面的设计,配备大量图例,对每个控制 键,使用界面,该显示的文字,图像,出错的回 馈,等等,作具体地解说。
7
软件项目开发的流程及特征
• 关键点: ― 每个项目的时间进度表的制定应包括所有重要的里程碑.项目进度的 跟踪以它们为准。 ― 对开发前期的工作项目花的功夫越多, 如功能需求总结和设计构划书 的撰写尽量做到周密严谨, 和用户同一认识, 后期的工作项目如编程 测试等造成返工重做的机率就越小, 会对整个项目的高效率和低开支 起很大的促进作用。
26
开发管理的一些指南
• 写任何程序前一定要先有设计构划书 • 任何复杂的系统程序要先有构架设计书 ― 对系统组件有明确的功能定义。 ― 对组件的接口的设计事先有完整的纪录。 ― 构架设计书由构架设计师或开发工程师的领导人员来撰写。 ― 构架设计书要通过项目经理和测试人员在内的审核及通过, 才能开 始编写程序。
软件开发过程中,有很多错误是无法预料的,使用 以发现和消除软件开发过程中产生的错误。
4. 5.
维护工程师有


三项工作。 阶段确定项目所需的硬件和软
项目开发生命周期中 件。
35
15
设计 GUI 标准
• • • 这些标准与应用程序的外观有关 应用程序的外观和流程要求保持一致 包括: – 颜色 – 字形 – 标题和标签的尺寸 – 页眉和页脚的外观 – 控件的主题、位置和尺寸
16
设计界面
• • • 根据 GUI 标准集设计屏幕的布局 可以是用户输入或显示信息的报表 记录在界面设计文档中
12
需求分析阶段
• 客户需求说明书(CRS)文档包括: – 系统输入列表 – 系统期望输出列表 – 系统流程总览 – 实施项目所需的硬件和软件 – 客户接收项目的标准 – 系统的实体关系图(ERD)
13
需求分析阶段
• 客户需求总结是受多方面因素影响的
14
设计阶段
• • 准备待开发系统的蓝图 设计阶段的活动包括: – 设计 GUI 标准 – 设计应用程序的界面 – 设计数据库 – 设计过程模块 – 设计编码标准 – 创建原型 – 分配和监控任务
28
开发管理的一些指南
• 建立原代码互审的管理制度 ― 每个软件开发工程师遍写的原代码都有致少一个以上的同事对程序 进行审查。 • 建立原代码编写的规范 ― 每个软件开发工程师都应按照规范进行程序设计, 包括编写的风格, 格式, 组件接口的规范, 解说词的撰写, 等等。
29
测试管理的一些指南
• 根据设计构划书撰写测试计划 ― 测试计划要请项目经理和开发工程师一起进行审查。 ― 测试计划用列表式将所有的测试方案写下。 ― 每个具体地的测试方案都有专人执行,并记录每个测试方案的结果 . 任何缺陷都记录下来。 • 测试与开发同步进行 ― 在部分组件编写完后就进行。
30
测试管理的一些指南
• 测试计划执行中的注意事项 ― 由测试员发现的缺陷分给开发工程师修改纠错。 ― 修改完毕由测试员先进行初步质量验证, 通过后才能由开发工程师 送进原代码的提交库。 ― 每次任何影响到其它组件的程序纠错改动, 不仅是经过改动的程序 要重新测试, 任何可能受到影响的其它组件或程序也必须重测。 ― 发行前要进行全程测试。
8
项目生命周期的各个阶段
• 每个软件开发活动都可以明确划分为几个不同的阶段。 • 每个阶段都具有明确的起点和终点,可以清晰准确地与下一阶段进 行交接。 • 每个阶段都有相应的文档,用于对各种活动及过程进行跟踪 。
9
项目生命周期各阶段
• 项目开发生命周期包括下列几个阶段: – 第 1 阶段:问题定义 – 第 2 阶段:需求分析 – 第 3 阶段:设计 – 第 4 阶段:开发 – 第 5 阶段:评估/测试 – 第 6 阶段:实施 – 第 7 阶段:维护
20
软件设计规范书撰写指南
应有的章节 前言 撰写内容的纲领
• 题目、作者、日期、版本 • 用简短的段落阐述软件产品或系统的目的。用一 句话来列出该产品的最重要的三到五项功能特性 来做开场白 • 此章节列出软件产品或系统开发项目该包括的功 能,及哪些虽然很值得但此项目不包括的功能。 • 此章节回答以下问题:为什么要开发此产品或系 统;为什么要按此设计来开发此产品或系统。 • 此章节回答以下问题:此产品或系统完成后要达 到什么目的,能解决什么客户或使用者的问题, 在运行速度,效率,使用方便性,质量等方面的 目标
相关文档
最新文档