[研发]scrum 敏捷开发流程

scrum 敏捷开发流程

scrum 标准流程图解析

三种角色 产品所有者\ 团队\ scrum master

backlog

  • PO(产品所有者)听取客户\经理出
  • 出功能需求表(backlog)
  • backlog按照功能优先级排列
  • backlog就是一个列表
  • backlog没有详细完整的需求说明书

sprint开启

  • PO在每一个sprint开启的时候
  • 会有一个计划会议
  • 会议内容,每一个sprint做上面事情
  • 回答team(团队)做什么事情(产品需求)的所有问题

团队

  • 从backlog里面去领取任务
  • 任务进入到sprint backlog

sprint周期

  • 1-4周 sprint 周期

scrum master

  • 1-4周期中 督促项目的开发执行
  • 沟通
  • 每日站会(做了什么 今天的任务 遇到的问题)

sprint原则

  • 周期内 周期不变
  • 内容不变
  • 无任何变化
  • scrum master负责保证

sprint结束后期

  • 开两个会
  • sprint评审会;用户 潜在的可随时发布的部分功能的产品
  • scrum master sprint 回顾会; 问题和反思 做的不好的下一个周期改进
  • 在线产品按照这个节奏一直做下去,完整的产品就是按照这样的周期持续循环

产品级质量的部分功能需要做

  • 测试 单元测试 集成测试 压力测试
  • 预防重于治疗

评审阶段

  • 评审阶段用户的新需求会被加入到Backlog
  • 进行优先级排序
  • 然后进去到下一个sprint

什么是自动化

  • 帮我们一遍一遍运行\测试等
  • 人工简单的事情 使用机器自动化完成 比人工稳定
  • 比如 打包 比如单元测试跑一万次 人不愿意

演进式设计

  • 演进式设计是一个全流程的迭代过程

持续集成

  • 做的每个模块是在持续不断的集成,
  • 模块之间会有联系,
  • 这种模块之间的相互关系希望的是不断去集成验证,
  • 如配送管理和产品管理 两个模块会有集成的需求 ,
  • 我们需要集成是时刻在发生, 看是不是跟初始需求是match的
  • 集成测试环境teamcity把分段的代码放到一块跑 验证 是否成功 每天都在集成

开发模式

  • 两个复杂模块的并行开发
  • branch1 branch2 到master上去集成

1 并行开发 两个模块依赖过多调用复杂 放入master后bug过多,在拉去一个集成的branch 调试稳定
branch1 10天写功能 1天写接口 评审 提交到master ,在拉去一个集成的branch 调试稳定
branch2 需要branch1 在一天内获得branch1接口的使用
2 先后开发

持续集成

  • 有任何风吹草动(接口发生改变)都要放到集成测试工具中跑一跑
  • teamcity(集成测试工具,每一次代码提交都做充分的验证,跑现有的所有测试)去做测试,
  • 构建服务器(build server teamcity是其中一款) ,
  • 代码一提交 他就去跑所有的单元测试 集成测试(一定要一个环境),
  • 然后部署到生产环境中去

1 代码发生改变
2 自己提交到版本控制
3 集成测试工具 做一次完整的打包 自动跑所有的测试(单元测试 集成测试) 自动打包 自动部署
4 生成buglog
5 报告给你

生产环境早期就部署了

  • 每一个sprint都在接近生产环境的测试环境做测试
  • 接近生产环境的测试环境
  • 做有效的验证
  • 1测试早 2真实 3自动化

单元测试(Unit text)

  • Unit text 函数的测试 面向一个类的测试

  • 增删改查的类

    • TDD 测试代码先写了,在去功能;让测试都通过
    • 相反 先写功能代码 然后再去写测试代码
    • 实例 小孩的衣服 成人的衣服

构建服务器(build server)就是teamcity

  • 自动化原则:改动了代码 没有改变功能 没有引入bug

scrum敏捷开发流程demo 互动游戏

全班抽一个组 不给于任何指导 让他们自由发挥

  • 角色

    • PO
    • Team
    • Scrum master
  • Backlog 5分钟

    • 10000元人民币出游计划
    • 另一个组提出需求 8-10项(如需要玩几个景点 住几星级酒店 出行方式 景点内的出行安排 时间安排 线路规划) 说 明确自己的需求
    • PO全程记录需求点 记录需求表
  • sprint会议 5-10分钟

    • PO Team Scrum master
    • 计划 时间周期 sprint里面的任务内容 30-60分钟一个sprint
    • 安装优先级沟通选取任务
    • 记录下sprint任务 周期
  • Team

    • 内部分工
    • 进入到sprint backlog
    • 记录分工表
  • sprint周期 30-60分钟

    • Team Scrum master PO
    • sprint原则
  • sprint后两个会议 5-10分钟一个会议

    • sprint评审会 用户\用户代表方 PO Team
    • sprint回顾会 PO Team Scrum
  • 进入下一个sprint周期

10000钱 道具
sprint计划会
PO 需求
team 提供时间信息
run sprint
下一个sprint
1 PO 2000 3000 5000
2 team sprint 2000吃饭 酒店 5-10分钟
team sprint 30000 旅游点 10-20分钟
3

自动化

  • teamcity 构建 主动部署 单元测试 集成测试

  • 测试环境 集成环境 工业环境

  • CI 持续集成 一个简单的、自动化的持续集成环境

  • 从中,我们可以看到,持续集成涉及到的主要工具类别包括:

    • 版本控制工具:实现源代码管理、版本控制
    • 构建工具:实现自动化地编译、测试、部署等,这是持续集成的核心工具
    • CI服务器:有机整合版本控制和构建工作,实现自动化持续集成
  • 触发构建 打包 发布到测试环境

posted @ 2017-05-26 10:07  viviwong6638  阅读(472)  评论(0编辑  收藏  举报