1. 什么是软件质量?
一个实体的所有特性,基于这些特性可以满足显性的或隐含的需求,而质量就是实体基于这些特性满足需求的程度。
总结质量三要素:产品或者项目-特性-需求
举例子说明:QQ、今日头条、淘宝等相关软件。
软件测试六大特性:6大特性:功能、效率、易用性、可靠性(时间)、维护性、可移持性。
2. 软件质量管理目的?
为了定量了解项目的软件产品的质量,并实现具体的质量目标。
3. 软件项目失败的主要原因有 :
1.需求定义不明确;
2.缺乏一个好的软件开发过程;
3.没有一个统一领导的产品研发小组;
4.没有经常注意改善软件过程;
5.对软件构架很不重视;
6.软件界面定义不善且缺乏合适的控制;
7.软件升级暴露了硬件的缺点;
8.关心创新而不关心费用和风险;
3.软件质量铁三角?
什么决定软件质量?
流程、技术、组织影响软件质量铁三角,提高软件质量需要从每个方面进行改善,同时还需要考虑成本与进度。
4. 什么是CMMI
即能力成熟度模型集成(也有称为:软件能力成熟度集成模型)
5. 实施CMMI的目的?
帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。
6. CMMI认证:产品质量的认证、软件过程改善的途径——>过程决定质量。
7. CMM等级划分:共有五个等级、分别标志着软件企业能力成熟度的五个层次、从低到高,软件开发生产计划精度逐级升高,单位工程生产周期逐级缩短,单位工程成本逐级降低。
8. CMMI5等级划分:
1. 初始级
软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力。管理是反应式的。
2.可管理级
建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。
3.已定义级
已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。所有项目均使用经批准、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。
4. 量化管理级
分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。
5. 优化管理级:过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。
9. CMMI的价值:
1、能保证软件开发的质量与进度,能对“杂乱无章、无序管理”的项目开发过程进行规范
2、有利于成本控制。因为质量有所保证,浪费在修改、解决客户的抱怨方面的成本会降低很多。绝大多数情况是缺少规范制度,只是求快。项目完成后,要花很多时间修修补补,费用很容易失控。
3、有助于提高软件开发者的职业素养。每一个具体参与其中的员工,无论是项目经理,还是工程师,甚至一些高层管理人的做事方法逐渐变得标准化、规范化。
4.能够解决人员流动所带来的问题。公司通过过程改进,建立了财富库以共享经验, 而不是单纯依靠某些人员。
5.有利于提升公司和员工绩效管理水平,以持续改进效益。通过度量和分析开发过程和产品,建立公司的效率指标。