质量FAQ
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
质量FAQ
1.什么是质量管理?
答:质量管理:关注项目全流程的质量,针对项目特点,在贯彻执行研发流程和规范的基础上,采取合适的质量措施,确保项目开发质量目标的达成。
2.什么是质量成本?
答:因质量问题而导致的损失,称为失败成本;为识别问题或检验等手段而增加的成本,称为检验鉴定成本;为预防质量问题产生的活动而增加的成本,称为预防成本。
后两者的作用是减少前者,三者之和就是质量成本的概念。
3.质量是靠测试出来的吗?
答:测试有助于提高软件的质量,但是提高软件的质量不能依赖于测试。
测试与质量的关系很象在考试中“检查”与“成绩”的关系。
学习好的学生,在考试时通过认真检查能减少因疏忽而造成的答题错误,从而“提高”了考试成绩(取得他本来就该得的好成绩)。
而学习差的学生,他原本就不会做题目,无论检查多么细心,也不能提高成绩。
所以说,软件的高质量是设计出来的,而不是靠测试修补出来的。
4.什么是风险?
答:风险是一种未确定的事件或状况,一旦发生,会对至少一个项目目标如进度,成本,范围,质量目标产生积极或消极的影响。
例如:风险起因之一可能是分配给项目的设计人员有限,风险事件是分配的设计人员不足,无法完成任务.这不种确定事件一旦发生会项目的进度,质量等产生影响.
风险状况则可能包括项目环境或组织管理环境中可能促成项目风险的各个方面,例如,项目管理方式欠佳,缺乏整合的管理系统,并行开展多个项目或者过分依赖无法控制的外单位参与者。
5.问题与风险的区别是什么?
答:当项目中有可能导致项目产生误差的因素,在前期被识别出来称其为风险。
由于前期的
忽略或规避的措施不够,此因素已经导致项目产生了误差,转变为现实,被称为问题。
所以
为了降低项目的成本,尽量前期采取措施规避风险,后期才是解决问题。
6.需求稳定度对软件质量有什么影响?
答:需求是项目的源头,需求的变化会直接影响产品规模、质量、项目成本和项目进度的变化,所以对需求变更要加强分析。
理应根据当前所处的阶段和需求变更影响程度进行分析,对质量。
人力。
进度三个方面根据其优先级别折衷考虑,以求达到最优。
7.既然需求分析很困难,不管三七二十一先把软件做了再说,
反正软件是灵活的,随时可以修改?
答:对需求把握得越准确,软件的修修补补就越少。
有些需求在一开始时很难确定,在开发
过程中要不断地加以改正。
软件修改越早代价越少,修改越晚代价越大,就跟治病一样道理。
所以,需求分析很重要,一定要在前期需求分析透彻,只有这样我们后面的编码或者方案用例设
计才好做。
8.软件质量模型有哪些?
答:软件质量模型的六大特性27个子特性
1、功能性:
a). 适合性:提供了相应的功能
b). 准确性:正确(用户需要的)
c). 互操作性:产品与产品之间交互数据的能力
d). 保密安全性:允许经过授权的用户和系统能够正常的访问相应的数据和信息,禁止未授
权的用户访问
e). 功能性的依从性:国际/国家/行业/企业标准规范一致性
2、可靠性:产品在规定的条件下,在规定的时间内完成规定功能的能力
a). 成熟性:防止内部错误导致软件失效的能力
b). 容错性:软件出现故障,自我处理能力
c). 易恢复性:失效情况下的恢复能力
d). 可靠性的依从性
3、易用性:在指定使用条件下,产品被理解、学习、使用和吸引用户的能力
a). 易理解性:
b). 易学性:
c). 易操作性:
d). 吸引性:
e). 易用性的依从性:
4、效率性:在规定台条件下,相对于所用资源的数量,软件产品可提供适当性能的能力
a). 时间特性:平均事务响应时间,吞吐率,TPS(每秒事务数)
b). 资源利用性:CPU 内存磁盘IO 网络带宽队列共享内存
c). 效率依从性:
5、软件维护性:"四规",在规定条件下,规定的时间内,使用规定的工具或方法修复规定
功能的能力
a). 易分析性:分析定位问题的难易程度
b). 易改变性:软件产品使指定的修改可以被实现的能力
c). 稳定性:防止意外修改导致程序失效
d). 易测试性:使已修改软件能被确认的能力
e). 维护性的依从性
6、软件可移植性:从一种环境迁移到另一种环境的能力
a). 适应性:适应不同平台
b). 易安装性:被安装的能力
c). 共存性
d). 易替换性
e). 可移植性的依从性
9.什么是CMM?
答:CMM为企业的软件过程能力提供了一个阶梯式的进化框架,阶梯共有五级。
第一级只是一个起点,任何准备按CMM体系进化的企业都自然处于这个起点上,并通过它向第二级迈进。
除第一级外,每一级都设定了一组目标,如果达到了这组目标,则表明达到了这个成熟级别,可以向下一级别迈进。
第1级、初始级:
初始级的软件过程是未加定义的随意过程,项目的执行是随意甚至是混乱的。
也许有些企业制定了一些软件工程规范,但若这些规范未能覆盖基本的关键过程要求,且执行没有政策、资源等方面的保证时,那么它仍然被视为初始级。
第2级、重复级:
根据多年的经验和教训,人们总结出软件开发的首要问题不是技术问题而是管理问题。
因此,第二级的焦点集中在软件管理过程上。
一个可管理的过程则是一个可重复的过程,可重复的过程才能逐渐改进和成熟。
可重复级的管理过程包括了需求管理、项目管理、质量管理、配置管理和子合同管理五个方面;其中项目管理过程又分为计划过程和跟踪与监控过程。
通过实施这些过程,从管理角度可以看到一个按计划执行的且阶段可控的软件开发过程。
第3级、定义级:
在可重复级定义了管理的基本过程,而没有定义执行的步骤标准。
在第三级则要求制定企业范围的工程化标准,并将这些标准集成到企业软件开发标准过程中去。
所有开发的项目需根据这个标准过程,裁剪出与项目适宜的过程,并且按照过程执行。
过程的裁剪不是随意的,在使用前必须经过企业有关人员的批准。
第4级、管理级:
第四级的管理是量化的管理。
所有过程需建立相应的度量方式,所有产品的质量(包括工作产品和提交给用户的最终产品)需要有明确的度量指标。
这些度量应是详尽的,且可用于理解和控制软件过程和产品。
量化控制将使软件开发真正成为一种工业生产活动。
第5级、优化级:
优化级的目标是达到一个持续改善的境界。
所谓持续改善是指可以根据过程执行的反馈信息来改善下一步的执行过程,即优化执行步骤。
如果企业达到了第五级,就表明该企业能够根据实际的项目性质、技术等因素,不断调整软件生产过程以求达到最佳。
10.为什么要进行根因分析?根因分析的思路是什么?
答:根因分析是为了分析导致问题的最本质、最根本原因,防止问题重犯,提高客户满意度。
根因分析总体思路:先从技术根因开始,在技术根因的基础上再分析管理根因。
其中技术根因一般指支撑产品设计、开发、验证的基本方法,PM可控。
而管理根因一般指人、资源协作、流程的基本方法,主管可控。
技术根因分析基本思路:问题→直接原因→引入点/控制点→技术根因;管理根因分析基本思路:问题(技术根因已经明确)→流程,人因,执行→管理根因。
注意:
1.措施的制定需要符合5W1H原则。
2.管理根因的分析一定要有管理者参与,否则很难决策和改进;针对管理根因改进措施的制订要有管理者参与,同时保证流程和制度阶段稳定性。
11.哪些问题值得做根因分析?(回溯)
答:
1、产品关键质量属性(例如:验收BUG超标,客户满意度不达标);
2、开发前端的问题(例如:XX项目规格质量比较差,总是影响项目的质量);
3、发生频率比较大的问题(例如:XX项目总是版本被打回,XX项目组新员工连续3
个月离职率偏高);
4、重要度高的问题(例如:XX项目升级失败,到时移动公司的投诉,合作公司领导
专程去移动公司赔礼道歉)
总结:跟因分析的入口:前、频、质、重
12.进行代码飞检有什么样的目的?
答:
1、通过抽检审计的方式,检查评估产品域代码符合编程规范要求的程度
2、根据飞检结果进行根因分析和缺陷预防,并推动各PDT代码整改,确保代码质量持
续改进
3、通过持续例行的代码飞检,促进开发团队编码规范意识和能力的提升,减少代码缺
陷导致网上事故的比例
13.持续集成的好处有点有哪些?
答:
1、自动化构建
2、每次构建都包含了BVT 测试,降低测试人员的工作量
3、每个人都可以提交代码,然后快速触发构建,得到反馈
4、构建快速,不需要人为干预
5、构建环境clean,保持和运行环境一样,容易发现隐藏问题
6、容易获得最新的构建,和查看到历史构建
7、清楚看到项目的进展,项目构建的状态
8、减轻了构建人员(Build Master)的工作量
9、快速反馈,尽早发现问题,尽早解决,把问题消灭在源头
10、降低后期集成的风险。