软件开发过程管理

上传人:飞*** 文档编号:52448225 上传时间:2018-08-21 格式:PPT 页数:108 大小:486KB
返回 下载 相关 举报
软件开发过程管理_第1页
第1页 / 共108页
软件开发过程管理_第2页
第2页 / 共108页
软件开发过程管理_第3页
第3页 / 共108页
软件开发过程管理_第4页
第4页 / 共108页
软件开发过程管理_第5页
第5页 / 共108页
点击查看更多>>
资源描述

《软件开发过程管理》由会员分享,可在线阅读,更多相关《软件开发过程管理(108页珍藏版)》请在金锄头文库上搜索。

1、软件开发过程管理Date1讲授内容n项目案例n什么是软件项目开发过程n为什么需要定义过程n软件开发过程模型n如何定义过程n如何剪裁过程n案例分析n小结Date2问题n如果让你来组织一个软件项目的开发,你 认为首先你所关注的问题是什么?Date31. 项目案例案例角色和人物小王:软件项目负责人老王:公司技术老总开发小组:小李、老赵、小田、小谢Date4软件开发需要过程(1/3)n由于时间紧迫,小王需要马上展开软件项目的开 发工作,但是它现在面临一系列头痛的问题 软件项目的开发要做哪些方面的工作 这些工作应该按照什么样的次序开展进行?这些工作 完成后将产生什么样的结果?按照什么样的规范来书 写这些

2、内容 如何让员工知道要做哪些工作 尽管他学过软件工程,但在小王的头脑中没有一个清 晰、系统的认识 根据以往的经验,他认为需要去制订一个清晰、详细 、完整的软件开发过程Date5软件开发需要过程(2/3)n小王向老王寻求帮助,老王告诉小王公司以前从 来没有这些方面的记录,各个项目组都从零开始 制定自己的软件开发过程,但都没有形成文档n经过慎重考虑,小王向老王建议: 项目组需要定义软件开发过程 公司需要一个良定义、文档化的软件开发过程,以便 于支持不同项目组的开发工作n老王同意小王的建议,并要求他制定和文档化一 个针对公司特点、并且能满足大部分软件项目需 求的软件开发过程Date6软件开发需要过程

3、(3/3)n于是,小王只好找了一大堆的资料,带着 许多疑问和困惑,考虑和制订项目开发的 过程和活动。 什么是软件开发过程? 如何清晰、准确、规范地对它加以定义? 如何根据公司的特点,制定软件开发过程? 如何不断地改进软件开发过程? 如何根据项目的特点剪裁过程 等等Date7过程是重要的n软件开发过程的制定对软件项目的实施是很重要 的n软件开发过程需要文档化,便于交流、培训、改 进n软件开发过程的制定应针对具体组织和项目的特 点n一个组织最好应该有特定于该组织、一般性的软 件开发过程,供各个项目剪裁和使用n通过培训让项目组成员了解软件开发过程Date8问题的提出n什么是软件开发过程?n如何清晰、

4、准确、规范地对它加以定义?n如何根据公司的特点,制定软件开发过程 ?n如何不断地改进软件开发过程?n如何根据项目的特点剪裁过程nDate9讲授内容n项目案例n什么是软件项目开发过程n为什么需要定义过程n软件开发过程模型n如何定义过程n如何剪裁过程n案例分析n小结Date102. 什么是软件开发过程n什么是过程?n什么是软件开发过程?Date112.1 什么是过程?n针对一个给定目的地一系列操作步骤 (IEEE-STD-610)n例如 目的:去火车站 操作步骤:去德雅路公共汽车站,乘113路汽 车n每个过程都有明确的目的以及具体的操作 步骤,操作步骤说明了有哪些操作以及按 照什么样的方式来执行操

5、作Date122.2 什么是软件开发过程 (1/2)n按照项目的进度、成本和质量限制,开发 和维护满足用户需求的软件所必需的一组 有序的软件开发活动集合n软件开发活动的例子 需求分析 设计n开发活动的序例子 先做需求分析,然后再做软件设计 Date132.2 什么是软件开发过程(2/2)n软件开发过程的组成 软件开发活动 软件开发活动间的关系(执行和实施的序)活动1活动2活动3活动4Date142.3 软件开发活动(1/4)n什么是软件开发活动? 为开发软件项目而执行的一项具有明确任务的 具体工作 例如,需求分析,执行单元测试,制定软件项 目开发计划等n软件开发过程中存在许多相互关联的软件 开

6、发活动 明确的任务 非孤立,和其他活动存在关联Date152.3 软件开发活动(2/4)n按任务性质,软件开发活动可分为二种形 式 技术活动n对软件项目实施开发,产生软件产品n例如,需求分析,概要设计,编码,单元测试等等 管理活动n对软件项目中的人、产品和过程等实施管理的活动n例如,制订软件项目计划,软件配置等等Date162.3 软件开发活动(3/4)n如何定义软件开发活动? 名称 任务 输入: 开始所必需满足的条件 输出: 完成时所必须满足的条件以及结果 实施: 做什么,怎么做(详细的步骤),或者如 何从输入产生输出软件开发活动输入输出Date172.3 软件开发活动(4/4)n软件活动例

7、子: 单元测试 任务n对软件基本单元模块进行测试,判断是否有错 输入n有一个已完成、被文档化和批准的软件单元测试计划n供测试的软件单元模块代码 实施n遵循单元测试计划,运行了所有的测试用例n撰写了单元测试报告 输出n单元测试报告Date182.4 软件开发活动间的关系n软件开发活动之间的次序反映了活动之间 的依赖关系 逻辑n一个软件开发活动输出是另一个软件开发活动的输 入n例如,需求分析和软件设计之间 时间n一个软件开发活动需等到另一个软件开发活动完成 之后才能执行n例如,集成测试和确认测试Date19讲授内容n项目案例n什么是软件项目开发过程n为什么需要定义过程n软件开发过程模型n如何定义过

8、程n如何剪裁过程n案例分析n小结Date20为什么需要过程n明确了软件开发的过程和步骤,促进工程 化软件开发n便于制定软件项目计划n为软件开发提供了可视性,便于对软件开 发过程进行管理和控制n便于细化和安排任务,使得每个人员明确 各自的工作Date21讲授内容n项目案例n什么是软件项目开发过程n为什么需要定义过程n软件开发过程模型n如何定义过程n如何剪裁过程n案例分析n小结Date22软件开发过程模型n什么是软件开发过程模型? 软件开发模型是软件开发全过程、软件开发活动以及 它们之间关系的的结构框架 指导软件开发,以及软件开发过程的定义n常用的软件开发过程模型 瀑布模型 原型模型 增量模型 迭

9、代模型 螺旋模型Date234.1 瀑布模型需求分析软件设计编码测试软件定义l 特点:分阶段阶段间有因果关系评审允许反馈l适合场所需求易于完善定义 的软件需求分析软件设计编码测试软件定义Date244.2 原型模型l特点有效适应用户需求的 变化不知循环多少次,进 度难以控制l适合场所需求动态变化、难以 确定的软件系统Date254.3 增量模型(Incremental)交付产品需求分析概要设计软件定义系统测试编码集成测试详细设计编码集成测试详细设计增量1增量nl特点并行开发管理复杂Date264.4 迭代模型(Iterative)n特点 通过逐步迭 代,建立软 件系统n适合场所 需求没有/ 难

10、以完整定 义的软件需求分析软件设计编码测试软件定义需求分析软件设计编码测试软件定义迭代1迭代2Date274.5 螺旋模型n特点 以风险为导 向n应用场所 开发风险较 大的软件项 目Date28讲授内容n项目案例n什么是软件项目开发过程n为什么需要定义过程n软件开发过程模型n如何定义过程n如何剪裁过程n案例分析n小结Date29定义软件开发过程的要求n全面 定义要应用到软件项目中的所有活动项n可操作 各个活动易于实施n简洁、易于理解 不含无意义的活动,描述简洁易于理解n灵活 可供各个项目进行灵活剪裁n易于改进 能够不断对它进行改进和提高Date30定义软件开发过程的步骤(1/2)n步骤1:确定

11、软件开发过程模型n步骤2:确定和描述活动n步骤3:确定和描述活动间的关系n步骤4:文档化软件开发过程n步骤5:文档化如何剪裁过程n步骤6:文档化如何改善过程n步骤7:过程评审、认可和发布n步骤8:员工培训Date31定义软件开发过程的步骤(2/2)选择软件开发过 程模型确定和描述活动确定和描述活动 关系文档化软件开发 过程文档化如何剪裁过程文档化如何改进过程评审认可发布员工培训Date32步骤1:选择软件开发过程模型 (1/2)n选择软件开发过程模型应考虑的问题 组织软件的需求特征n动态改变n可完全定义 项目的风险n风险因素有多大n能承受多少? 是否需要预先给用户展示原型? 需要多少经验和技巧

12、来成功的使用软件开发过程模型 组织或项目组成员的经验和能力等等Date33步骤1:选择软件开发过程模型 (2/2)n注意:组织应该努力选择满足组织要求、 尽可能少的软件开发过程模型 软件开发模型数目不宜过多 所选择的软件开发模型不宜过于复杂 最好选择哪些组织成员熟悉的、有使用经验的 软件开发过程模型Date34步骤2:确定和描述活动l确定活动l定义和描述活动Date35确定活动(1/2)n任务 明确软件开发过程应包含哪些活动n注意 软件开发活动包括技术活动和管理活动 技术活动:需求分析、撰写软件使用资料 管理活动:制定软件开发计划Date36确定活动(2/2)n确定活动的原则 基于所选择的软件

13、开发过程模型确定活动 一般的,软件开发过程模型仅仅确定软件开发 的技术活动 所确定的活动对于软件项目的开发是必要的 活动尽可能是全面的,适合于各种可能的软件 项目,可供它们进行剪裁Date37例子:确定软件开发活动n技术活动 需求分析 概要设计 详细设计 编码 集成测试 撰写出版物 用户确认测试 软件发布n管理活动 制定初步软件开发计 划 制定详细软件开发计 划 制定软件配置管理计 划 制定软件质量保证计 划 项目跟踪和监督 配置管理 用户培训Date38定义和描述活动n对所确定的活动给出定义和描述 名称 任务 输入 输出 实施Date39例子:需求分析活动描述(1/2)n名称 需求分析n任务

14、 进行需求调查,定义软件的用户需求 撰写软件需求规格说明书(SRS) 根据SRS,制定软件确认测试计划 对SRS和软件确认测试计划进行评审,产生经批准的 SRS和软件确认测试计划n输入 用户的初步需求描述Date40例子:需求分析活动描述(2/2)n实施 根据用户需求描述,分析和定义软件的用户需求,按 照软件需求规格说明书编写指南撰写软件需求规 格说明书 对SRS进行评审,评审的原则:正确性、完整性、一 致性、简洁性、规范化 根据软件的用户需求,制定软件确认测试计划,按照 软件确认测试计划编写指南撰写软件确认测试计 划文档n输出 经批准的SRS, 经批准的软件确认测试计划Date41步骤3:确

15、定和描述活动间关系 (1/3)n活动之间主要有哪些关系? 执行时序关系n时间先后关系n例如,集成测试完成之后,才能进行确认测试 逻辑依赖关系n一个活动的执行需要其它活动实施产生的结果n逻辑依赖关系蕴涵了执行时序关系n例如,软件概要设计和需求分析之间Date42步骤3:确定和描述活动间关系 (2/3)n如何描述活动之间的关系 入口条件n例如,软件设计(逻辑依赖),有一个已完成、被文 档化和批准的软件需求规格说明书n例如,确认测试(执行时序),集成测试已经完成 出口条件n例如,软件需求分析(逻辑依赖),产生一个已完成 、被文档化和批准的软件需求规格说明书Date43步骤3:确定和描述活动间关系 (3/3)n直观的图形描述 节点表示活动 有向边表示活动之间的关系n执行时序n逻辑关系活动1活动2活动1活动2Date44例子:描述活动间的关系n需求分析、概要设计和详细设计 入口条件(概要设计)n经过批准的软件需求规格说明书 出口条件(概要设计)n软件概要设计规格说明书n数据库设计规格说明书n软件接口设计规格说明书需求分析详细设计概要设计Date45步骤4:文档化软件开发过程(1/5)n什么是文档化? 书面、文字化描述和记录,并形成相应的、规 范化的文档n为什么需要文档化软件开发过程? 便于记录和保存 便于获取、理解和

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

当前位置:首页 > 行业资料 > 其它行业文档

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