软件研发流程PPT课件
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 概要设计 详细设计 测试计划 测试方案 • 测试用例 缺陷跟踪单 测试报告
第27页/共30页
四,软件的生命周期
第28页/共30页
软件生命周期
需求 设计 编码 测试 维护 升级 废弃
第29页/共30页
感谢您的观看!
第30页/共30页
第3页/共30页
什么是软件产品
软件产品定义:
计算机程序、程序所用的 数据以及有关文档资料的 集合。
第4页/共30页
软件产品的内容:
二,软件项目人员
第5页/共30页
软件项目成员
现在软件开发公 司有什么角色
项目团队里的职 责是什么
第6页/共30页
项目经理驱动整个项目的运转,负 Nhomakorabea责制定计划,安排人力, 管理进度,协调团队,进 行重大决策。
把测试作为编码之后的最后一个活动,需求分析等前期产生 的错误直到后期的验收测试才能发现,忽略了测试的对象不应 该仅仅包括程序,没有明确指出对需求、设计的测试。
第18页/共30页
W模型– V模型的升级版
第19页/共30页
优点
W模型
增加开发阶段的同步测试形成W模型;强调了测试计划等工作的先行和 对系统需求和系统设计的测试;测试与开发同步进行,有利用尽早的发 现问题;
软件研发流程课程大纲
• 一, 软件产品 • 二,软件项目成员 • 三,软件研发流程 • 四,软件生命周期
第1页/共30页
一,软件产品
第2页/共30页
大多数人认为,软件产品仅仅是从互 联网上下载或者从光盘上安装到计算 机上的程序。
实际上,许多“藏在背后”的东西通 常被遗忘或忽视。作为软件测试人员, 要记得所有的这些都是可能含有缺陷 的,都是我们要测试的对象。
测试工程师 负责找出软件产品存在的 问题并报告。
软件项目成员
架构师 / 系统工程师
技术专家,经验丰富,负 责整个系统的体系架构的 设计以及关键模块的设计。
程序员 / 开发人员
设计、 编写软件,并修复 软件中的缺陷。
美术工程师 完成软件设计师安排的功
能界面设计
第7页/共30页
产品经理(可由市场人员 兼任)
第14页/共30页
瀑布模型
A
• 1970年温斯顿·罗伊斯(Winston Royce)提出了著名 的“瀑布模型”,直到80年代早期,它一直是唯一被 广泛采用的软件开发模型。现在它仍然是软件工程中应 用得非常广泛的过程模型。
B
瀑布模型是一种线形的、顺序的软件开发模型
第15页/共30页
瀑布模型
优点
1)为项目提供了按阶段划分的 检查点。 2)当前一阶段完成后,只需要 去关注后续阶段。 3)它提供了一个模板,这个模 板使得分析、设计、编码、测试 和支持的方法可以在该模板下有 一个共同的指导。
第21页/共30页
螺旋模型
优点 1)设计上的灵活性,可以在项目的各个阶段进行变更。 2)以小的分段来构建大型系统,使成本计算变得简单容易。 3)客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性。 4)随着项目推进,客户始终掌握项目的最新信息 , 从而他或她能够和管理层有效地 交互。 5)客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品。 缺点 很难让用户确信这种演化方法的结果是可以控制的。建设周期长,而软件技术发展 比较快,所以经常出现软件开发完毕后,和当前的技术水平有了较大的差距,无法 满足当前用户需求。
对所负责的产品进行策划 和管理
QA——质量监管人员
软件项目成员
讨论:QA与QC的区别?
第8页/共30页
QA
QA与QC的区别?
QA:软件质量保证 QC: 软件质量控制(即软件测试) QA是保证软件研发过程的质量 QC是保证软件最终产物的质量
第9页/共30页
QC
三,软件开发流程
第10页/共30页
软件开发流程
V模型— 瀑布模型的变型
第17页/共30页
V模型
优点
V模型将瀑布模型中的测试部分做了细化,主要反映测试活动与分析和设计的关 系;
强调了在整个软件项目开发中需要经历的若干个测试级别,并与每一个开 发级别对应;将开发阶段清楚的表现出来,便于控制开发的过程。当所有阶段 都结束时,软件开发就结束了。
缺点
1
软件开发过程是什么
软件开发过程常见的几种
2
模型
3
软件开发过程模型的目的
第11页/共30页
• 软件开发有各种不同的方法,没有所谓最好的模 式。
第12页/共30页
软件开发最常见的模型
A
B
C
D
E
第13页/共30页
开发过程常见模型--瀑布模型
该阶段完成后 生成需求说明
书
设计说 明书
特点: 上一阶段的变 换结果是下一 阶段的变换的 输入,相邻两个 阶段具有因果关 系,紧密相联。
问题:开发初期很难确定用户需求规格 解决:用户与开发者之间的鸿沟
以原型(软件产品的样品)为共同语言,实现用户与开发者双向沟 通。
第24页/共30页
软件研发流程
第25页/共30页
软件研发流程
软件计划
需求分析
软件设计
软件实现
软件测试
运行和维护
。
第26页/共30页
软件产品中的过程文件
• 客户需求 户品需求 需求规格 项目计划 版本 计划 技术造型报告 竞争对手调研报告
精选ppt25原型模型快速成型模型建造修改建造修改原型用户测试运行原用户测试运行原听取用听取用户意见原型范型精选ppt26分析定义分析定义系统需求系统需求生成生成原型原型系统系统设计设计程序程序设计设计编码编码测试测试行行和维护和维护原型化原型化含原型化的含原型化的软件生存期软件生存期精选ppt27精选ppt28chapter需求设计废弃维护编码测试升级精选ppt29软件的生命周期
第16页/共30页
缺点
1)各个阶段的划分完全固定,阶段 之间产生大量的文档,极大地增加了 工作量。 2)由于开发模型是线性的,用户只 有等到整个过程的末期才能见到开发 成果,从而增加了开发风险。 3)通过过多的强制完成日期和里程 碑来跟踪各个项目阶段。 4)瀑布模型的突出缺点是不适应用 户需求的变化。
螺旋模型的项目适用:
对于新近开发,需求不明确的情况下,适合用螺旋模型进行
开发,便于风险控制和需求变更。
第22页/共30页
原型模型(快速成型模型)
• 原型开发指的是建立一个系统的早期版本的演习
(practice),它不必反映最终产品的所有性能,而只要反
映感兴趣的一些方面。
第23页/共30页
原型作用
缺点
仍把开发活动看成是从需求开始到编码结束的串行活 动,只有上一阶段完成后,才可以开始下一阶段的活 动,不能支持迭代。
第20页/共30页
螺旋模型
螺旋模型,尤其重视风险分析阶段,特别适用于庞大并且复杂,非常高风险的项目。通常螺 旋模型由四个阶段组成:制定计划、风险分析、实施工程和客户评估。螺旋模型中,发布的 第一个模型甚至可能是没有任何产出的,可能仅仅是纸上谈兵的一个目标,但是随着一次次 的交付,每一个版本都会朝着固定的目标迈进,最终得到一个更加完善的版本。
第27页/共30页
四,软件的生命周期
第28页/共30页
软件生命周期
需求 设计 编码 测试 维护 升级 废弃
第29页/共30页
感谢您的观看!
第30页/共30页
第3页/共30页
什么是软件产品
软件产品定义:
计算机程序、程序所用的 数据以及有关文档资料的 集合。
第4页/共30页
软件产品的内容:
二,软件项目人员
第5页/共30页
软件项目成员
现在软件开发公 司有什么角色
项目团队里的职 责是什么
第6页/共30页
项目经理驱动整个项目的运转,负 Nhomakorabea责制定计划,安排人力, 管理进度,协调团队,进 行重大决策。
把测试作为编码之后的最后一个活动,需求分析等前期产生 的错误直到后期的验收测试才能发现,忽略了测试的对象不应 该仅仅包括程序,没有明确指出对需求、设计的测试。
第18页/共30页
W模型– V模型的升级版
第19页/共30页
优点
W模型
增加开发阶段的同步测试形成W模型;强调了测试计划等工作的先行和 对系统需求和系统设计的测试;测试与开发同步进行,有利用尽早的发 现问题;
软件研发流程课程大纲
• 一, 软件产品 • 二,软件项目成员 • 三,软件研发流程 • 四,软件生命周期
第1页/共30页
一,软件产品
第2页/共30页
大多数人认为,软件产品仅仅是从互 联网上下载或者从光盘上安装到计算 机上的程序。
实际上,许多“藏在背后”的东西通 常被遗忘或忽视。作为软件测试人员, 要记得所有的这些都是可能含有缺陷 的,都是我们要测试的对象。
测试工程师 负责找出软件产品存在的 问题并报告。
软件项目成员
架构师 / 系统工程师
技术专家,经验丰富,负 责整个系统的体系架构的 设计以及关键模块的设计。
程序员 / 开发人员
设计、 编写软件,并修复 软件中的缺陷。
美术工程师 完成软件设计师安排的功
能界面设计
第7页/共30页
产品经理(可由市场人员 兼任)
第14页/共30页
瀑布模型
A
• 1970年温斯顿·罗伊斯(Winston Royce)提出了著名 的“瀑布模型”,直到80年代早期,它一直是唯一被 广泛采用的软件开发模型。现在它仍然是软件工程中应 用得非常广泛的过程模型。
B
瀑布模型是一种线形的、顺序的软件开发模型
第15页/共30页
瀑布模型
优点
1)为项目提供了按阶段划分的 检查点。 2)当前一阶段完成后,只需要 去关注后续阶段。 3)它提供了一个模板,这个模 板使得分析、设计、编码、测试 和支持的方法可以在该模板下有 一个共同的指导。
第21页/共30页
螺旋模型
优点 1)设计上的灵活性,可以在项目的各个阶段进行变更。 2)以小的分段来构建大型系统,使成本计算变得简单容易。 3)客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性。 4)随着项目推进,客户始终掌握项目的最新信息 , 从而他或她能够和管理层有效地 交互。 5)客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品。 缺点 很难让用户确信这种演化方法的结果是可以控制的。建设周期长,而软件技术发展 比较快,所以经常出现软件开发完毕后,和当前的技术水平有了较大的差距,无法 满足当前用户需求。
对所负责的产品进行策划 和管理
QA——质量监管人员
软件项目成员
讨论:QA与QC的区别?
第8页/共30页
QA
QA与QC的区别?
QA:软件质量保证 QC: 软件质量控制(即软件测试) QA是保证软件研发过程的质量 QC是保证软件最终产物的质量
第9页/共30页
QC
三,软件开发流程
第10页/共30页
软件开发流程
V模型— 瀑布模型的变型
第17页/共30页
V模型
优点
V模型将瀑布模型中的测试部分做了细化,主要反映测试活动与分析和设计的关 系;
强调了在整个软件项目开发中需要经历的若干个测试级别,并与每一个开 发级别对应;将开发阶段清楚的表现出来,便于控制开发的过程。当所有阶段 都结束时,软件开发就结束了。
缺点
1
软件开发过程是什么
软件开发过程常见的几种
2
模型
3
软件开发过程模型的目的
第11页/共30页
• 软件开发有各种不同的方法,没有所谓最好的模 式。
第12页/共30页
软件开发最常见的模型
A
B
C
D
E
第13页/共30页
开发过程常见模型--瀑布模型
该阶段完成后 生成需求说明
书
设计说 明书
特点: 上一阶段的变 换结果是下一 阶段的变换的 输入,相邻两个 阶段具有因果关 系,紧密相联。
问题:开发初期很难确定用户需求规格 解决:用户与开发者之间的鸿沟
以原型(软件产品的样品)为共同语言,实现用户与开发者双向沟 通。
第24页/共30页
软件研发流程
第25页/共30页
软件研发流程
软件计划
需求分析
软件设计
软件实现
软件测试
运行和维护
。
第26页/共30页
软件产品中的过程文件
• 客户需求 户品需求 需求规格 项目计划 版本 计划 技术造型报告 竞争对手调研报告
精选ppt25原型模型快速成型模型建造修改建造修改原型用户测试运行原用户测试运行原听取用听取用户意见原型范型精选ppt26分析定义分析定义系统需求系统需求生成生成原型原型系统系统设计设计程序程序设计设计编码编码测试测试行行和维护和维护原型化原型化含原型化的含原型化的软件生存期软件生存期精选ppt27精选ppt28chapter需求设计废弃维护编码测试升级精选ppt29软件的生命周期
第16页/共30页
缺点
1)各个阶段的划分完全固定,阶段 之间产生大量的文档,极大地增加了 工作量。 2)由于开发模型是线性的,用户只 有等到整个过程的末期才能见到开发 成果,从而增加了开发风险。 3)通过过多的强制完成日期和里程 碑来跟踪各个项目阶段。 4)瀑布模型的突出缺点是不适应用 户需求的变化。
螺旋模型的项目适用:
对于新近开发,需求不明确的情况下,适合用螺旋模型进行
开发,便于风险控制和需求变更。
第22页/共30页
原型模型(快速成型模型)
• 原型开发指的是建立一个系统的早期版本的演习
(practice),它不必反映最终产品的所有性能,而只要反
映感兴趣的一些方面。
第23页/共30页
原型作用
缺点
仍把开发活动看成是从需求开始到编码结束的串行活 动,只有上一阶段完成后,才可以开始下一阶段的活 动,不能支持迭代。
第20页/共30页
螺旋模型
螺旋模型,尤其重视风险分析阶段,特别适用于庞大并且复杂,非常高风险的项目。通常螺 旋模型由四个阶段组成:制定计划、风险分析、实施工程和客户评估。螺旋模型中,发布的 第一个模型甚至可能是没有任何产出的,可能仅仅是纸上谈兵的一个目标,但是随着一次次 的交付,每一个版本都会朝着固定的目标迈进,最终得到一个更加完善的版本。