如何让一个初创团队走上持续快速有质量的发布之路 郭宁 测试质量部 副部长 杭州数梦工场科技有限公司
摘要 案例简介 挑战分析 应对措施 案例启示
如何让一个初创团队走上持续快速有质量的发布之路 做到持续快速有质量的发布是所有软件公司的目标,初创团队也不例外 面对一个新成立而研发团队迅速扩张到200多人的公司 在短短几个月时间内,搭建适合中型研发团队的流程工具体系,使产品开发走向持续快速,有质量的发布之路
自我介绍 郭宁 曾就职于深圳华为科技有限公司中央研究部、杭州华三科技有限公司软件部、运作与质量部 现就职于杭州数梦工场科技有限公司测试质量部 曾将敏捷开发引入千人研发团队、负责公司通过CMMI 四级认证
我们面临的挑战 杭州数梦工场科技有限公司 今年3月正式成立,阿里巴巴集团投资,提供政企“混合云”场景化解决方案 公司400多人,其中研发团队近300人 新成立,没有工具积累 人员快速壮大,团队规模较大 初创公司,经费有限 面对政企用户,既要求快速发布又要有高质量 一句话总结面临的挑战就是:在经费紧缺又没有历史积累的情况下,如何搭建流程工具体系,使300人的团队有序工作,既快速响应需求又高质量的发布产品。 优势是没有历史包袱,可以重新开始。
怎么做到的 形成一套简单、完整的流程 快速搭建实用的生产环境 工具和流程系统性融合 工程方法予以配合
形成一套简单、完整的流程 Scrum? IPD? 立项 总体设计 迭代开发 验收发布 重要阶段决策点+迭代开发 组合团队 测试前移+独立验收保证质量
快速搭建实用的工具体系 用4个外部工具+1个自研工具实现以上需求! 产品开发流程、问题单流程、测试流程、代码配置管理、代码审查、文档配置管理、文档发布、持续集成、自动化测试…… 满足各项活动、各角色需求 简单易用 快速搭建 形成体系,而不是孤立的工具 用4个外部工具+1个自研工具实现以上需求!
代码 代码配置管理、代码评审、代码审批 文档写作、文档评审、文档配置管理、文档发布、知识库、团队建设 文档 问题单管理、项目管理、需求接纳电子流、验收测试电子流 流程 持续集成 持续集成、自动化调度 用例管控、测试任务管控、自动化测试、报告管理 DTP 测试平台
工具相互集成形成一个系统 文档管理系统 代码仓库 持续集成中心 测试平台 流程管理系统
工具和流程融合 需求提出 需求分析 用户故事 测试用例 代码、脚本 持续集成 自动化测试 验收测试 流程管理系统 文档管理系统 代码仓库 测试平台 需求提出 需求分析 用户故事 测试用例 代码、脚本 持续集成 自动化测试 验收测试
深入思考 工具中流动的内容是关键 内容的关键是需求
请将用户登录这个需求拆分成多个故事 符合INVEST原则 Independent 独立的; Negotiable 可讨论的; Valuable 对用户或客户有价值的; Estimable 可估计的; Small 小的; Testable 可测试的
这样的分解是在文档上还是在电子流上? 落实到代码结构和代码的提交纪录上了吗? 作为用户,我可以通过Web页面输入用户名密码登录 作为游客,我可以匿名登录 作为管理员,我可以通过命令行登录 作为用户,我可以通过系统已保存的用户名密码直接登录 作为用户,我登录用户名或密码输入错误三次后出现验证码,错误十次后不允许登录 作为用户,我登录时遗忘密码可以邮件联系管理员 作为管理员,我要求同时登录的人员不超过license限制人数 这样的分解是在文档上还是在电子流上? 落实到代码结构和代码的提交纪录上了吗?
例1
例2
流程、工具以及其中流动的软件功能达成一致才是理想状态 流程管理系统 文档管理系统 代码仓库 持续集成 测试平台 需求提出 需求分析 用户故事 测试用例 代码、脚本 持续集成 自动化测试 验收测试
案例ROI分析 2款收费软件 2款免费软件 1款自研软件 工具开发部署、流程制定,投入人力10人月左右
持续快速有质量的发布是绝大部分软件组织追求的目标 通过流程、工具、工程方法上的努力能够提升组织在这方面的能力 案例启示 持续快速有质量的发布是绝大部分软件组织追求的目标 通过流程、工具、工程方法上的努力能够提升组织在这方面的能力
我们将继续做 将生产中心部署在本公司自研虚拟化平台之上 部署DevOps 建立跨北京、杭州两地的分布式生产中心 DTP继续完善,扩充资源管理、白盒扫描、缺陷分析等功能 完善自动化测试,实施测试例与代码同源