zoukankan      html  css  js  c++  java
  • DevOps之敏捷开发

    初步了解一下敏捷开发及其流程

    1 为什么要敏捷开发?

    敏捷开发描述了一套软件开发的价值和原则,在这些开发中,需求和解决方案皆通过自组织跨功能团队达成。

    1.1 背景与动机

    当需求的不明确性和工程实现的不确定性均超出一定范围后,呈现出复杂系统的特征传统的开发方法便不在适用.敏捷开发方法正是在这样的背景下诞生.

    1.2 瀑布VS敏捷

    2 敏捷宣言

    2.1 背景

    千禧之初,美国在计算机行业已经走了几十年,瀑布流、螺旋模型、快速迭代...各种各样的软件开发流程雨后春笋各领风骚一段时间。虽然不断变化和完善,但互联网的加速发展让传统方法显得笨重,难以快速适应变化。有十七个程序员(程序员改变世界)在美国犹他州的一个风景区开了个碰头会,找到了一个团队耦合度高,流程极其灵活的方法,他们把它称为agile program development。

    这十七个人如同开宗立派的长老,在会议之后给自己起了个名字“敏捷联盟”,他们不仅赋予了新方法名字,还有宣言,甚至纲领。

    2.2 宣言与原则

    http://agilemanifesto.org/iso/zhchs/manifesto.html

    2.3 敏捷VS敏捷方法

    3 Scrum

    3.1 简介

    3.1.1 增量式迭代流程图

    3.1.2 Sprint周期

    不同迭代周期对Scrum项目实施的影响

    3.1.3 基本概念

    agile:敏捷.

    • 其理念,精髓是 迅速响应需求,快速反馈结果

    sprint:冲刺.

    • 一个开发阶段被认为是一次冲刺,一个个sprint首尾相连,构成一个项目

    Scrum:指的时英式橄榄球中一股脑争球这一战术或行为.

    Product Backlog:即需求池,待办事项列表

    • 需求池示例(任务名称、平台、详细描述、优先级按照P0-PX逐渐递减)

    • Backlog里写什么:待开发任务,任务优先级

    story board:故事板

    • 用故事板表述用户场景,电影领域里故事板用来更具体地描述分镜.
    • 在开发领域,故事板是任务流转的可视化窗口

    burn down chart:燃尽图

    • 横坐标为一个sprint的每一天,纵坐标为剩余工作时间

    角色

    • PO(Project Owner) - 项目持有者 - 负责需求
    • SM(Scrum Master) - 敏捷教练 - 负责技术
    • ST(Scrum Team) - 需求,开发,测试

    3.1.4 敏捷管理工具

    国外jira、redmine,Axosoft ,国内的leangoo、禅道,三大家则都有自研的工具,百度的icafe,阿里的aone,腾讯的tapd。

    3.1.5 敏捷开发也需要文档

    • 产品文档 PM维护
    • 概要设计 非必须 SM维护
    • 接口文档 必要且重要

    3.2 Scrum框架与流程

    3.2.1 Spring计划会议

    一个例子

    3.2.2 每日Scrum会议(Daily Scrum)

    3.2.3 Sprint评审会议

    3.2.4 Sprint回顾会议

    3.2.5 产品订单(Product Backlog)

    3.2.6 怎么写用户故事

    3.2.7 冲刺订单(Sprint Backlog)

    注意点:

    参考

  • 相关阅读:
    Linux-文件目录管理
    20. 有效的括号
    242. 有效的字母异位词
    387. 字符串中的第一个唯一字符
    136. 只出现一次的数字
    14. 最长公共前缀
    268. 丢失的数字
    169. 多数元素
    26. 删除有序数组中的重复项
    283. 移动零
  • 原文地址:https://www.cnblogs.com/okokabcd/p/9279615.html
Copyright © 2011-2022 走看看