软件产品质量 新挑战与新对策...

31
SDM 224 SDM 224 软件产品质量 软件产品质量 : : 新挑战与新对策 新挑战与新对策 - - 以高质量竞争 以高质量竞争

Transcript of 软件产品质量 新挑战与新对策...

SDM 224SDM 224

软件产品质量软件产品质量: : 新挑战与新对策新挑战与新对策-- 以高质量竞争以高质量竞争!!

2

主要目的主要目的

1.1. 理解产品质量、理解产品质量、QAQA与测试与测试

2.2. 强调强调直接决定产品成败的关键所在是质量直接决定产品成败的关键所在是质量

==〉〉 高质量才能保持有竞争力!高质量才能保持有竞争力!

分析软件领域新动向对分析软件领域新动向对QAQA的新挑战的新挑战

共同探讨应对策略共同探讨应对策略

号召软件领域支持:号召软件领域支持:

以高质量竞争:人人把关人人负责以高质量竞争:人人把关人人负责 & ATQM& ATQM

3

课程内容安排课程内容安排

1.1. 产品质量、产品质量、QAQA与测试与测试

2.2. 新动向与新挑战新动向与新挑战

3.3. 新对策新对策

4.4. 重点总结重点总结

5.5. 参考信息参考信息

6.6. 问题解答问题解答

4

5

Quiz: Quiz: 谁应对产品质量负责?谁应对产品质量负责?

1.1. QAQA人员人员

2.2. 测试人员测试人员

3.3. 开发人员开发人员

4.4. 项目管理人员项目管理人员

5.5. 公司负责人公司负责人

6.6. All aboveAll above

6

决定产品质量关键因素决定产品质量关键因素““金三角金三角””

人员与素质人员与素质

管理与流程管理与流程

技术与工具技术与工具

7

决定产品质量关键因素决定产品质量关键因素–– 技术与工具技术与工具

编程语言、方法、标准编程语言、方法、标准

编译工具编译工具

Visual C#Visual C#支持的自动化测试支持的自动化测试

QA/QA/测试方法、计划测试方法、计划

功能规范功能规范

编写需求说明书的模版编写需求说明书的模版

缺陷数据库缺陷数据库

质量度量方法质量度量方法

8

决定产品质量关键因素决定产品质量关键因素–– 管理与流程管理与流程

产品开发生命周期产品开发生命周期

里程碑控制的质量监测里程碑控制的质量监测

螺旋式开发模型螺旋式开发模型

缺陷趋势监测和管理缺陷趋势监测和管理

测试版本制作过程控制测试版本制作过程控制

风险分析和管理风险分析和管理

9

决定产品质量关键因素决定产品质量关键因素––人员与素质人员与素质

组织结构组织结构

人员配备人员配备

技术水平技术水平

分析解决能力分析解决能力

工作负担工作负担

工作态度工作态度

10

产品质量关键因素产品质量关键因素金三角的关系金三角的关系

三者缺一不可,相辅相成三者缺一不可,相辅相成

实现产品的高质量必须有正确的管理与流程来实现产品的高质量必须有正确的管理与流程来保证保证

新时代敏捷开发产品质量须借助高效实用的技新时代敏捷开发产品质量须借助高效实用的技术与工具术与工具

高素质人员也需要遵循科学的管理与流程高素质人员也需要遵循科学的管理与流程

高素质人员才可能掌握和开发高效实用的技术高素质人员才可能掌握和开发高效实用的技术与工具与工具

11

QAQA与软件测试与软件测试QA: Quality AssuranceQA: Quality Assurance(质量保证)(质量保证)

SQA: Software Quality AssuranceSQA: Software Quality Assurance(软件质量保证)(软件质量保证)

QC: Quality ControlQC: Quality Control(质量控制)(质量控制)

QM: Quality Management (QM: Quality Management (质量管理质量管理))TQM: TotalTQM: Total QualityQuality ManagementManagement(全面质量管理)(全面质量管理)

软件测试:是根据软件开发各个阶段的规格说明和程序的软件测试:是根据软件开发各个阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期内部结构而精心设计一批测试用例(即输入数据及其预期结果),并利用这些测试用例去执行程序,以发现程序错结果),并利用这些测试用例去执行程序,以发现程序错误的过程。误的过程。

本讲座对产品质量专职负责人员统称本讲座对产品质量专职负责人员统称 ::QAQA

http://www.51testing.com/html/58/66.html

12

软件领域新动向软件领域新动向

1.1. 即时传送的信息时代即时传送的信息时代

2.2. 敏捷软件开发敏捷软件开发

3.3. 中国、印度:软件外包服务中国、印度:软件外包服务

4.4. QA/QC QA/QC 到到 TQMTQM

13

1. 1. 新动向:即时传送新动向:即时传送

14

Reboots and hangsReboots and hangseMaileMail

Internet, Internet, Web pages, Web pages,

FeedsFeeds

Media, Media, entertainmententertainment

Meetings, Meetings, calendar calendar

Phone & Phone & Voice MailVoice Mail

PrivacyPrivacy

DocumentsDocuments

SoftwareSoftware

Patching & Patching & UpdatingUpdating

Malware, Malware, phishing, phishing,

SpamSpam

15

即时传送的信息时代之特点即时传送的信息时代之特点

信息时代:软件领域极大发展的时代信息时代:软件领域极大发展的时代

即时传送即时传送软件是基于在线服务的新一代软件软件是基于在线服务的新一代软件

人们可以人们可以““ANY WHERE/ANY TIME/ANY WAYANY WHERE/ANY TIME/ANY WAY””利利用互联网工作、学习和生活娱乐用互联网工作、学习和生活娱乐

不再受地点时间的限制不再受地点时间的限制

世界信息共享世界信息共享

互联网、互联网、计算机普及、计算机普及、用户用户支持面更广支持面更广

软件种类、使用方式等大大增多软件种类、使用方式等大大增多

掌握计算机技术人越来越多,用户基数日趋增长掌握计算机技术人越来越多,用户基数日趋增长

16

即时传送时代即时传送时代的新挑战的新挑战

互操作性互操作性 ((InteroperabilityInteroperability))程度加深程度加深

产品产品开发周期开发周期变短变短

QQAA可用时间更少,更紧可用时间更少,更紧

对采用新技术的期望更高对采用新技术的期望更高

对产品质量要求更高对产品质量要求更高

产品市场竞争更加激烈产品市场竞争更加激烈

怎样满足即时传送时代软件产品用户的质量要求?

17

2.2.敏捷软件开发敏捷软件开发(Agile Development)(Agile Development)

2020世纪世纪9090年代逐年代逐渐引起广泛关注的新型软件开渐引起广泛关注的新型软件开发发方法方法

它们的具体名称、理念、过程、术语都不尽相它们的具体名称、理念、过程、术语都不尽相同,但是都强调同,但是都强调

程序设计师团队与业务专家之间的紧密协作程序设计师团队与业务专家之间的紧密协作

面对面的沟通(认为比书面的文档更有效)面对面的沟通(认为比书面的文档更有效)

频繁交付新的软件版本频繁交付新的软件版本

紧凑而自我组织型的团队紧凑而自我组织型的团队

能够很好地适应需求变化的代码编写和团队组织能够很好地适应需求变化的代码编写和团队组织

18

敏捷软件开发宣言敏捷软件开发宣言

最重要的部分就是对一些与会者最重要的部分就是对一些与会者(17(17人人))一致同意的一致同意的软件开发价值观的表述:软件开发价值观的表述:

人和交互人和交互 重于重于 过程和工具。过程和工具。

可以工作的软件可以工作的软件 重于重于 求全责备的文档。求全责备的文档。

客户协作客户协作 重于重于 合同谈判。合同谈判。

随时应对变化随时应对变化 重于重于 循规蹈矩。循规蹈矩。

注:其中位于右边的内容虽然也有其价值,但是注:其中位于右边的内容虽然也有其价值,但是左边的内容最为重要。左边的内容最为重要。

19

敏捷软件开发新挑战敏捷软件开发新挑战

越来越多的企业希望采用,但没有把握越来越多的企业希望采用,但没有把握

习惯于传统的瀑布式产品开发流程已不满足快速发展需习惯于传统的瀑布式产品开发流程已不满足快速发展需要,但大规模改动不现实要,但大规模改动不现实

缺少敏捷软件开发专家和人才缺少敏捷软件开发专家和人才

技术人员需要观念的转变和方法培训技术人员需要观念的转变和方法培训

缺乏相应的质量控制方法缺乏相应的质量控制方法

需要经常的和及时的质量度量、测试、决策需要经常的和及时的质量度量、测试、决策

传统的QA方法程序怎样适应敏捷软件开发?

20

3.3.中国、印度:软件外包服务新挑战中国、印度:软件外包服务新挑战

开发人员和开发人员和QAQA在不同的工作地点在不同的工作地点

语言、文化、交流沟通的差异语言、文化、交流沟通的差异

涉及公司内部、外包和境外和测试很难管涉及公司内部、外包和境外和测试很难管理和控制质量理和控制质量

缺乏对产品设计文档的直接了解缺乏对产品设计文档的直接了解

缺乏对产品开发过程的介入和了解缺乏对产品开发过程的介入和了解

缺乏质量管理控制技术专家缺乏质量管理控制技术专家

怎样保证软件外包项目质量?

21

评审阶段评审阶段 生产阶段生产阶段设计阶段设计阶段 质量检验质量检验质量检验

4 QA/QC QA/QC 到到 TQMTQM

初期:初期:质量检验:质量检验:

中期:中期:质量控制质量控制//质量保证:质量保证:QC QC 和和 QAQA

现在:全面现在:全面 质量管理:质量管理:Total Quality ManagementTotal Quality Management

22

TotalTotal QualityQuality ManagementManagement(全面质量管理)(全面质量管理)

19611961年费根堡姆提出全面质量管理理论(年费根堡姆提出全面质量管理理论(TQMTQM),将质量控制扩展),将质量控制扩展到产品寿命循环的全过程,强调全体员工都参与质量控制。到产品寿命循环的全过程,强调全体员工都参与质量控制。

TQM: TQM: 是一个组织以质量为中心,以全员参与为基础,目的在于通是一个组织以质量为中心,以全员参与为基础,目的在于通过让顾客满意和本组织所有成员及社会受益而达到长期成功的管理过让顾客满意和本组织所有成员及社会受益而达到长期成功的管理途径。途径。

全面质量管理即为全员、全过程、全方位的质量管理,力求全面提全面质量管理即为全员、全过程、全方位的质量管理,力求全面提高经济效益。高经济效益。

包括以下基本特点包括以下基本特点::((11)) 全员参加全员参加((22)) 全过程全过程((33)) 全面运用一切有效方法全面运用一切有效方法

((44)) 全面控制质量因素全面控制质量因素

全面质量管理可以归纳为两大基本原则全面质量管理可以归纳为两大基本原则::

以满足顾客需求为导向,不断改善,最终达到顾客的全面满足以满足顾客需求为导向,不断改善,最终达到顾客的全面满足

以全员参与为基础,进行全过程的质量控制。以全员参与为基础,进行全过程的质量控制。

http://pm.aura.cn/newsarticle/projecthttp://pm.aura.cn/newsarticle/project--app/174940608_4.htmlapp/174940608_4.html

23

QA/QC QA/QC 到到 TQMTQM 的新挑战的新挑战

用户对软件产品的质量要求更高用户对软件产品的质量要求更高

功能功能复杂程度复杂程度加加高高

对对QAQA人员人员需求量加大需求量加大

QAQA人员质量控制的时间更短人员质量控制的时间更短

安全性私密性风险加大安全性私密性风险加大

防范病毒、黑客更难防范病毒、黑客更难

对对QAQA人员的技术和应变能力要求人员的技术和应变能力要求更高更高

应有怎样的应对策略?

24

软件产品质量软件产品质量/QA/QA:面对的新挑战:面对的新挑战

1.1. 怎样满足即时传送时代软件产怎样满足即时传送时代软件产品用户的质量要求?品用户的质量要求?

2.2. 传统的传统的QAQA方法程序怎样适应方法程序怎样适应敏捷软件开发?敏捷软件开发?

3.3. 怎样保证软件外包项目质量?怎样保证软件外包项目质量?

4.4. QA/QC QA/QC 到到 TQM TQM 应有怎样的应应有怎样的应对策略?对策略?

25

新时代新时代QAQA对策对策::

4.4.找出问题根源并加以修正:找出问题根源并加以修正: 预防预防

11..产品团队和企业文化:产品团队和企业文化: 风气风气

3.3.专用时间和资源分析和实施:专用时间和资源分析和实施: 支持支持

5.5.直接授权给每个团队成员直接授权给每个团队成员: : 信任信任

2.2.软件产品各个过程中强化:软件产品各个过程中强化: 动力动力

6.6.分享和推广最佳实践:分享和推广最佳实践: 赶超赶超

7.7.调整生产过程与时间:调整生产过程与时间: 敏捷敏捷

26

重点总结重点总结

1.1. 要在当今竞争激烈的软件领域生存、有竞争力和要在当今竞争激烈的软件领域生存、有竞争力和成功:成功:以高质量竞争以高质量竞争

2.2. 新时代软件行业的发展,特别是敏捷开发对新时代软件行业的发展,特别是敏捷开发对QAQA工工作带来的很多新的挑战作带来的很多新的挑战::敏捷敏捷+TQM+TQM

3.3. 产品质量保证不能再只依赖于专职的产品质量保证不能再只依赖于专职的QAQA人员:人员:人人人有责人有责

4.4. 产品质量保证措施要实施在产品质量保证措施要实施在产品质量关键因素产品质量关键因素金金三角的各个环节。三者缺一不可,三角的各个环节。三者缺一不可,相辅相成相辅相成

5.5. 没有统一通用的没有统一通用的QAQA方法:发掘和推广最佳实践以方法:发掘和推广最佳实践以及不断的改进的提高是成功的关键:及不断的改进的提高是成功的关键:持续改进持续改进

27

以高质量竞争:人人把关人人负责以高质量竞争:人人把关人人负责 !!

28

新时代以高质量竞争:新时代以高质量竞争:

29

与本次主题有关的课程与本次主题有关的课程

SDM 120SDM 120::栾跃栾跃: : 软件开发项目管理中运用敏捷模软件开发项目管理中运用敏捷模式的实践指南式的实践指南http://www.microsoft.com/china/technet/TechEd/http://www.microsoft.com/china/technet/TechEd/content/sdm1.asp#01content/sdm1.asp#01SDM 223:SDM 223: 张奭张奭 (Kelly Zhang): (Kelly Zhang): 微软开发国际微软开发国际版产品的实践研究版产品的实践研究http://www.microsoft.com/china/technet/TechEd/http://www.microsoft.com/china/technet/TechEd/content/sdm1.asp#05content/sdm1.asp#05

30

思考题:思考题:

你认为你所在公司或团队在质量管理方面做得如何?你认为你所在公司或团队在质量管理方面做得如何?

应该继续坚持做的有哪些?为什么?应该继续坚持做的有哪些?为什么?

应该改进的有哪些?为什么?应该改进的有哪些?为什么?

问题解答问题解答

[email protected]@microsoft.com

31