发表于: 2020-05-16 23:16:03

1 699


今天任务:

完成任务1的深度思考

1、什么是敏捷开发:

敏捷开发就是一种指导思想,可以指导我们更加高效的开发。

比如说现在团队接手了一个造航母的项目。但我们无法第一步直接就开始造航母,而是先造一艘小木船,能实现漂在水上的目的后,再造一艘帆船,之后再造轮船... ...直到最后才开始造航母。这就是敏捷开发中的迭代式开发,由一开始的有效但不完美的版本不断迭代,每一次迭代都包含设计、开发、测试,不断改进产品,添加新功能。通过频繁的发布,以及跟踪对前一次迭代的反馈,最终接近较完善的产品形态。

而增量交付就是每造好一个版本的船都会让乘客去感受所有的功能,按照新增的功能来划分迭代。

所以只有迭代开发加上增量交付,才算真正的敏捷开发。

 

敏捷开发只是一种开发方式或者说指导思想,它并不会告诉我们具体采用什么样的流程去进行开发,所以这里就又有ScrumXP类敏捷开发的具体流程的诞生。

以下是scrum大概的开发流程:


 

总结敏捷开发具有以下几个特征:

1、迭代式开发(时间周期循环)

2、增量交付(划分功能模块)

3、用户和开发者及时反馈以推动开发

4、持续集成

5、开发团队自我管理

2、如何做需求分析:

2.1什么是需求分析:

从用户提出的需求出发,挖掘用户内心真正的目标,并转为为产品需求的过程。

其中:

用户需求是用户从自身角度出发,自以为的需求

产品需求是提炼分析用户真实需求,并符合产品定位的解决方案。

2.2如何做需求分析:

当用户产生一个需求的时候,我们应该去深挖用户内心,在场景中,在人和产品的交互中分析用户动机,从需求受众面、需求使用频率、用户对需求的强度、需求的环境四个维度去思考。在用户需求和产品生产之间把握一个度。

 

3、怎么理解程序员会写出Bug这种事情,可不可以要求他们做到无Bug交付?怎么衡量Bug的修复时间和项目的上线时间冲突问题?

BUG是很正常的事情,这是无法避免的,有重大的影响产品运营的BUG要修复后再上线,优先级较低的BUG可以在产品上线后再及时更新修复。

 

4. 边界测试,功能测试,冒烟测试,黑盒测试,自动化测试,回归测试,性能测试的含义分别是什么,应该谁来主导,原因是什么? 

1. 边界测试:探测和验证代码在处理极端的或偏门的情况时会发生什么。

2. 功能测试:对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能

3. 冒烟测试:针对每个版本或每次需求变更后,在正式测试前,对产品或系统的一次简单的验证性测试。

4. 黑盒测试在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,检测每个功能是否都能正常使用以用户的角度,从输入数据与输出数据的对应关系出发进行测试的

5. 自动化测试一般是指软件测试的自动化,软件测试就是在预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件。

6. 回归测试修改了代码后重新测试已确定是否引入新的BUG

7. 性能测试模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试

 

5. Bug如果长时间未得到解决,应该怎么处理?做为PM,是否应该推动Bug的解决,如果PMBug的推动者,会不会导致开发人员越来越不主动?

根据BUG的严重程度评估风险,严重的BUG可以停机维护,优先级低的可以等下次版本迭代一起修复,PM的专业技术一般来说没有开发人员好,但也要设法推进BUG,其中鼓励和信任团队很最重要的。

 

6. 怎么样判断Demo是否应该通过?  

测试DEMO是否存在明显BUG,若只有优先级较低的BUG,可以通过后再开发中修复BUG

 

7. 常用的Bug管理工具有哪些,互相之间有什么差别,你更喜欢哪一种,为什么?

禅道,都还没用过。

 

8. 为什么要区分开发,测试,线上三个环境,三个环境之间的区别是什么?分别由谁来主导?

开发环境:开发团队的研发环境,其中一切都很混乱。

测试环境:测试人员和PM主导,由开发团队上传代码到测试环境,检查出BUG后再返回开发环境修复。

线上环境:由用户主导,若存在BUG需要立即修复。

 

9. 什么是版本回滚,在发布上线的过程中,如果发布不成功,多久之内应该要回滚,谁来决定,原因是什么?

程序或数据处理错误,将程序或数据恢复到上一次正确状态的行为。会根据需求和开会讨论后,由PM决定。

 

10. 什么样的Bug是允许上线的,什么样的Bug是不允许上线的?

根据BUG严重等级决定,Major以上的BUG不能上线,并且需要及时修复,Minor级的BUG可以线上修复。

 

11. Bug的优先级是什么?一般会分成几个级别,分别对应什么含义?

BUG严重等级:

1.Blocker系统无法执行、崩溃或严重资源不足、应用模块无法启动或异常退出、无法测试、造成系统不稳定。

2.Critical即影响系统功能或操作,主要功能存在严重缺陷,但不会影响到系统稳定性。

3.Major即界面、性能缺陷、兼容性。

4.Minor即易用性及建议性问题。

BUG优先等级:

1.Immediate:马上解决,表示问题必须马上解决,否则系统根本无法达到预定的需求。

2.Urgent:急需解决,表示问题的修复很紧要,很急迫,关系到系统的主要功能模块能否正常。

3.High:高度重视,表示有时间就要马上解决,否则系统偏离需求较大或预定功能不能正常实现。

4.Normal:正常处理,进入个人计划解决,表示问题不影响需求的实现,但是影响其他使用方面,比如页面调用出错,调用了错误的等。

5.Low:低优先级,即问题在系统发布以前必须确认解决或确认可以不予解决。

 

12. Bug的生命周期是怎么样的?什么情况下应该是Reopen?什么情况下去Close

BUG的生命周期,就是一个BUG被发现到这个BUG被关闭的过程有哪些步骤?

生命周期中一般缺陷状态:新建(指派)——已解决(待验)——关闭

如果待验的BUG在验证时没有解决好,我们需要重新打开(激活)——指派——已解决——待验,循环。

 

13. 什么是测试用例,为什么要写测试用例,测试用例中的前置条件是什么?预期结果是什么?一个登录注册的小模块,正常来讲,应该有多少个测试用例?

全面的测试用例 = 知道测试点有哪些 + 把测试任务中的测试点都找出来 + 知道测试点的类型 + 每种类型的测试项

 

测试用例:

1.了解需求的过程,可以用测试用例来体现;

2.将用例定为标准;

3.反应测试进度

4.发现并分析缺陷的标准

 

前置条件:

1.前置条件是对系统状态的描述

2.前置条件不为真会导致测试用例的阻塞

 

预期结果

前置条件下进行步骤操作,所期望或预想的结果

 

登陆注册模块应该有:

登陆模块验证能否正确登陆,登陆失败提示,登陆成功跳转,账号密码是否符合规范,是否正确显示;

注册模块是否成功跳转,注册表单是否正确,注册成功提示,注册失败提示等。

 

14. 什么是产品经理:

产品经理的定义有很多,其本质就是将需求最终转换为产品的这样一个角色。

一个合格的产品经理需要有用独立思考、灵活运用、沟通能力、把握趋势、化繁为简和学习能力,需要掌握用户研究、产品运营、项目管理、市场分析、产品设计、数据分析、原型设计、需求迭代等。


明日计划:

开始任务二。


返回列表 返回列表
评论

    分享到