• 运维夜谈
    2022-10-18 来自北京
    思考题: 1、QA 测试应该是必须存在的一个环节,虽然开发者是应该做好测试,但是开发者也只能做好自己负责模块的测试,特别是在微服务环境下,每个开发者只关注自己负责的服务,对于系统整体的集成测试、性能测试,还是需要专门的 QA 来完成。另一方面,QA 其实也可以对开发者所交付的东西的质量进行监督,可以发现开发者疏忽的问题。 2、Scrum 框架的缺点:感觉 Scrum 框架更讲究迅速,看起来更适合小型、要求先快速交付一版的新项目,很多环节由文档转变为面对面沟通,对于长期迭代的项目来说,可能会导致一些重要材料的丢失,如果项目人员流动大,可能会对后续的长期维护埋坑。 不知道是否理解正确。 另外也有一个问题想请教老师:以上内容讲的是一个软件开发的生命周期,即便是在网上查找资料,也都是类似的内容,但是有 2 个疑惑: 1、对于长期维护和迭代的项目来说,可能一个项目做了好几年了,甚至运行了十年了,那么每一个功能需求都需要走全部流程吗,包括需求分析、设计方案的制定等等? 2、对于一个运行很长时间的复杂项目来说,在设计方案的时候怎么去避免冗余、重复等问题,举个例子,假设项目中某个子模块存储了用户信息数据,现在来一个新需求也要这些数据,或者说,一个功能里写了一个工具包,另一个新需求也需要这方面的功能,开发者怎么在设计方案的时候就知道原本项目里已有这样的功能,从而直接使用就好,不用重复开发?当一个项目很大时,可能架构师也未必能对整个项目的方方面面都了如指掌,即便可以耐心地对方案进行细抠,但是这可能需要花费较多时间,又会影响需求完成的进展。 不知道对于上面的问题,老师有没有什么经验可以分享下,谢谢老师~
    展开

    作者回复: 第一个问题要根据实际情况来看,就算是很老的项目,但是人员却是不断在流动的,如果不留下资料,后面的人两眼一抹黑。另外越老的项目越容易犯错,因为如果前期没有经过设计和遵守规范,随着业务越来越复杂,牵一发就都能全身了,所以设计方案并让团队成员review是有必要的,至于需求分析更有必要了,通常是产品经理给出的,决定了为什么要做这个项目以及要做什么事情。 第2个问题,主要还是项目的组织不合理,这是实践中常常遇到的问题,功能都混杂在一起了,比如一个用户的鉴权功能不能每一个功能模块都写一份自己的吧。合理的抽象,把对应的功能模块能够清晰的抽离出来,还有基础的工具库,通用的能力单独出来,我在后面设计项目架构的时候还会详细说。

    共 2 条评论
    3
  • thinkings
    2022-10-19 来自北京
    请问老师课程中的课件,是否可以提供下载

    作者回复: 你指的课件是什么呢,PPT?

    共 2 条评论
    1
  • 抱紧我的小鲤鱼
    2022-10-18 来自江苏
    qa测试是必须的,虽然开发对项目很熟,但会思维固化,不容易发现逻辑之外的错误,当局者迷 旁观者清。以前公司试图让开发做交叉测试,去掉qa,但实际效果可以说几乎没有
    
    9
  • Realm
    2022-10-18 来自浙江
    1 QA测试很有必要,不能保证研发对每个功能都做了充分的测试,研发有时候对用户输入、边界条件考虑不妥,这些可能在QA阶段可以测试出来; 2 敏捷开发对需求固定,变更较小的项目必要性不大,会觉得“形式大于内容”;
    
    3
  • 范飞扬
    2022-10-30 来自上海
    讲的很好,借用郑晔老师的话,“拓宽上下文”
    
    2
  • 一步
    2022-10-19 来自广东
    Scrum 最大的问题就是会议太多了,最后会流于形式。 要根据实际的情况进行改进
    
    2
  • 会飞的大象
    2022-10-23 来自上海
    关于QA测试是否需要,个人觉得视情况而定,如果开发者有足够高的开发质量,完善的单元测试和自动化检查手段,不一定需要单独的QA测试。但是从个人的工作经验来看,大多数的公司并不满足该前提要求,所以QA测试的存在还是必要的
    
    1
  • 东
    2022-10-18 来自上海
    M
    
    