一种嵌入式软件开发的代码管理、持续集成和交付的工作方法及系统与流程

文档序号:30794473发布日期:2022-07-16 12:03阅读:250来源:国知局
导航: X技术> 最新专利> 计算;推算;计数设备的制造及其应用技术
一种嵌入式软件开发的代码管理、持续集成和交付的工作方法及系统与流程

1.本发明涉及一种嵌入式软件开发的代码管理、持续集成和交付的工作方法及系统,属于嵌入式软件开发领域。


背景技术:

2.嵌入式系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序4个部分组成,用于实现对其他设备的控制、监视或管理等功能。嵌入式软件就是基于嵌入式系统设计的软件,它也是计算机软件的一种,同样由程序及其文档组成,是嵌入式系统的重要组成部分。传统的嵌入式开发方法分为三个流程。独立团队编写代码、集成代码以及测试代码。这在“瀑布式”软件开发方法中运行无碍,但是它的速度太慢,无法满足当今更智能的系统以及更快的开发周期的市场需求。随着敏捷开发的普及,团队能够以空前速度提交出新的代码,以及新代码定期发布,迭代节奏的频率明显加快,使得嵌入式软件的代码质量及集成交付遭遇更大的挑战。因为,版本发布的越频繁,可能涉及到软件质量的层面越多、集成越容易失败、风险也越高。同时,交付包使用ftp或者svn进行管理,管理粒度相对较粗.因此,在整个嵌入式开发过程中软件质量高可用性要求就得不到保障。


技术实现要素:

3.发明目的:提供一种嵌入式软件开发的代码管理、持续集成和交付的工作方法及系统,解决现有嵌入式软件在快节奏的敏捷开发、迭代情况下,持续集成/持续交付的周期、质量及管理的不足,提升交付质量与效率,努力为客户创造更多价值,带来更好体验。
4.技术方案:一种嵌入式软件开发的代码管理、持续集成和交付的工作方法,包括以下工作:代码质量管理,通过配置的代码分析规则,从可靠性、安全性、可维护性、覆盖率、重复率等方面分析项目;持续集成,过配置jenkins、版本控制软件和测试报告等插件,实现嵌入式软件持续集成的闭环过程;持续交付及制品管理,解决交付包使用ftp或者svn进行管理,管理粒度相对较粗的管理方式,标准化管理软件开发过程中产生的所有制品。
5.在进一步的实施例中,所述代码质量管理包括以下步骤:步骤1、登陆基于sonarqube的代码质量管理平台;步骤2、通过配置的代码分析规则,从可靠性、安全性、可维护性、覆盖率、重复率等方面分析项目,风险等级从a~e划分为5个等级;步骤3、同时,sonar可以集成pmd、findbugs、checkstyle等插件来扩展使用其他规则来检验代码质量;步骤4、另外,sonar设置了质量门功能,通过设置的质量门评定此次提交分析的项
目代码是否达到了规定的要求。
6.在进一步的实施例中,所述sonarqube平台由4个组件组成:第一组件:一个sonarqube服务器启动3个主要进程:进程1.用于开发人员的web服务器,管理员浏览质量快照并配置sonarqube实例;进程2.基于elasticsearch的搜索服务器可以从页面返回搜索结果;进程3.负责处理代码分析报告并将其保存在sonarqube数据库中的计算机引擎服务器;第二组件:sonarqube数据库存储:a.sonarqube实例配置文件;b.项目质量快照,视图等;第三组件:多个sonarqube插件安装在服务器上,可能包括语言,scm,集成,身份验证和治理插件;第四组件:一或多个sonarqube扫描器在分析项目,运行在构建或持续集成的服务器上。
7.在进一步的实施例中,所述持续集成是基于jenkins和+git作为持续集成的工具,通过配置jenkins、版本控制软件和测试报告等插件,实现了嵌入式软件持续集成的闭环过程。
8.在进一步的实施例中,每个开发版本总是存在多个 feature团队在并行开发不同的功能,每个 feature团队都有自己独立的开发联调环境(对应到 feature分支;开发提交代码到daily、nightly及release分支,jenkins自动监测到对应代码仓库的代码分支变更,然后启动对应的任务进行代码的静态检查,单元测试,编译,打包,如果sonarscanners发现问题,系统则立刻通过邮件的形式通知开发人员。
9.在进一步的实施例中,所述持续交付及制品管理中控制着制品的按配置规则自动分发部署,是基于nexus搭建的制品管理仓库除了基本的存储功能,还提供了版本控制、访问控制、安全扫描等重要功能,解决了交付包使用ftp或者svn进行管理,管理粒度相对较粗的管理方式,标准化管理软件开发过程中产生的所有制品。
10.在进一步的实施例中,所述制品是指由源码编译打包生成的二进制文件;制品库是用来统一管理不同格式的软件制品。
11.在进一步的实施例中,所述制品管理可以设成自动化,让分发部署变成一种自助式服务。
12.在进一步的实施例中,提供了一种计算机程序其作为权利要求1~8中任一项提及的代码管理、持续集成和交付方法。
13.有益效果:本发明涉及一种嵌入式软件开发的代码管理、持续集成和交付方法及系统,属于嵌入式软件开发领域,本发明通过实现代码质量管理工作,通过配置的代码分析规则,从可靠性、安全性、可维护性、覆盖率、重复率等方面分析项目;持续集成工作,过配置jenkins、版本控制软件和测试报告等插件,实现嵌入式软件持续集成的闭环过程;持续交付及制品管理工作,解决交付包使用ftp或者svn进行管理,管理粒度相对较粗的管理方式,标准化管理软件开发过程中产生的所有制品。从而本发明可以从(1)代码规范,(2)潜在bug,(3)复杂度分析,(4)代码重复度,(5)代码注释,(6)单元测试,(7)详细设计七个维度检
测代码质量,提升代码质量的同时,精细化、数智化管理软件开发过程中遇到的质量问题;同时自动监控代码仓库的正确性,包括代码质量和覆盖率,如果发现问题,则立刻通知开发人员;而且可以在无人值守的情况下自动完成预先设定好的集成任务,达到更平滑和更快交付的效果;以及解决了交付包使用ftp或者svn进行管理,管理粒度相对较粗的管理方式,标准化管理软件开发过程中产生的所有制品,真正实现了一次集成,随时随地运行,真正无缝实现所测即所部署。
附图说明
14.图1是本发明的sonarqube主要工作流程图。
15.图2是本发明的jenkins主要工作流程图。
16.图3是本发明的制品管理工作流程图。
具体实施方式
17.在下文的描述中,给出了大量具体的细节以便提供对本发明更为彻底的理解。然而,对于本领域技术人员而言显而易见的是,本发明可以无需一个或多个这些细节而得以实施;在其他的例子中,为了避免与本发明发生混淆,对于本领域公知的一些技术特征未进行描述。
18.一种嵌入式软件开发的代码管理、持续集成和交付的工作方法,包括:代码质量管理,通过配置的代码分析规则,从可靠性、安全性、可维护性、覆盖率、重复率等方面分析项目;持续集成,过配置jenkins、版本控制软件和测试报告等插件,实现嵌入式软件持续集成的闭环过程;持续交付及制品管理,解决交付包使用ftp或者svn进行管理,管理粒度相对较粗的管理方式,标准化管理软件开发过程中产生的所有制品。
19.在一个实施例中,所述代码质量管理包括以下步骤:步骤1、登陆基于sonarqube的代码质量管理平台;步骤2、通过配置的代码分析规则,从可靠性、安全性、可维护性、覆盖率、重复率等方面分析项目,风险等级从a~e划分为5个等级;步骤3、同时,sonar可以集成pmd、findbugs、checkstyle等插件来扩展使用其他规则来检验代码质量;步骤4、另外,sonar设置了质量门功能,通过设置的质量门评定此次提交分析的项目代码是否达到了规定的要求。
20.在一个实施例中,所述sonarqube平台由4个组件组成:第一组件:一个sonarqube服务器启动3个主要进程:进程1.用于开发人员的web服务器,管理员浏览质量快照并配置sonarqube实例;进程2.基于elasticsearch的搜索服务器可以从页面返回搜索结果;进程3.负责处理代码分析报告并将其保存在sonarqube数据库中的计算机引擎服务器;第二组件:sonarqube数据库存储:
a.sonarqube实例配置文件;b.项目质量快照,视图等;第三组件:多个sonarqube插件安装在服务器上,可能包括语言,scm,集成,身份验证和治理插件;第四组件:一或多个sonarqube扫描器在分析项目,运行在构建或持续集成的服务器上。
21.在一个实施例中,所述持续集成是基于jenkins和+git作为持续集成的工具,通过配置jenkins、版本控制软件和测试报告等插件,实现了嵌入式软件持续集成的闭环过程。
22.在一个实施例中,每个开发版本总是存在多个 feature团队在并行开发不同的功能,每个 feature团队都有自己独立的开发联调环境(对应到 feature分支;开发提交代码到daily、nightly及release分支,jenkins自动监测到对应代码仓库的代码分支变更,然后启动对应的任务进行代码的静态检查,单元测试,编译,打包,如果sonarscanners发现问题,系统则立刻通过邮件的形式通知开发人员。
23.在一个实施例中,所述持续交付及制品管理中控制着制品的按配置规则自动分发部署,是基于nexus搭建的制品管理仓库除了基本的存储功能,还提供了版本控制、访问控制、安全扫描等重要功能,解决了交付包使用ftp或者svn进行管理,管理粒度相对较粗的管理方式,标准化管理软件开发过程中产生的所有制品。
24.在一个实施例中,所述制品是指由源码编译打包生成的二进制文件;制品库是用来统一管理不同格式的软件制品。
25.在一个实施例中,所述制品管理可以设成自动化,让分发部署变成一种自助式服务。
26.在一个实施例中,一种嵌入式软件开发的代码管理、持续集成和交付的工作系统,提供了一种计算机程序其作为权利要求1~8中任一项提及的代码管理、持续集成和交付方法。
27.工作原理,结合附图1至附图3,当本发明进行工作时,分为以下工作:1、代码质量管理基于sonarqube的代码质量管理平台,通过配置的代码分析规则,从可靠性、安全性、可维护性、覆盖率、重复率等方面分析项目,风险等级从a~e划分为5个等级;同时,sonar可以集成pmd、findbugs、checkstyle等插件来扩展使用其他规则来检验代码质量;另外,sonar设置了质量门功能,通过设置的质量门评定此次提交分析的项目代码是否达到了规定的要求。sonarqube平台由4个组件组成:(1)一个sonarqube服务器 启动3个主要进程:a.用于开发人员的web服务器,管理员浏览质量快照并配置sonarqube实例;b.基于elasticsearch的搜索服务器可以从页面返回搜索结果;c.负责处理代码分析报告并将其保存在sonarqube数据库中的计算机引擎服务器;(2)sonarqube数据库存储:a.sonarqube实例配置文件;b.项目质量快照,视图等;
(3)多个sonarqube插件安装在服务器上,可能包括语言,scm,集成,身份验证和治理插件;(4)一或多个sonarqube扫描器在分析项目,运行在构建或持续集成的服务器上。
28.2、持续集成基于jenkins(持续集成服务器(ci server))+git(源代码管理工具,保存源代码和变更记录)作为持续集成的工具,通过配置jenkins、版本控制软件和测试报告等插件,实现了嵌入式软件持续集成的闭环过程。每个开发版本总是存在多个 feature团队在并行开发不同的功能,每个 feature团队都有自己独立的开发联调环境(对应到 feature分支)。开发提交代码到daily、nightly及 release分支,jenkins自动监测到对应代码仓库的代码分支变更,然后启动对应的任务进行代码的静态检查,单元测试,编译,打包,如果sonarscanners发现问题,系统则立刻通过邮件的形式通知开发人员。本方案不仅能够密切监视代码库的正确性,包括代码质量和覆盖率;而且可以在无人值守的情况下自动完成预先设定好的集成任务,通过提供更快地识别和修复集成以及回归相关问题,达到更平滑、更快交付和更少问题的效果。
29.3、持续交付及制品管理制品是指由源码编译打包生成的二进制文件。制品库是用来统一管理不同格式的软件制品。 基于nexus搭建的制品管理仓库除了基本的存储功能,还提供了版本控制、访问控制、安全扫描等重要功能,解决了交付包使用ftp或者svn进行管理,管理粒度相对较粗的管理方式,标准化管理软件开发过程中产生的所有制品。从图3可以看出来【制品管理】就是我们整个流水线的枢纽。首先,它控制着制品的按配置规则自动分发部署,可以避免人工因一时疏忽带来的版本问题;其次,它是可以设成自动化,让分发部署变成一种自助式服务。
30.以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种等同变换,这些等同变换均属于本发明的保护范围。
完整全部详细技术资料下载
当前第1页 1  2 
相关技术
  • 一种高精度自适应弹簧钢拉拔过...
  • 航空发动机叶片冰撞击损伤高精...
  • 对抗样本防御训练方法、分类预...
  • 一种面向大型活动的动态交通出...
  • 一种重排序缓冲区的数据处理方...
  • 与无状态同步节点的托管文件同...
  • 一种机动式多传感器联合的周界...
  • 基于深度学习的电力舆情领域命...
  • 一种基于集成学习的电压互感器...
  • 一种基于分片技术的表格全量采...
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1

PHP网站源码西乡企业网站建设南联企业网站制作大鹏SEO按天收费吉祥英文网站建设龙岗优秀网站设计坪山网站开发广州网络广告推广罗湖网站设计模板福永外贸网站制作坑梓SEO按天计费坂田网站优化按天计费龙岗seo优化大芬至尊标王惠州网站优化软件西乡设计公司网站东莞关键词按天扣费坑梓网站推广系统龙岗seo优化宝安阿里店铺托管石岩网站改版惠州百姓网标王推广民治网站开发大鹏网站定制木棉湾网站建设设计宝安模板制作光明阿里店铺运营横岗百搜标王双龙seo横岗网站制作福田百度关键词包年推广歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化