阿凡达项目的严重问题,质量过程改进,敏捷开发,
项目几大问题:
1.软件不能满足用户的需要,大量项目胎死腹中
这是软件质量的第一个评判标准。如果不能,冗余的设计,采用的技术再先进,也没有任何的意义
2.项目缺乏明确计划,版本更新频繁
研发流程,各阶段交付件 无标准,每次都是匆忙,无法提交高质量代码,要提交低端bug,回归又出现新bug,进入死循环,产品质量无法提高
----------------科学制定研发周期,合理评估,让开发和测试做高质量的工作
3.转测代码质量不高
不经过自测试,改过几轮后收敛趋势缓慢,理解bug改bug沟通成本高浪费测试人力。
- -------------加强代码评审和自测(留出时间一个月开发,一周自测),转测需要经过质量控制流程(进行冒烟测试)
-------------扣除KPI(冒烟测试质量要求)
4.产品部署复杂,新增需求后,易出错
5.测试总是排在最后才进行
前期不了解整体系统架构以及设计原型,不能有效的理解客户想要什么
因为突发状况导致在未经完整测试的情形下就贸然验收,交付上市或者出货延期
--------------------测试尽早介入
7.需求变更频繁
做着就丢了,需要评审来预计风险、业务收益、可行性、财务影响,发布日期细节周知相关人员
-------引入禅道
8.人力不足
测试如何保证软件质量?
说到责任:质量不是是靠测试人员保证的,是从全局规划和每个环节按照规范来执行出来的。测试人员的任务是帮助开发人员及产品设计人员提高软件的质量,但不等于说是保证软件质量。每个人都是质量的 主人,需要团队里发挥每个人的主动性
说到漏测:在有限的时间和资源的条件下,测试也是有成本的,根据模块错误的概率,进行有范围的测试,不能无限的测试下去,只能尽可能的提高而不可能达到完美
如何进行质量改进?(光荣之路广播)
首先定义为:QA不是发现产品的bug,是解决整理流程上的问题,这是一个持续的过程
1.首先要借力,有高层的支持,发现的问题无法进行推动落地实施,因为每个人都关心自己的利益
2.建立质量管理体系,制定规范
方式:先分析研发过程中的问题,对所有的人收集信息,反馈信息和建议,找到解决方法
敏捷开发测试是啥?
传统模型是瀑布,V模型。
特征:从需求,概要设计详细设计编码单元集成系统测试,长时间。缺点:产生变更计划无法执行,有重大影响
敏捷开发模式
定义:产品经理制定短周期实现的功能(明确的需求),由开发和测试高效协作并实现目标。
特征:结对编程(2个人结对互换);小步快跑(1-4周,小范围20行代码就提交反馈质量,容易定位到问题,形成高质量);测试驱动开发(先写用例,开发做出来按照用例);行为驱动开发(userstory的功能点一一对应不会被遗忘);持续集成(每半天自动化测试-jenkins(自动取出代码编译快速打包发布));强调人与人的沟通(文档可少,每天站会);
本质:持续集成+自动化测试+重构+快速发布(上一轮功能写好的程序接口未改变,下一轮提出的需求需要对旧代码重新实现,支持新的需求变更)