转载本文需注明出处:微信公众号EAWorld,违者必究。

引言:

在DevOps的研发过程中,好的看板功能有助于优化项目管理、提升开发效率,是较重要的功能之一。本文从需求分析角度入手,分析DevOps产品对看板的需求,并结合普元DevOps产品看板部分的实际开发经验和用户反馈向大家介绍DevOps看板的设计实践之路。   

目录:

1.DevOps需要的看板

2.看板实践及优化

1.DevOps需要的看板 
看板是DevOps较为常用的功能,整个项目开发周期都离不开它,从需求划分、任务分配、功能实现到测试上线都需要看板的协助,看板使抽象工作流程可视化,让项目管理者能更清晰的掌握项目进度。由此,看板设计实践就成为了DevOps实践的重要内容之一。首先我们需要了解一下,DevOps中的看板需要具备怎样的功能:
1.价值流
广义的价值流指的是从原材料变为成品、并给他赋予价值的全部活动。包括原材料的获取,对原材料进行加工后转变为成品交付给客户的过程,其中还包括了各个阶段各方之间的沟通形成的信息流也是价值流的一部分。完整的价值流包括供应链成员之间的沟通,物料的运输,生产计划的制定和产品的生产过程等。

举个简单的例子,服装加工厂要按照客户要求生产一批服装,生产方首先需要和客户确定衣服的款式,用料,具体尺码信息,然后采购制衣所需的布料,将衣服制作图纸下发到相关工人手中,工人按图制衣,完成既定数量的通过质量检测的成衣后将成品送到客户手中,这就是一条完整的价值流。

DevOps中的价值流

在DevOps中,价值流的概念同样适用。定义:把业务构想转化为客户交付价值的、由技术驱动的服务所需的流程。

价值流贯穿了整个开发周期,好的价值流在保证快速的交付的同时还能保证部署工作不会产生混乱和破坏。只有打通业务、开发运维等一些列的价值链条,保证价值可以完整畅通的流动,减少积压重组,才能保证产品的顺利交付。在此前提下,提高开发效率实现敏捷开发才是可能的。但是技术价值流与制造业的价值流不同,它是不可见的,因此我们很难发现整个价值流是否顺畅,在哪里产生了阻碍积压。因此我们需要将价值流可视化,清晰的把价值流的呈现出来,这样价值流是否完整,哪里存在缺失就一目了然了。

2.DevOps的三步工作法基础原则

《凤凰项目》一书把三步工作法作为基础原则并由此衍生了DevOps的行为和模式:

(1)开发到运维的工作快速的从右向左的流动------流动原则

在保证质量的前提下加快价值流的流动速度,尽可能的优化工作流,减小流动单元合理控制流量,减少等待时间,提高工作效率,可以归结为以下几点:
  1. 使工作可见

  2. 合理控制最流动单元

  3. 减少交接次数

  4. 消除阻碍价值流的问题

(2)从右向左的每一个阶段中,应用持续、快速的工作反馈机制------反馈原则
反馈原则是在流动原则的基础上建立的一条信息流,价值流上的各个环节通过这条信息流沟通,好的信息流有助于及时发现并解决问题,从中分析并总结经验可以提升项目开发效率。
(3)建立具有创意和高可信度的企业文化,支持动态的、严格的、科学的实验——持续学习与实验原则:他打造出一种高度信任的文化和一种科学的工作方式

常见的项目中每天的站会、每周的周会一般是项目成员集中在一起交流并互相学习的机会,大家对工作作出自我总结并提出自己的想法互相交流意见,实现工作中的自我提升。

看板在DevOps中主要作为价值流的载体的一部分,使价值流中一些较为抽象的信息可视,并让用户可以从中看清楚价值流的流通情况、每一个环节及环节的具体操作情况,何处需要改进、何处存在问题。三步工作法则可以帮助提升工作效率。结合对价值流的概念以及三步工作法原则的分析,看板需要具备以下功能:

(1)清晰描述最小工作项单元及工作项间的关系

(2)提供便捷的小组成员互相沟通方式

(3)快速直接的反馈某工作项的各种情况

(4)一目了然的任务完分配集成情况,方便开会总结

2.看板实践及优化 
首先是工作的最小单元——工作项,工作项是看板上各类工作内容的最小显示单元,负责显示工作内容的各种信息,一些类似的工作项管理看板对工作项类型进行了极为细致的划分,但过于繁杂的工作项类型难于记忆并且存在概念重复反而不利于,结合实际项目开发情况我们将工作项类型分为三类:
(1)故事——一个故事代表一个完整的需求点,可以包含多个任务、bug,一  个故事及其包含的所有子项目可以完整的诠释一个需求点在价值流上流通的全过程
(2)任务——将故事拆分为一个个的具体工作内容,分配到具体人员
(3)Bug——测试人员向开发人员、项目管理人员提出反馈的途径
工作项的要展示很多的具体信息:
(1)描述信息(标题、描述、附件、Comments、所属迭代、所属版本)
Comments是提供给开发人员的交流空间,让开发人员可以在这里进行简短的意见交流,一些较小、内容简短的讨论可以在这里进行,无需所有相关人员聚集在一起讨论节约时间
(2)状态信息(工作项状态、优先级)
(3)人员信息(责任人、创建人、解决人)
明确工作项的相关人员,责任划分明确。
(4)时间信息(创建时间、预估时间、耗费时间、到期时间)
提供明确的时间信息,有利于项目管理者控制项目开发进度
(5)关联的工作项(子任务、Bug)
将有关的工作项关联到一起,完整描述产品中某一项功能,从需求分析到开发实现到测试反馈的全过程
工作项设计完成后需要考虑的就是如何一个个的工作项集中在一起展示,考虑到DevOps的用户有很多不同的角色,对看板的关注角度也不同,例如项目经理更希望可以一目了然的看到任务的完成情况,开发人员需更关注的是分配给自己的工作项的具体的内容,综合各方面分析考量,对看板设计了四种展示方案:
(1)普通列表
普通列表视图用分页列表形式展现工作项,不会展示过于详尽的信息,意在为用户提供一个可以快捷操作的页面,如添加工作项、快速修改工作项的状态。
(2)详情列表

详情列表视图将页面分为左右两个区域,左侧是简化的目录列表展示全部工作项,右侧展示用户在目录列表选中的工作项的全部信息,适用于快速浏览工作项后切换查看各个工作项的详细信息。

(3)状态甬道

从工作项状态的维度展示工作项的简要信息,标题、负责任、状态,方便项目组举办周会,每日站会时汇总展示当前所有工作项所处状态,统一分配任务、总结任务完成情况使用,采用拖拽形式来修改任务状态,方便快捷。

(4)时间甬道

针对每日站会的甬道,项目进入较为紧张的开发阶段时往往需要每日或较短的时间内分配任务、查看任务完成情况,以时间为展示维度,让项目管理者看到每个时间段内工作项的数量、完成情况,方便把控项目进度。
根据真实使用反馈的优化完善
DevOps的看板设计完成后经过一段时间的使用,发现了许多问题,我们对此做出了总结和改进:
(1)检索功能优化
工作项具备很多检索条件,条件过多,选择控件按钮在页面上堆叠,用户体验不佳,所以改为采用折叠形式的查询栏并提供常用查询条件存储功能,优化体验。
(2)时间甬道看工作项板卡片优化

工作项具备很多属性,开站会时经常需要修改负责人、任务优先级等一些信息,甬道修改时间方便但是要修改其他属性则需要进入详情页面,增加了操作步骤,浪费时间,因此将一些常修改的属性添加至卡片上方便修改。

(3)列表视图信息快速修改优化

列表视图的使用者一般对工作项内容较为了解,很少查看工作项详细内容,此类用户要修改工作项的一些基本信息时不希望进入详情页后才能修改工作项信息,因此将列表的单元格改为可编辑形式,减少点击页面次数。

以上就是普元DevOps产品看板模块的设计和实践历程,在价值流可视化和项目成员沟通等方面我们仍在持续改进,希望能打造出更便捷、更清晰的看板,完善DevOps平台看板模块。

*参考书籍:《DevOps实践指南》

推荐阅读

DevOps平台之开源技术图谱

DevOps落地实践及案例分享

普元DevOps 5.3 产品研发发布

关于作者:夏夏,前端工程师,参与普元DevOps产品开发,以及微服务、容器云等产品开发,负责前端页面设计、架构搭建等工作。善于架构搭建、组件封装及相关算法设计。

关于EAWorld:微服务,DevOps,数据治理,移动架构原创技术分享。长按二维码关注!

转发送《DevOps实践指南》

转发本文至朋友圈(至少保留到开奖哦~)

截图、发至本公众号后台

随机抽取一名幸运儿送《DevOps实践指南》

获奖名单见下周三推文

9月12日(本周四)下午14:30,普元高级软件工程师八点五分为大家分享《微服务治理与统计分析》,敬请期待!关注本公众号回复“YG+微信号”,参与课程有机会赢取相关书籍哦~

在看点这里

DevOps平台之看板设计相关推荐

  1. DevOps平台中的自动化部署框架设计

    本文目录: 一.背景 二.我们的需求是什么? 三.概念澄清 四.概念模型 五.总体设计 六.关键点设计 七.总结 一.背景 说到自动化部署,大家肯定都会想到一些配置管理工具,像ansible,chef ...

  2. 云原生时代的DevOps平台设计之道

    开发人员与运维人员是 IT 领域很重要的两大人群,他们都会参与到各种业务系统的建设过程中去.DevOps 是近年间火爆起来的一种新理念,这种理念被很多人错误的解读为"由开发人员(Dev)学习 ...

  3. 云计算机制作过程,云计算平台架构及设计与核心流程.ppt

    云计算平台架构及设计与核心流程 平台 · 让创新无限 谢谢 平台 · 让创新无限 目录 云计算平台架构设计与核心流程 看问题 找方法 做设计 看问题 --- 分析全生命周期各环节的常见问题 1. 缺乏 ...

  4. 华为上线软件开发云,一站式云端 DevOps 平台

    在12月22日举办的"2016华为大连软件开发云上线大会"上,华为正式上线发布了集其自身研发实践.前沿研发理念.先进研发工具为一体的软件开发云平台,面向软件企业.高校和开发者提供云 ...

  5. 三一集团数字化转型探秘:以DevOps平台构建敏捷研发体系

    三一集团创始于1989年,是全球装备制造业的领先企业之一,同时也是中国"智能制造"首批试点示范企业.在立足装备制造主营业务基础上,三一集团大力发展新能源.金融保险.住宅产业化.工业 ...

  6. 万达网络科技的DevOps平台架构解析

    转载本文需注明出处:微信公众号EAWorld,违者必究. 目录: 一.万达DevOps平台建设历程 二.平台架构解析 三.建设过程中的难点分享 四.总结 一.万达DevOps平台建设历程 我们从201 ...

  7. 嘉为蓝鲸DevOps平台V5.0,以平台工程提升企业软件研发质效

    随着信息技术深入应用,企业业务由线下方式为主逐渐转变为线上方式为主,业务产品创新频率提升.创新周期缩短.同业竞争加剧,而企业的IT组织效能却尚未能提升到满足企业业务敏捷交付的水平. 面向行业竞争加剧和 ...

  8. 一站式 DevOps 平台,让开发大不同

    DevOps 是一种重视 "软件开发人员(Dev)" 和 "运维技术人员(Ops)" 之间沟通合作的文化.运动或惯例,是软件开发领域最近十年来兴起且当下普遍成熟 ...

  9. 基于 RocketMQ Prometheus Exporter 打造定制化 DevOps 平台

    作者 | 陈厚道  冯庆 来源 | 阿里巴巴云原生公众号 导读:本文将对 RocketMQ-Exporter 的设计实现做一个简单的介绍,读者可通过本文了解到 RocketMQ-Exporter 的实 ...

最新文章

  1. 版本管理三国志 (CVS, Subversion, git)
  2. 提升购物体验,跨境电商如何做企业管理?
  3. CodeForces - 1408E Avoid Rainbow Cycles(思维+最大生成树)
  4. 海外弱网下的在线视频平台优化实践​
  5. SAP ABAP实用技巧介绍系列之如何生成值为NULL的table row
  6. 对话系统聊天机器人的设计艺术(上)
  7. 剥开比原看代码15:比原是如何转帐的
  8. Python标准库collections中与字典有关的类
  9. php中浮点数计算问题
  10. koa操作mongodb,封装mongdb操作方法
  11. heidisql连接远程数据库_远程连接数据库异常问题
  12. 高内聚低耦合_拉锥耦合器最强粘接方案
  13. spotfire Document Property
  14. JMeter并发测试工具
  15. ElementUI Button按钮样式
  16. java和美利达_JAVA、GIANT、MERIDA、UCC四大厂商破风铝架横评
  17. 计算机上e盘拒绝访问,E盘拒绝访问怎么办?Win7系统E盘拒绝访问的方法
  18. uniapp中回退到上一页面并触发函数的方法
  19. taylor+swift纽约公寓_欧美明星豪宅都有多美,眼见为实!
  20. 系统平台拼多多商家如何补充订单

热门文章

  1. python如何实现下载文件_python实现下载文件的三种方法
  2. Java之HashMap经典算法-红黑树(插入节点平衡调整,左旋转,右旋转)
  3. c语言实现爬虫功能,用C/C 扩展Python语言_python 调用c语言 python实现简单爬虫功能_python实现简单爬虫...
  4. Stata:工具变量法(IV)也不难呀!
  5. IntelliJ IDEA 没有Tomcat 也没有Application Servers的解决办法
  6. CodeForces 351B Jeff and Furik 概率DP 逆序对
  7. [InnoDB] [FATAL] Tablespace id is xx in the data dictionary but in file .\test\t3.ibd it is xx!
  8. 国内有哪些靠谱的网站建设公司,尤其是对服装、化妆品行业的?
  9. 大数据-数仓-数据采集-业务数据(二):全量同步采集【MySQL<-->DataX(全量)<-->HDFS】【每日全量:每天都将业务数据库中全部数据同步到数据仓库,是保证两侧数据同步的最简单方式】
  10. InSAR技术在滑坡形变区筛查中的应用