收藏 分享(赏)

软件开发过程的定义.ppt

上传人:精品资料 文档编号:11286994 上传时间:2020-03-11 格式:PPT 页数:109 大小:719.50KB
下载 相关 举报
软件开发过程的定义.ppt_第1页
第1页 / 共109页
软件开发过程的定义.ppt_第2页
第2页 / 共109页
软件开发过程的定义.ppt_第3页
第3页 / 共109页
软件开发过程的定义.ppt_第4页
第4页 / 共109页
软件开发过程的定义.ppt_第5页
第5页 / 共109页
点击查看更多>>
资源描述

1、第2讲 软件开发过程的定义、剪裁和改进,毛新军 http:/ 计算机科学与技术系602教研室 0731-(45)73649,软件项目管理课程 之,Copyright Xinjun Mao 2005,2,讲授内容,项目案例 什么是软件项目开发过程 为什么需要定义过程 软件开发过程模型 如何定义过程 如何剪裁过程 案例分析 小结,Copyright Xinjun Mao 2005,3,问题,如果让你来组织一个软件项目的开发,你认为首先你所关注的问题是什么?,Copyright Xinjun Mao 2005,4,1. 项目案例,案例角色和人物,小王:软件项目负责人,老王:公司技术老总,开发小组:

2、小李、老赵、小田、小谢,Copyright Xinjun Mao 2005,5,软件开发需要过程(1/3),由于时间紧迫,小王需要马上展开软件项目的开发工作,但是它现在面临一系列头痛的问题 软件项目的开发要做哪些方面的工作 这些工作应该按照什么样的次序开展进行?这些工作完成后将产生什么样的结果?按照什么样的规范来书写这些内容 如何让员工知道要做哪些工作 尽管他学过软件工程,但在小王的头脑中没有一个清晰、系统的认识 根据以往的经验,他认为需要去制订一个清晰、详细、完整的软件开发过程,Copyright Xinjun Mao 2005,6,软件开发需要过程(2/3),小王向老王寻求帮助,老王告诉小

3、王公司以前从来没有这些方面的记录,各个项目组都从零开始制定自己的软件开发过程,但都没有形成文档 经过慎重考虑,小王向老王建议: 项目组需要定义软件开发过程 公司需要一个良定义、文档化的软件开发过程,以便于支持不同项目组的开发工作 老王同意小王的建议,并要求他制定和文档化一个针对公司特点、并且能满足大部分软件项目需求的软件开发过程,Copyright Xinjun Mao 2005,7,软件开发需要过程(3/3),于是,小王只好找了一大堆的资料,带着许多疑问和困惑,考虑和制订项目开发的过程和活动。 什么是软件开发过程? 如何清晰、准确、规范地对它加以定义? 如何根据公司的特点,制定软件开发过程?

4、 如何不断地改进软件开发过程? 如何根据项目的特点剪裁过程 等等,Copyright Xinjun Mao 2005,8,过程是重要的,软件开发过程的制定对软件项目的实施是很重要的 软件开发过程需要文档化,便于交流、培训、改进 软件开发过程的制定应针对具体组织和项目的特点 一个组织最好应该有特定于该组织、一般性的软件开发过程,供各个项目剪裁和使用 通过培训让项目组成员了解软件开发过程,Copyright Xinjun Mao 2005,9,问题的提出,什么是软件开发过程? 如何清晰、准确、规范地对它加以定义? 如何根据公司的特点,制定软件开发过程? 如何不断地改进软件开发过程? 如何根据项目的

5、特点剪裁过程 ,Copyright Xinjun Mao 2005,10,讲授内容,项目案例 什么是软件项目开发过程 为什么需要定义过程 软件开发过程模型 如何定义过程 如何剪裁过程 案例分析 小结,Copyright Xinjun Mao 2005,11,什么是软件开发过程,什么是过程? 什么是软件开发过程?,Copyright Xinjun Mao 2005,12,2.1什么是过程?,针对一个给定目的地一系列操作步骤 (IEEE-STD-610) 例如 目的:去火车站 操作步骤:去德雅路公共汽车站,乘113路汽车 每个过程都有明确的目的以及具体的操作步骤,操作步骤说明了有哪些操作以及按照什

6、么样的方式来执行操作,Copyright Xinjun Mao 2005,13,2.2什么是软件开发过程 (1/2),按照项目的进度、成本和质量限制,开发和维护满足用户需求的软件所必需的一组有序的软件开发活动集合 软件开发活动的例子 需求分析 设计 开发活动的序例子 先做需求分析,然后再做软件设计 ,Copyright Xinjun Mao 2005,14,2.2什么是软件开发过程(2/2),软件开发过程的组成 软件开发活动 软件开发活动间的关系(执行和实施的序),Copyright Xinjun Mao 2005,15,2.3软件开发活动(1/4),什么是软件开发活动? 为开发软件项目而执行

7、的一项具有明确任务的具体工作 例如,需求分析,执行单元测试,制定软件项目开发计划等 软件开发过程中存在许多相互关联的软件开发活动 明确的任务 非孤立,和其他活动存在关联,Copyright Xinjun Mao 2005,16,2.3软件开发活动(2/4),按任务性质,软件开发活动可分为二种形式 技术活动 对软件项目实施开发,产生软件产品 例如,需求分析,概要设计,编码,单元测试等等 管理活动 对软件项目中的人、产品和过程等实施管理的活动 例如,制订软件项目计划,软件配置等等,Copyright Xinjun Mao 2005,17,2.3软件开发活动(3/4),如何定义软件开发活动? 名称

8、任务 输入: 开始所必需满足的条件 输出: 完成时所必须满足的条件以及结果 实施: 做什么,怎么做(详细的步骤),或者如何从输入产生输出,Copyright Xinjun Mao 2005,18,2.3软件开发活动(4/4),软件活动例子: 单元测试 任务 对软件基本单元模块进行测试,判断是否有错 输入 有一个已完成、被文档化和批准的软件单元测试计划 供测试的软件单元模块代码 实施 遵循单元测试计划,运行了所有的测试用例 撰写了单元测试报告 输出 单元测试报告,Copyright Xinjun Mao 2005,19,2.4软件开发活动间的关系,软件开发活动之间的次序反映了活动之间的依赖关系

9、逻辑 一个软件开发活动输出是另一个软件开发活动的输入 例如,需求分析和软件设计之间 时间 一个软件开发活动需等到另一个软件开发活动完成之后才能执行 例如,集成测试和确认测试,Copyright Xinjun Mao 2005,20,讲授内容,项目案例 什么是软件项目开发过程 为什么需要定义过程 软件开发过程模型 如何定义过程 如何剪裁过程 案例分析 小结,Copyright Xinjun Mao 2005,21,为什么需要过程,明确了软件开发的过程和步骤,促进工程化软件开发 便于制定软件项目计划 为软件开发提供了可视性,便于对软件开发过程进行管理和控制 便于细化和安排任务,使得每个人员明确各自

10、的工作,Copyright Xinjun Mao 2005,22,讲授内容,项目案例 什么是软件项目开发过程 为什么需要定义过程 软件开发过程模型 如何定义过程 如何剪裁过程 案例分析 小结,Copyright Xinjun Mao 2005,23,软件开发过程模型,什么是软件开发过程模型? 软件开发模型是软件开发全过程、软件开发活动以及它们之间关系的的结构框架 指导软件开发,以及软件开发过程的定义 常用的软件开发过程模型 瀑布模型 原型模型 增量模型 迭代模型 螺旋模型,Copyright Xinjun Mao 2005,24,4.1 瀑布模型,特点: 分阶段 阶段间有因果关系 评审 允许反

11、馈,适合场所 需求易于完善定义的软件,Copyright Xinjun Mao 2005,25,4.2原型模型,特点 有效适应用户需求的变化 不知循环多少次,进度难以控制,适合场所 需求动态变化、难以确定的软件系统,Copyright Xinjun Mao 2005,26,4.3增量模型(Incremental),交付产品,特点 并行开发 管理复杂,Copyright Xinjun Mao 2005,27,4.4迭代模型(Iterative),特点 通过逐步迭代,建立软件系统 适合场所 需求没有/难以完整定义的软件,迭代1,迭代2,Copyright Xinjun Mao 2005,28,4.

12、5 螺旋模型,特点 以风险为导向,应用场所 开发风险较大的软件项目,Copyright Xinjun Mao 2005,29,讲授内容,项目案例 什么是软件项目开发过程 为什么需要定义过程 软件开发过程模型 如何定义过程 如何剪裁过程 案例分析 小结,Copyright Xinjun Mao 2005,30,定义软件开发过程的要求,全面 定义要应用到软件项目中的所有活动项 可操作 各个活动易于实施 简洁、易于理解 不含无意义的活动,描述简洁易于理解 灵活 可供各个项目进行灵活剪裁 易于改进 能够不断对它进行改进和提高,Copyright Xinjun Mao 2005,31,定义软件开发过程的

13、步骤(1/2),步骤1:确定软件开发过程模型 步骤2:确定和描述活动 步骤3:确定和描述活动间的关系 步骤4:文档化软件开发过程 步骤5:文档化如何剪裁过程 步骤6:文档化如何改善过程 步骤7:过程评审、认可和发布 步骤8:员工培训,Copyright Xinjun Mao 2005,32,定义软件开发过程的步骤(2/2),选择软件开发过程模型,确定和描述活动,确定和描述活动关系,文档化软件开发过程,文档化如何剪裁过程,文档化如何改进过程,评审认可发布,员工培训,Copyright Xinjun Mao 2005,33,步骤1:选择软件开发过程模型(1/2),选择软件开发过程模型应考虑的问题

14、组织软件的需求特征 动态改变 可完全定义 项目的风险 风险因素有多大 能承受多少? 是否需要预先给用户展示原型? 需要多少经验和技巧来成功的使用软件开发过程模型 组织或项目组成员的经验和能力等等,Copyright Xinjun Mao 2005,34,步骤1:选择软件开发过程模型(2/2),注意:组织应该努力选择满足组织要求、尽可能少的软件开发过程模型 软件开发模型数目不宜过多 所选择的软件开发模型不宜过于复杂 最好选择哪些组织成员熟悉的、有使用经验的软件开发过程模型,Copyright Xinjun Mao 2005,35,步骤2:确定和描述活动,确定活动 定义和描述活动,Copyrigh

15、t Xinjun Mao 2005,36,确定活动(1/2),任务 明确软件开发过程应包含哪些活动 注意 软件开发活动包括技术活动和管理活动 技术活动:需求分析、撰写软件使用资料 管理活动:制定软件开发计划,Copyright Xinjun Mao 2005,37,确定活动(2/2),确定活动的原则 基于所选择的软件开发过程模型确定活动 一般的,软件开发过程模型仅仅确定软件开发的技术活动 所确定的活动对于软件项目的开发是必要的 活动尽可能是全面的,适合于各种可能的软件项目,可供它们进行剪裁,Copyright Xinjun Mao 2005,38,例子:确定软件开发活动,技术活动 需求分析 概

16、要设计 详细设计 编码 集成测试 撰写出版物 用户确认测试 软件发布,管理活动 制定初步软件开发计划 制定详细软件开发计划 制定软件配置管理计划 制定软件质量保证计划 项目跟踪和监督 配置管理 用户培训,Copyright Xinjun Mao 2005,39,定义和描述活动,对所确定的活动给出定义和描述 名称 任务 输入 输出 实施,Copyright Xinjun Mao 2005,40,例子:需求分析活动描述(1/2),名称 需求分析 任务 进行需求调查,定义软件的用户需求 撰写软件需求规格说明书(SRS) 根据SRS,制定软件确认测试计划 对SRS和软件确认测试计划进行评审,产生经批准

17、的SRS和软件确认测试计划 输入 用户的初步需求描述,Copyright Xinjun Mao 2005,41,例子:需求分析活动描述(2/2),实施 根据用户需求描述,分析和定义软件的用户需求,按照软件需求规格说明书编写指南撰写软件需求规格说明书 对SRS进行评审,评审的原则:正确性、完整性、一致性、简洁性、规范化 根据软件的用户需求,制定软件确认测试计划,按照软件确认测试计划编写指南撰写软件确认测试计划文档 输出 经批准的SRS, 经批准的软件确认测试计划,Copyright Xinjun Mao 2005,42,步骤3:确定和描述活动间关系(1/3),活动之间主要有哪些关系? 执行时序关

18、系 时间先后关系 例如,集成测试完成之后,才能进行确认测试 逻辑依赖关系 一个活动的执行需要其它活动实施产生的结果 逻辑依赖关系蕴涵了执行时序关系 例如,软件概要设计和需求分析之间,Copyright Xinjun Mao 2005,43,步骤3:确定和描述活动间关系(2/3),如何描述活动之间的关系 入口条件 例如,软件设计(逻辑依赖),有一个已完成、被文档化和批准的软件需求规格说明书 例如,确认测试(执行时序),集成测试已经完成 出口条件 例如,软件需求分析(逻辑依赖),产生一个已完成、被文档化和批准的软件需求规格说明书,Copyright Xinjun Mao 2005,44,步骤3:确

19、定和描述活动间关系(3/3),直观的图形描述 节点表示活动 有向边表示活动之间的关系 执行时序逻辑关系,Copyright Xinjun Mao 2005,45,例子:描述活动间的关系,需求分析、概要设计和详细设计 入口条件(概要设计) 经过批准的软件需求规格说明书 出口条件(概要设计) 软件概要设计规格说明书 数据库设计规格说明书 软件接口设计规格说明书,Copyright Xinjun Mao 2005,46,步骤4:文档化软件开发过程(1/5),什么是文档化? 书面、文字化描述和记录,并形成相应的、规范化的文档 为什么需要文档化软件开发过程? 便于记录和保存 便于获取、理解和交流 便于剪

20、裁 便于改进,Copyright Xinjun Mao 2005,47,步骤4:文档化软件开发过程(2/5),如何文档化软件开发过程? 首先 给出软件开发过程的直观、完整视图(图形化) 其次 详细描述活动 第三 详细描述活动间关系,Copyright Xinjun Mao 2005,48,步骤4:文档化软件开发过程(3/5),首先: 如何提供软件开发过程的完整视图? 基于图形方式直观展示整个软件开发过程中的活动以及它们之间的关系 给出软件开发过程的整体、直观描述 便于从整体上理解和把握软件开发过程 注意不要作时间约束和限制,Copyright Xinjun Mao 2005,49,例子:软件开

21、发过程整体视图,Copyright Xinjun Mao 2005,50,步骤4:文档化软件开发过程(4/5),其次,描述和文档化软件开发活动 名称 任务 输入 实施(如何实施,采用什么方法,具体过程和步骤?) 输出 说明,Copyright Xinjun Mao 2005,51,例子:需求分析活动描述(1/2),名称 需求分析 任务 进行需求调查,定义软件的用户需求 撰写软件需求规格说明书(SRS) 根据SRS,制定软件确认测试计划 对SRS和软件确认测试计划进行评审,产生经批准的SRS和软件确认测试计划 输入 用户的初步需求描述,Copyright Xinjun Mao 2005,52,例

22、子:需求分析活动描述(2/2),实施 根据用户需求描述,分析和定义软件的用户需求,按照软件需求规格说明书编写指南撰写软件需求规格说明书 根据软件的用户需求,制定软件确认测试计划,按照软件确认测试计划编写指南撰写软件确认测试计划文档 对SRS和软件确认测试计划进行评审,评审的原则:正确性、完整性、一致性、简洁性、规范化 输出 经批准的SRS, 经批准的软件确认测试计划 说明 一般的,用户要参与需求评审 需求评审通过后,只能通过指定的变更控制过程来修改,Copyright Xinjun Mao 2005,53,步骤4:文档化软件开发过程(5/5),最后,描述活动间关系 文字描述:输入和输出,说明

23、图形化描述,连接活动的有向边,Copyright Xinjun Mao 2005,54,步骤5:文档化如何剪裁过程(1/4),为什么需要定义剪裁过程 组织内过程定义的一般性和普遍性 具体项目的特殊性 为了更好满足具体项目的特殊要求 如何文档化过程剪裁 Step1:定义剪裁软件开发过程的规则,以更好地适应具体软件项目的特殊要求 Step2:定义对剪裁过程进行评审的要求 Step3:要上述规则和要求写成规范化的文档,Copyright Xinjun Mao 2005,55,步骤5:文档化如何剪裁过程(2/4),Step1:定义过程剪裁规则 哪些活动可以被删除,哪些不能 必选,可选的 对可选活动的说

24、明:什么情况下 例子:需求分析是必选的 哪些活动可以被合并,哪些不能 可合并,不可合并的 对活动合并的说明:什么情况下合并,如何合并 例子:对于小规模的软件项目,详细设计和编码合并 编码,Copyright Xinjun Mao 2005,56,步骤5:文档化如何剪裁过程(3/4),Step2: 定义对剪裁后的过程进行审批的要求 谁参与评审过程剪裁评审委员会或者过程管理小组 评审依据 谁批准剪裁,Copyright Xinjun Mao 2005,57,步骤5:文档化如何剪裁过程(4/4),Step3: 文档化过程剪裁的规则和要求 可以作为过程定义的一个部分,或者 单独形成一个独立的过程剪裁文

25、档,Copyright Xinjun Mao 2005,58,过程剪裁注意点,经验1:剪裁软件开发过程的规则和要求必须文档化并且易于理解 经验2:至少需要提供二个显示如何剪裁软件开发过程的完整例子 经验3:记录项目剪裁过程的信息,供以后项目剪裁作借鉴和参考,Copyright Xinjun Mao 2005,59,例子:文档化过程剪裁,剪裁规则 以下活动是不可进行剪裁:需求分析, 对于系统规模较小的项目,允许将概要设计和详细设计二个过程合并 对于软件开发工作量能够预先确定的项目,初步项目计划和详细项目计划可以合并 剪裁评审要求 过程剪裁评审委员会(可以就是过程管理小组)负责对剪裁的过程进行评审

26、,该委员会的组成参考“.文档” 由过程剪裁评审委员会的主席负责审批剪裁过程,Copyright Xinjun Mao 2005,60,步骤6:文档化如何改善过程(1/4),为什么需要改善过程? 过程定义的不完备性和不适应性 组织业务发展的要求 特殊项目提出的要求 实际应用中发现的问题 过程改善的目的 使得组织的过程不断得到优化 使得项目实施的过程得到不断优化,Copyright Xinjun Mao 2005,61,步骤6:文档化如何改善过程(2/4),如何文档化改善过程? Step1: 定义改善过程的规则 Step2: 定义改善后过程评审的要求 Step3: 文档化过程改善的上述规则和要求,

27、Copyright Xinjun Mao 2005,62,步骤6:文档化如何改善过程(3/4),Step1 & Step2 定义过程改善的规则和要求 过程改善请求的提出 提出者:组织或者项目成员 时机:项目实施过程中,项目完成之时,定期/不定期的检查 过程改善请求的类别 变更请求 背离请求,Copyright Xinjun Mao 2005,63,案例1:管理过程改善,软件开发过程管理小组,普通员工,项目经理,变更请求,背离请求,变更或背离请求,负责人,过程定义文档,Copyright Xinjun Mao 2005,64,案例2:对过程变更请求的管理,请求发起者提出书面的变更请求,过程小组评

28、审变更请求,实施变更请求,否决,结束,通过,新的软件过程文档 分发,让组织成员了解变更 必要时培训,提交给过程管理负责人,Copyright Xinjun Mao 2005,65,案例3:对过程背离请求的管理,请求发起者提出书面的背离请求,背离请求提交给过程负责人,过程负责人评审背离请求,过程负责人授权背离,否决,结束,通过,项目负责人审批背离请求,否决,让项目组同意背离,Copyright Xinjun Mao 2005,66,步骤6:文档化如何改善过程(4/4),Step3: 文档化过程改善的规则和要求 可以是过程定义的一个部分,或者 独立的文档,Copyright Xinjun Mao

29、2005,67,步骤7: 过程评审、认可和发布,要对制定的的软件开发过程进行评审,加以认可 是否完备? 是否正确和准确? 是否符合企业的特点? 描述是否简洁、直观? 是否适于剪裁和改进? 组织的管理者公开发布所定义的软件开发过程 强制执行,Copyright Xinjun Mao 2005,68,步骤8: 员工培训,要对组织内相关的员工培训软件开发过程 知道为什么需要过程 知道组织内的过程是什么 知道如何剪裁、变更和调整过程 强调必须根据过程来实施项目,Copyright Xinjun Mao 2005,69,软件开发过程定义注意事项(1/5),经验1组织制定的软件开发过程应该由一个可理解的活

30、动集组成,可以从该活动集中选择合适的子集作为新项目的过程 组织内的软件开发过程应该被定义为一个标准 组织内定义的软件开发过程应该具有一定的通用性和一般性,既可满足组织内新项目的需要,也可满足组织内所经历的非传统项目的需要,Copyright Xinjun Mao 2005,70,软件开发过程定义注意事项(2/5),经验2软件开发过程不应包含一些无效或者无用的任务或者活动,软件开发过程中的任何活动和任务都是为了促进软件项目的开发和管理,确保软件项目在进度、成本的限制范围内,得到满足用户要求的高质量软件产品 软件开发过程不应复杂和教条 软件开发过程不应捆绑一些无意义的规则,如必须采用某种方法和技术

31、,Copyright Xinjun Mao 2005,71,软件开发过程定义注意事项(3/5),经验3软件开发过程应该不断地得到改善和提高 软件开发过程有局限性和问题 需要对软件开发过程经常性地进行检查,发现问题和不足 允许过程的使用者对过程提出改善意见,发表见解,Copyright Xinjun Mao 2005,72,软件开发过程定义注意事项(4/5),经验4借助于其他组织的经验和成果,以及国际化标准来制定软件开发过程 借助于其他组织的经验和成果有助于少走弯路,尽快制定高质量的软件开发过程 借助于国际标准有助于规范化软件开发过程,通过国际标准的认证,如ISO9001, CMM 遵循国际标准

32、是有必要的,应该提倡,它能帮助提升管理水平、形象和竞争力 切忌走过场,Copyright Xinjun Mao 2005,73,软件开发过程定义注意事项(5/5),经验5管理层要负责确保每个新项目完全遵循所批准的软件开发过程 经验6过程组要负责确保不断改善软件开发过程,Copyright Xinjun Mao 2005,74,软件开发过程定义文档,项目组和组织一般要形成一个软件开发过程定义文档 软件开发过程文档的格式,Copyright Xinjun Mao 2005,75,讲授内容,项目案例 什么是软件项目开发过程 为什么需要定义过程 软件开发过程模型 如何定义过程 如何剪裁过程 案例分析

33、小结,Copyright Xinjun Mao 2005,76,如何剪裁过程,剪裁过程的基础和依据 软件开发过程文档 项目的具体要求 如何剪裁过程? 参照过程文档中的剪裁规则,根据项目的具体特点确定剔除一些活动,合并一些活动 剪裁结果应该能够促进具体项目的管理,保证所开发软件产品的质量 剪裁认可,本讲标题:软件开发过程的定义,Copyright Xinjun Mao 2005,77,讲授内容,项目案例 什么是软件项目开发过程 为什么需要定义过程 软件开发过程模型 如何定义过程 如何剪裁过程 案例分析 小结,Copyright Xinjun Mao 2005,78,案例分析,案例假设 采用瀑布软

34、件开发过程模型 案例内容 软件开发过程框架 各个活动的描述 活动之间的关系 说明:该案例不足于用于实际应用 没有考虑组织的具体情况 不具体和详细,Copyright Xinjun Mao 2005,79,步骤1:确定活动,技术活动 需求分析 概要设计 详细设计 编码 集成测试 撰写出版物 用户确认测试 软件发布,管理活动 制定初步软件开发计划 制定详细软件开发计划 制定软件配置管理计划 制定软件质量保证计划 项目跟踪和监督 配置管理 用户培训,Copyright Xinjun Mao 2005,80,步骤2:确定活动之间的关系,逻辑关系依赖 时序关系,Copyright Xinjun Mao

35、2005,81,Copyright Xinjun Mao 2005,82,Copyright Xinjun Mao 2005,83,Copyright Xinjun Mao 2005,84,步骤3:定义和描述活动,需求分析 概要设计 详细设计 编码 集成测试 确认测试 撰写用户文档 用户培训 打包和交付,Copyright Xinjun Mao 2005,85,活动1:需求分析(1/3),任务 进行需求调查,定义软件的用户需求,撰写软件需求规格说明书(SRS) 根据SRS,撰写软件确认测试计划 评审SRS和软件确认测试计划 输入 用户的初步需求描述 输出 软件需求规格说明书 软件确认测试计划,

36、Copyright Xinjun Mao 2005,86,活动1:需求分析和软件定义(2/3),实施 根据用户需求描述,分析和定义软件系统的需求,按照软件需求规格说明书编写指南编写软件需求规格说明书(SRS) 根据SRS,制定软件确认测试计划,按照软件确认测试计划编写指南编写软件确认测试计划文档 对需求分析的结果(软件需求规格说明书和软件确认测试计划)进行评审,Copyright Xinjun Mao 2005,87,活动1:需求分析和软件定义(3/3),说明 用户需求描述了用户对目标软件系统的期望和要求(包括功能、性能和设计约束等),因此,需求分析只需关心要解决的问题,而无需关心这些问题的解

37、决方案 软件确认测试计划应该包含软件需求规格说明书中所定义的所有需求的测试内容,Copyright Xinjun Mao 2005,88,活动2:概要设计(1/3),任务 根据SRS,进行软件的总体结构设计、接口设计和数据设计,撰写软件总体结构设计、接口设计和数据设计规格说明书 根据软件的概要设计,制定软件集成测试计划 输入 软件需求规格说明书SRS 输出 软件总体结构设计规格说明书 软件数据设计规格说明书 软件接口设计规格说明书 软件集成测试计划,Copyright Xinjun Mao 2005,89,活动2:概要设计(2/3),实施 根据SRS来进行软件设计 按照软件总体结构设计规格说明

38、书编写指南编写软件总体结构设计文档 按照软件数据设计规格说明书编写指南编写软件数据设计文档 按照软件接口设计规格说明书编写指南编写软件接口设计文档 按照软件集成测试计划编写指南编写软件集成测试计划文档,Copyright Xinjun Mao 2005,90,活动2:概要设计(3/3),说明 概要设计要给出满足用户需求的软件解决方案,主要是指软件的总体结构、接口设计和数据设计,不涉及具体模块的内部细节,Copyright Xinjun Mao 2005,91,活动3:详细设计(1/3),任务 进行软件的详细设计,撰写软件详细设计规格说明书 根据软件的详细设计,制定软件单元测试计划 输入 软件需

39、求规格说明书SRS 软件总体设计规格说明书 软件接口设计规格说明书 软件数据设计规格说明书,Copyright Xinjun Mao 2005,92,活动3:详细设计(2/3),实施 根据SRS和软件总体结构、接口和数据设计规格说明书,进行软件的详细设计,根据软件详细设计规格说明书编写指南撰写软件详细设计文档 根据每个模块的内部实现细节的设计,以及软件单元测试计划编写指南编写软件单元测试计划文档 输出 软件详细设计规格说明书 软件单元测试计划,Copyright Xinjun Mao 2005,93,活动3:详细设计(3/3),说明 详细设计主要根据软件需求规格说明书,在软件总体结构设计、接口

40、设计和数据设计的基础上,涉及软件解决方案的详细细节,尤其是模块的实现算法和思想,Copyright Xinjun Mao 2005,94,活动4:编码(1/2),任务 编写程序 进行单元测试,撰写单元测试报告 输入 软件总体结构设计规格说明书 软件数据设计规格说明书 软件接口设计规格说明书 软件详细设计规格说明书 单元测试计划,Copyright Xinjun Mao 2005,95,活动4:编码(2/2),实施 根据软件总体结构设计规格说明书、软件数据设计规格说明书、软件接口设计规格说明书、软件详细设计规格说明书进行编码 根据单元测试计划对各个模块进行单元测试 输出 经过单元测试的软件模块源

41、程序 单元测试报告,Copyright Xinjun Mao 2005,96,活动5:集成测试(1/2),任务 集成各个软件模块进行测试 输入 软件模块的程序代码 软件总体结构设计规格说明书 软件数据设计规格说明书 软件接口设计规格说明书 软件集成测试计划,Copyright Xinjun Mao 2005,97,活动5:集成测试(2/2),实施 根据软件总体结构设计规格说明书、软件接口设计规格说明书、软件数据设计规格说明书和软件集成测试计划,逐步组装模块进行软件的集成测试,撰写集成测试报告 输出 可运行的、经过集成测试的目标软件系统 集成测试报告,Copyright Xinjun Mao 2

42、005,98,活动6:确认测试(1/2),任务 根据软件需求规格说明书和软件确认测试计划进行确认测试,撰写确认测试报告 输入 软件需求规格说明书 确认测试计划,Copyright Xinjun Mao 2005,99,活动6:确认测试(2/2),实施 根据软件需求规格说明书和确认测试计划,对软件进行确认测试,撰写确认测试报告 输出 可运行的、经过确认测试的目标软件系统 确认测试报告 说明 确认测试由用户进行测试,Copyright Xinjun Mao 2005,100,活动7:撰写用户文档(1/2),任务 撰写用户文档 输入 软件需求规格说明书 软件总体结构、接口设计和数据设计规格说明书 可

43、运行的目标软件系统,Copyright Xinjun Mao 2005,101,活动7:撰写用户文档(2/2),实施 根据用户软件需求规格说明书,软件总体结构、接口设计和数据设计规格说明书撰写用户文档 用户文档一般包括:用户使用手册,安装手册,软件开发手册等等 输出 用户手册 安装手册 开发指南,Copyright Xinjun Mao 2005,102,活动8:用户培训(1/2),任务 对用户进行培训 输入 软件需求规格说明书 用户使用手册、安装手册、开发手册 可运行的目标软件系统,Copyright Xinjun Mao 2005,103,活动8:用户培训(2/2),实施 根据可运行的目标

44、软件系统、用户使用手册,安装手册,开发手册对用户进行培训 输出 无,Copyright Xinjun Mao 2005,104,活动9:打包交付(1/2),任务 对软件进行打包,并交付用户使用 输入 可执行的目标软件系统 各种要交付的文档和资料,包括电子版和打印版,Copyright Xinjun Mao 2005,105,活动9:打包交付(2/2),实施 制作安装软件 安装并配置目标软件系统 交付安装软件、文档和资料 输出 安装软件 交付给用户的文档和资料,Copyright Xinjun Mao 2005,106,讲授内容,项目案例 什么是软件项目开发过程 为什么需要定义过程 软件开发过程

45、模型 如何定义过程 如何剪裁过程 案例分析 小结,Copyright Xinjun Mao 2005,107,本讲小结,组织和项目组需要良定义的软件开发过程来支持软件开发 软件开发过程定义涉及:活动的确定和描述、活动间关系的确定和描述 软件开发过程包括技术活动和管理活动 为了适应不同项目的具体要求,需要对组织的软件开发过程进行剪裁 组织的软件开发过程是不断改进和进化的,Copyright Xinjun Mao 2005,108,教学目的,理解 什么是软件开发过程? 为什么需要定义软件开发过程? 软件开发一般具有什么样的过程 软件开发过程模型 掌握 如何定义软件开发过程? 如何剪裁过程? 运用 能够根据组织和项目的具体情况,定义和剪裁软件开发过程,Copyright Xinjun Mao 2005,109,Questions & Discussing,Software Project Management,Practice, Practice, and Practice,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报