0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

DevOps工具链的项目端到端应用实践过程

8nfr_ZTEdevelop 2018-04-05 18:30 次阅读

以敏捷研发模式运作,结合其主要使用Java语言开发,产品架构包括后台服务、前端Web和APP以及多个软件部件的特点,对整个产品计划研发应用中需求管理、特性故事管理、代码托管、持续构建、自动化测试、版本发布、故障管理等都做了合适的规范要求和约定,并很快建立起一套比较完整的DevOps工具链支持。

【关键词】

DevOps,Docker,云CI,制品库,自动化测试,度量

【工具链介绍】

整个产品规划研发应用使用一序列工具链支撑:

DevOps工具链的项目端到端应用实践过程

1)原始需求由最贴近市场的用户录入原始需求管理系统系统并由规划组人员收集分析整理形成正式的产品需求。

2)产品需求录入需求管理系统后由需求分析人员组织需求实例化分析,在线完成需求到特性再到故事任务的分解。

3)需求管理系统中待实现的特性故事任务由开发团队评估并纳入迭代开发计划,开发人员进行开发,经过代码审查、故事特性测试、BA验收后在线变为开发完成状态。

4)代码托管使用Gerrit系统,编译构建使用云CI系统,代码静态检查使用Klockwork云检查系统,版本使用制品库管理,自动化测试接入云测试管理系统。

5)整个产品研发过程使用Wiki进行产品研发应用及各个团队协作信息共享管理,各个阶段信息接入度量系统进行度量分析和信息共享展示。

【实践情况】

DevOps工具链的项目端到端应用实践过程

DevOps几个重要支撑工具关系图

代码库迁移:

SVN向Gerrit迁移,Gerrit迁移使用后带来一下好处:

1.除了创建子库和配置子库访问权限组需要由管理员配置操作之外,频度较高的子库访问权限成员增减交给团队自己决定,解决之前SVN权限管理审批流程较长的问题。

2.单库下载速度提升较多,约10倍的提速率。

3.代码规模统计与度量系统接口简单,能够快速通过度量系统配置个人代码规模统计和统计结果邮件自动推送至项目组。

4.公司层面Gerrit代码托管整理效率更高更安全。

云CI部署使用:

DevOps提供的基于Jenkins的CI服务,拥有海量资源供项目实现高并发调度,使得项目不必关心底层资源,只专注于业务本身。

代码Klockwork静态检查:

项目开发语言以Java为主,使用Klockwork工具对Java代码进行静态扫描检查。Klockwork静态检查分为两步进行:

1.开发人员编码完成归档代码之前,本地通过集成到Eclipse开发环境中的Klockwork插件对新增代码进行扫描,发现告警消除后再归档到Gerrit上。项目约定,归档代码到Gerrit库之后发现的Klockwork告警,按开发人员泄漏故障对待。KW本地Java代码扫描告警消除配置参阅《Klocwork Eclipse插件的安装和使用》。

2.项目部署云KW扫描,每日对项目代码进行静态扫描,发现告警信息推送到项目组。每日KW扫描邮件推送结果。

版本发布管理:

开发团队按版本计划开发完成版本后,向版本需求者发布不同性质的交付版本。历史发布版本记录到版本发布管理系统,能够回溯查询和版本应用管理。开发团队交付发布版本分为项目内部集成版本、外部集成版本、内部验收版本、外部验收版本、正式商用版本、实验定向版本、用户试用版本、商用补丁版本。根据外部关系协作及上下游交付流程,不同时期发布不同性质的版本满足各方需求。开发团队对外发布的各种不同性质的版本,记录到版本发布管理库中,能够支持历史版本信息查询,历史版本信息度量统计,方便内外部干系人很容易获取版本相关信息,减少版本相关信息沟通成本,提升DevOps链在交付版本环节管理效率。

外部故障跟踪管理:

鉴于产品外部应用面分布交广,外部故障信息收集和跟踪比较困难的情况,借用需求开发管理系统的外部故障管理跟踪功能,用户直接将外部问题录入需求开发管理系统,自动推送邮件到项目研发团队进行跟踪处理,并向外部干系人自动推送问题解决进度。如下图所示:

DevOps工具链的项目端到端应用实践过程

协作与度量:

借助Wiki系统实现项目团队间信息传递与共享,通过度量系统推送项目团队和成员等不同维度的研发构成度量指标信息。

度量系统应用:

研发过程与度量系统对接,各个阶段研发过程指标通过度量系统汇总分析并推送给项目组。度量指标展示说明:

度量系统应用极大效率提升及时了解研发过程各个环节各个团队度量指标信息,将人力从人肉度量数据统计中解放出来,度量数据展示更灵活,速度更快,且自动实施。

【效果评价】

项目有一套完整的DevOps端到端的应用实践,为提升项目研发效率,快速便捷地实现信息共享发挥积极作用。需求管理线借助原始需求管理系统系统、需求开发管理系统支撑需求分析、迭代开发和版本交付的流程。Gerrit、云CI、云KW、制品库、云测试、版本发布管理支撑从代码托管、版本构建、静态检查、版本管理、自动化测试和版本发布管理的各阶段管理。

【DevOps工具链改进建议】

1.原始需求管理系统系统与下游需求分析管理系统实现对接。

2.云KW增量代码扫描结果推送,将引入KW告警关联到个人。

3.云测试增强对第三方测试工具报告解析格式转换兼容支持,方便获取更多自动化测试细节信息。

4.度量系统配置项较多时,上下翻滚寻找比较困难,建议增加下一级分类。

5.度量系统右面趋于弹出对话框与滚动条位置没有关联,建议弹出对话框显示在滚动条当前位置。

6.度量系统指标项过滤条件过于简单,计算过滤昨天数据不方便实现。

7.云KW扫描规则需要方便配置和修改。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2954

    浏览量

    104511
  • Docker
    +关注

    关注

    0

    文章

    454

    浏览量

    11803
  • devops
    +关注

    关注

    0

    文章

    109

    浏览量

    11989

原文标题:DevOps案例 | *网络* 项目端到端应用实践

文章出处:【微信号:ZTEdeveloper,微信公众号:中兴开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    点到点和通讯

    路由器与4G DTU中间有多少机器,都必须在两头(源和目的)间建立连接,一旦连接建立起来,就说已经是连接了,即
    发表于 01-18 18:06

    德国启动“CoSiP” 研究项目专门针对SiP设计环境

    德国启动“CoSiP” 研究项目专门针对SiP设计环境进行研究 随着微电子系统复杂程度的增加,必须在早期阶段就对芯片、封装和PCB的开发进行协调,特别是对于系
    发表于 12-31 08:48 541次阅读

    物联网解决方案

    英特尔打造核心技术物联网解决方案
    发表于 12-28 18:12 0次下载

    基于Devops的会议电视X项目案例

    自从项目引入敏捷后,工具在我们项目的核心业务上起到至关重要的作用。wiki作为内容管理贯穿整个项目的始终,所有的
    的头像 发表于 03-30 09:33 3697次阅读
    基于<b class='flag-5'>Devops</b>的会议电视X<b class='flag-5'>项目</b><b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>案例

    中兴开通欧洲首个5G网络切片商城业务,增强的用户体验

    10月23日,中兴通讯官方表示,在近日于维也纳举办的中兴通讯2019全球无线用户大会暨5G峰会上,中兴通讯联合Hutchison Drei Austria成功开通欧洲首个切片商城业务,这也是业界首个5G网络切片经营
    发表于 10-26 10:29 711次阅读

    的IO链接解决方案

    的IO链接解决方案
    发表于 05-10 10:43 1次下载
    <b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>的IO链接解决方案

    项目实施DevOps时,我们是如何做测试的

    正如我们所知,DevOps最近几年很风靡,很多企业正在如火如荼的推行它。然而,你可曾想过,从传统敏捷、再到DevOps,开发模式的不断革新对测试提出了怎样的挑战? 最近我们项目在实施
    的头像 发表于 12-16 17:33 2284次阅读
    <b class='flag-5'>项目</b>实施<b class='flag-5'>DevOps</b>时,我们是如何做测试的

    软通动力DevOps团队荣获“2022年互联网行业DevOps领域明星团队”

    作为DevOps 规范任务组成员单位,软通动力具备成熟的DevOps建设能力。迄今为止,软通动力已成功协助多个客户实现了
    的头像 发表于 11-15 15:27 636次阅读

    构建的流程体系

    所谓流程的架构体系,就是一套有层次的流程管理体系。这种层次体现在由上至下、由整体
    的头像 发表于 06-01 15:09 1951次阅读
    构建<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>的流程体系

    HDR Vivid产业加速构建

    HDR Vivid的高动态范围的行标自发布以来,已获得内容生产制作工具、平台、编解码系统、芯片、终端等产业的认可、验证及商用支持,产
    的头像 发表于 06-05 15:26 873次阅读

    创建零售愿景AI应用程序

    使用 NVIDIA DeepStream 和 NVIDIA TAO 工具包构建零售分析应用程序
    的头像 发表于 07-05 16:30 393次阅读
    创建<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>零售愿景AI应用程序

    国内首例!空运“”碳中和实践获圆满成功

    在国际物流生态绿色物流领域“”碳中和解决方案的首个落地实例,实现了中兴通讯成品从南京智能制造基地西班牙马德里仓库的全
    的头像 发表于 07-12 13:15 405次阅读
    国内首例!空运“<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>”碳中和<b class='flag-5'>实践</b>获圆满成功

    NVMe解决方案简介

    电子发烧友网站提供《NVMe解决方案简介.pdf》资料免费下载
    发表于 08-17 09:59 0次下载
    <b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>NVMe解决方案简介

    测试用例怎么写

    编写测试用例是确保软件系统从头到尾能够正常工作的关键步骤。以下是一个详细的指南,介绍如何编写
    的头像 发表于 09-20 10:29 323次阅读

    Devops工具集成的意义及基本原理

    Devops工具集成的意义在于实现开发(Development)与运维(Operations)之间的紧密协作,通过自动化流程提高软件交付的速度、质量和稳定性。其基本原理是通过一系列相互连接的
    的头像 发表于 10-14 10:32 149次阅读