DevOps之敏捷开发

Posted okokabcd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)

技术分享图片

注意点:

技术分享图片

参考

以上是关于DevOps之敏捷开发的主要内容,如果未能解决你的问题,请参考以下文章

[调查]安全愈加融入DevOps和敏捷开发

敏捷与DevOps整合之道

DevOps敏捷开发和云计算

Devops-敏捷团队开发流程

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

DevOps成长训练营敏捷开发