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

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)

注意点:

参考

DevOps之敏捷开发的更多相关文章

  1. Devops与敏捷二者能否结合?

    当前软件行业的趋势倾向于使应用程序开发和部署成为业务运营的重要组成部分.这些公司开始专注于实现像DevOps解决方案这样的方法,这有助于缩短产品开发时间.使用DevOps进行开发减少了交付软件所需的阶 ...

  2. XP+devOps开发模式与scrum敏捷开发对比,docker虚拟化

    XP+devOps开发模式与scrum敏捷开发对比,docker虚拟化 我们现在用的就是典型的XP+devOps模式,已经放弃scrum了 现在还很多公司弄docker虚拟化docker非常复杂,当然 ...

  3. 【DevOps】团队敏捷开发系列--开山篇

    随着软件发布迭代的频率越来越高,传统的「瀑布型」(开发-测试-发布)模式已经不能满足快速交付的需求.2009 年左右 DevOps 应运而生,开发运维一体化,通过自动化工具与流程让整个软件开发构建.测 ...

  4. 秦俊:开放 DevOps 敏捷开发套件,助力开发者驰骋云端

    欢迎大家前往腾讯云技术社区,获取更多腾讯海量技术实践干货哦~ DevOps可以让人工智能(AI).大数据(Bigdata).云计算(Cloud)更加高效地落地,越来越多的企业和团队在践行DevOps. ...

  5. 【DevOps敏捷开发动手实验】开源文档 v2015.2 stable 版发布

    Team Foundation Server 2015 Update 2版本终于在2周前的//Build 2016大会上正式发布了,借这个东风,小编也完成了[DevOps敏捷开发动手实验]开源文档的第 ...

  6. 敏捷开发、DevOps相关书籍——书单

    自己瞎整理的一些书单,都是豆瓣评分比较高的书,可以作为选择的一个参考. 书名 豆瓣链接 持续交付:发布可靠软件的系统方法 https://book.douban.com/subject/6862062 ...

  7. 软件开发流变史:从瀑布开发到敏捷开发再到DevOps

    作为在20世纪70年代.80年代盛极一时的软件开发模型,瀑布模型通过制定计划.需求分析.软件设计.程序编写.软件测试.运行维护等6个流程将整个软件生命周期衔接起来.这6个流程有着严格的先后次序之分,只 ...

  8. TFS 2015 敏捷开发实践 – 在Kanban上运行一个Sprint

    前言:在 上一篇 TFS2015敏捷开发实践 中,我们给大家介绍了TFS2015中看板的基本使用和功能,这一篇中我们来看一个具体的场景,如何使用看板来运行一个sprint.Sprint是Scrum对迭 ...

  9. TFS 2015 敏捷开发实践 – 看板的使用

    看板在现代应用开发过程中使用非常广泛,不管是使用传统的瀑布式开发还是敏捷开发,都可以使用看板管理.因为看板拥有简单的管理方法,直观的显示方式,所以很多软件开发团队选择使用看板进行软件开发管理.本文不在 ...

随机推荐

  1. 顺利通过EMC实验(12)

  2. 用Python爬取斗鱼网站的一个小案例

    思路解析: 1.我们需要明确爬取数据的目的:为了按热度查看主播的在线观看人数 2.浏览网页源代码,查看我们需要的数据的定位标签 3.在代码中发送一个http请求,获取到网页返回的html(需要注意的是 ...

  3. Hadoop本地编写的jar包放到集群执行时报错处理

    错误描述: 020-03-24 22:45:23,204 WARN org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor ...

  4. Linux_文件传输工具_FileZilla

    什么是FileZilla? FileZilla是一个免费开源的FTP软件,分为客户端版本和服务器版本,具备所有的FTP软件功能.可控性.有条理的界面和管理多站点的简化方式使得Filezilla客户端版 ...

  5. [ Skill ] map mapc mapcan mapcar mapcon maplist mapinto

    https://www.cnblogs.com/yeungchie/ 几种 map 函数的差异 map map( lambda(( a b ) println( list( a b )) ) list ...

  6. .Net Core 进程守护之Supervisor使用

    1.执行下列命令安装supervisor wget https://mirrors.tuna.tsinghua.edu.cn/epel/epel-release-latest-7.noarch.rpm ...

  7. Servlet 3.1学习笔记

    Servlet 3.1学习笔记 参考文档 Servlet 3.1标准 什么是 Servlet ? Servlet 是基于 Java 平台的 Web 组件,由一个容器管理,能够生成动态内容. 什么是 S ...

  8. 网络协议自动化逆向工具开山鼻祖discoverer 分析

    本文系原创,转载请说明出处:信安科研人 也可关注微信公众号:信安科研人 原论文发表在2007年的USENIX上,链接如下:https://www.usenix.org/legacy/event/sec ...

  9. IDEA小技巧:Debug时如何优雅地制造异常?

    抛异常相信大家都会吧?只需要这样就可以了: throw new RuntimeException("didispace.com"); 但是,在开发过程中有一些情况,我们需要测试程序 ...

  10. python基础练习题(题目 将一个整数分解质因数。例如:输入90,打印出90=2*3*3*5)

    day9 --------------------------------------------------------------- 实例014:分解质因数 题目 将一个整数分解质因数.例如:输入 ...