一、自动化版本控制在实际项目中的应用(论文文献综述)
宋学志[1](2021)在《基于历史演化信息的并发回归缺陷的提取方法研究》文中指出回归缺陷指在程序的开发过程中,由于开发或维护人员错误的修改导致正常的工作的程序功能无法正常运行。研究人员们提出了多种回归缺陷定位技术,但很少有研究工作用于定位多线程环境下的并发回归缺陷。并发回归缺陷研究的一个主要的挑战是社区缺乏用于实验的并发回归数据集。为了促进并发回归缺陷领域的研究,并提供一个有效的研究评价基准,本文主要完成了以下工作:(1)基准项目调研。调研了并发和回归缺陷领域的优秀成果,统计了其中被作为评价基准的开源项目的出现频率,综合项目在开源社区中的关注程度以及在缺陷集成系统中的信息有效性的分析评分,提出了一种针对广泛使用的缺陷跟踪系统中并发回归缺陷报告的过滤方法。(2)源代码关联和代码演化分析。分析了35个JAVA项目以及600多个缺陷报告,并针对这些报告进行相关源代码关联以及代码演化分析的研究,验证了SZZ算法在定位回归缺陷引入更改上的有效性。(3)基准工具构建。构建了一个并发回归缺陷的数据集Con Reg4J,其中包含20个真实缺陷、60可运行的程序及所需环境,以及程序的版本间演化的历史信息。程序缺陷引入版本与缺陷修复版本,最多间隔约700天以及1000万行代码修改。(4)多线程轨迹建模。改进了一种基于程序执行轨迹的回归缺陷定位方法、实现了Mcirobat,并为其添加了多线程轨迹记录和存储特性,还提出了一种动态的多线程轨迹建模方法。总而言之本文作出了以下贡献,1)我们介绍了一种新的并发回归缺陷集Con Reg4J,该数据集可以作为有效的评价基准促进相关领域的研究。2)我们为Microbat添加了并发程序轨迹建模的新特性,以便利基于轨迹的并发回归缺陷定位方法研究。
王斯滕[2](2020)在《基于组合特征与组合分类器的commit分类研究》文中提出近年来,随着互联网行业的不断发展,越来越多的开发人员在以Git Hub为代表的项目托管平台上进行自己的软件开发工作,同时越来越多的研究人员开始通过分析Git Hub上的开源代码仓库研究软件开发相关问题。例如:软件开发团队中的社会多样性、Pull Request持续时间预测、commit与issue之间的关系预测、开发人员性别对于Pull Request接受率的影响等。在项目版本控制系统中存在着许多活动,commit就是其中最常见的一种,了解在软件开发过程中执行的各种活动,有助于提高开发人员的协作开发效率、更好地在软件开发及维护过程中对各种资源进行有效分配,减少不必要的开销,同时也可以更直观地观察到最近一段时间软件开发进展开发及维护人员可以提前规划和分配资源以提高源代码维护效率,从而减少开发过程中不确定性事件的数量并提高成本效益。要了解commit活动,首先应对其进行分类,因此本文研究commit分类方法,以提高分类任务的性能。本文最终将commit分类为Corrective、Perfective和Adaptive三种类型。首先,本文提出了一种组合commit message文本特征与源代码及文件更改特征的commit分类方法。通过BERT深度学习模型提取commit message中的文本特征,通过Change Distiller工具及挖掘本地代码仓库获取源代码及文件更改特征,然后将以向量形式表示的两种特征组合在一起,最后结合深度学习模型构建分类器实现commit分类。然后,本文还提出了一种基于置信度组合分类器的commit分类方法。首先基于BERT深度学习模型建立commit message文本分类器,基于深度神经网络建立源代码及文件更改分类器,然后通过样本准确率计算置信度从而组合分类器,最终通过组合分类器获得最终预测分类结果。最后,本文基于上述两种commit分类方法,在现有开源项目commit历史记录数据集上进行实验,其实验结果表明,基于组合特征的commit分类方法实验准确率达到78%,Kappa系数为69.2%;基于组合分类器的commit分类方法实验准确率为81%,Kappa系数为71.3%。较Levin等的工作,本文组合分类器的commit分类方法实验结果的准确率提高了,Kappa系数提高了。本文结果有效证明了commit message中的上下文信息、源代码和文件更改信息对commit分类任务是具有帮助作用的。
刘成[3](2020)在《基于服务器集群的负载均衡系统的设计与实现》文中研究指明随着医疗行业信息化的发展,医疗系统服务器架构设计这一研究方向深受重视。大多数医疗相关信息系统在进行需求分析、构建设计之时并未考虑到高并发业务流量冲击带来的负载不均和集群无法满足高可用的问题。负载均衡技术作为该问题的一种解决方案,是当下非常热门且研究趋势良好的技术,与传统的单点服务器架构技术相比具有巨大的优势。首先为了实现服务器集群在高并发下的负载均衡,本文针对一致性哈希方法中的数据倾斜问题,对比了现有的数据均衡方案,基于改进一致性哈希设计了一种可扩展、高效的负载均衡方法。该方法构建了虚拟节点最大线性值计算模型和虚拟节点冗余值计算模型,将虚拟节点的构建数量与节点性能值和集群节点数相关联,可以防止哈希倾斜带来的调度不均。接着针对原生master-slave节点主备模型中的主备失效和Session共享问题,对比了现有的主备构建方案和Session共享方案,本文基于选举队列和Redis设计出一种可拓展、可备份的高可用模型。该模型构建了基于选举状态的选举队列,同时将业务逻辑Session管理解耦,可以防止主备失效后缓存数据丢失而造成服务中断。最后本文对系统进行软硬件环境构建,并对功能模块进行原型实现和系统测试,根据测试结果表明该系统在负载均衡和高可用性上满足医疗系统的业务需求。该系统已在医院正式上线运行一年,得到了所有科室医疗工作人员的肯定。
陆光灿[4](2020)在《基于SOAM系统的G公司项目管理改进研究》文中研究说明随着“互联网+”这一互联网发展的新业态,奠定了当今一种新的社会形态,即“互联网+各个传统行业”的社会形态。互联网技术发展之初,诞生了许多互联网公司,包括现在的互联网巨头BAT(百度、阿里、腾讯),在互联网的发展红利中,这些企业飞速发展,在这样的背景下造就了他们在短短几年的时间里,市值就能超过千亿。在互联网+的时代里这样的公司也开始向各行各业扩张,并让传统行业也在互联网上汲取新的发展理念,为公司的信息化发展提供更多的新思路。以G公司为代表的软件公司,在软件开发过程中面对多项目、规模大、周期长、质量要求高等特点。项目管理及质量管理成为软件开发的重要因素,这两个因素已经直接关系软件项目成功与否。因此对G公司这一注重信息化发展而言,能够建立一套成熟的项目管理和质量体系变得十分紧急和重要。本文以G公司作为研究对象,通过梳理项目管理和质量管理的相关理论,结合了G公司实际项目开发的特点及存在的主要问题,根据这些理论,去分析G公司存在的问题并设计解决方案及解决方案的实施跟踪这些工作主要由新建的项目管理办公室来完成。第一章主要描述了研究的背景,研究的内容和结构,国内外对PMO和CMMI研究现状及研究的目的和意义;第二章研究了项目管理办公室和CMMI体系的理论和文献资料,为G公司的管理改进研究提供了理论基础;第三章介绍G公司的组织架构和软件开发的现状,分析了产生问题的原因;第四章针对第三章所分析的问题基于理论和实际情况提出了改进计划和方案;第五章基于改进过程的数据和相关人员评价对改进方案的具体实施情况做具体说明;第六章对实施的成果和实施中的不足做了总结和展望。
董奕飞[5](2020)在《基于CMM模型的自动化生产线软件质量管理研究》文中提出制造业,一直是我国的支柱产业之一。然而,随着经济的发展,工厂的制造成本水涨船高,人力不足,人力成本增加,质量要求高,产能缺口大等问题不断地给工厂带来新的挑战。近年来,随着技术的发展,机器人、自动控制、大数据等新技术越来越多的使用到制造业中,自动化生产线的出现,对缓解上述问题,起到了一定的作用。用机器人取代人力,解决劳动力不足和人力成本上涨的问题,并提升产能和提高产品品质,是我国未来制造业发展的方向之一。软件在自动化生产线的运行中有着举足轻重的作用,其质量的好坏,直接影响着自动化生产线的生产效率。然而,由于此类软件并非可以直接产生利润的产品,长期不受重视,目前许多工厂在开发相应的软件项目的过程中缺乏必要管理,最终造成了软件质量较低,影响了自动化生产线的运行的问题。在软件项目管理方面,目前常用的软件开发管理模型主要有CMM(能力成熟度模型)、CMMI(能力成熟度模型集成)、PSP(个人软件过程)、TSP(团队软件过程)等。然而这些软件开发管理方面的研究成果,在实际应用方面,往往专业的软件公司,针对开发独立软件而是用。在本文所涉及的自动化生产线软件开发项目中,软件往往只是一个零件,除了自身的质量必须保证外,和周边配套设备的交互更为重要。但是目前,在一个系统中把软件当成一个重要部分,进行软件开发管理研究的成果,还略显稀少。本文对自动化生产线软件项目开发的管理方法进行了探索,以某大型电子产品生产厂的一个自动化生产线软件项目为案例,以CMM(能力成熟度模型)为理论指导,对照CMM等级中的各个关键过程域,去改造自动化生产线软件开发的各个环节,以期能形成一套适用于自动化生产线软件开发的管理框架,提高软件的开发质量。
郭健[6](2019)在《基于DevOps的D公司软件项目管理改进研究》文中指出对于以软件产品及相关服务作为主营业务的企业来说,快速交付高质量的软件应用是在市场上发展的前。随着互联网时代的到来,与传统基于PC环境的桌面应用软件相比,市场对基于Web的互联网应用软件出了更高的要求:既需要像传统软件一样快速高效地完成开发,还需要即时快速的部署上线,面对客户持续的反馈进行改进,同时还应保障线上服务的稳定性。国内外对软件企业的项目管理有了很多的研究,通过能力成熟度模型CMM对软件企业的开发过程进行改进,通过敏捷方法实践如Scrum、XP和极限编程等框架高软件开发的效率等。目前这些针对软件项目管理的各类研究,都主要集中在软件的开发过程改进,而对与开发密切相关的测试与运维过程研究较少。本论文的研究主题是通过DevOps理论与实践对基于Web的互联网软件项目测试与运维过程进行改进,进而达到高软件项目整体交付效率,升软件企业市场竞争力的目的。本文首先对软件项目管理的历史和发展进行了回顾,介绍了软件项目管理的特点和各类软件过程管理模型;然后简述了与DevOps密切相关的丰田精益生产、敏捷宣言及体现敏捷原则的开发方法;接下来从软件项目整体价值流的角度说明了敏捷开发的不足以及DevOps在互联网软件项目测试与运维过程中的价值,总结了DevOps在国内外的发展历史和现状,简述了DevOps的三个核心原则;再以作者所在企业D公司的互联网应用软件项目为背景,梳理总结了项目当前所存在的突出问题,采用项目管理工具与技术对其进行了分析;最后,采用DevOps理念和工具对项目存在的诸多问题进行改进实践并对效果进行了评估,肯定了DevOps在软件项目管理方面起到的积极作用,希望研究成果能对企业其他同类型项目以及国内其他企业的类似软件项目供帮助。
郝亮[7](2019)在《面向开源代码复用的程序比对分析技术研究》文中提出随着软件产业的发展和开源运动的兴起,开源软件复用已经成为软件开发过程中的常用手段。复用开源软件在缩短开发周期、降低研发成本、提高软件质量等方面拥有显着优势,大量IT企业以开源软件为基础构建其核心产品,开源软件已成为软件行业中一股重要的新兴势力。尽管开源软件的资源储量非常丰富,然而要做到对现有成果的有效复用却并非易事,其中开源许可证侵权及代码同步更新困难是复用过程中面临的两个挑战。上述两方面挑战是影响开源软件复用的主要障碍,有效的程序比对分析技术是解决此类问题的有效途径。针对上述问题,本文提出了一种以函数为基本单元的代码比对分析方法,细化了分析粒度。结合代码仓库增量分析方法,仅对软件版本快照间变动的内容(后文统称为增量文本)进行分析,有效缩减了分析规模。分析方法大致分为四个步骤:首先,获取软件版本快照间的文本变动内容。然后,设计增量函数提取算法,将增量文本转化为完整的、可执行语法分析的函数。之后根据语法规则提取函数特征信息,并使用Simhash算法将函数转化为对应的二进制哈希数列(即函数指纹),建立代码索引库。最后,利用大数据分析技术实现了函数指纹的比对和溯源,根据比对和溯源结果找到可用的、高质量的、最新的代码。本文首次提出了一种以增量分析为核心、以函数为基本单元的代码比对分析方法,设计了面向开源代码分析的原型系统,可对开源生态系统中的代码进行整体分析。通过构建函数指纹索引库和程序分析原型系统,建立了针对开源代码复用的程序检测公共服务平台,实现了开源资源的有效管理,规避了开源许可证侵权风险。通过上述方法,开发人员不仅可以更容易地定位到原生项目代码仓库中的代码更新,还能在整个开源生态系统中检索到质量更高、开发更为活跃的代码,能够更好的满足开源代码复用中常见的许可证侵权检测及代码同步更新需求。
李煜[8](2019)在《基于Jenkins的DSP处理器驱动自动化测试平台的设计与实现》文中认为目前,数字信号处理器(digital signal processor,DSP)依靠对信号的快速采集、识别处理、变换等功能,在家庭影音、航空航天、工业控制等领域得到了非常广泛的实际应用。DSP的功能完整实现依赖于它的配套驱动软件支持,DSP处理器产品市场竞争愈发激烈,实现敏捷开发变得愈发重要,保证处理器产品研发速度跟上市场需求变化的脚步,这也意味着驱动软件的开发测试需求也随之快速增长。为保证软件质量,同时减少项目中的人工测试重复过程,节省时间经费成本,帮助项目团队进行快速有效决策,搭建DSP处理器驱动自动化测试平台变得十分有必要。本文为解决DSP处理器驱动测试需求,搭建了一种基于Jenkins的持续集成自动化测试平台,利用Jenkins实现DSP处理器驱动的自动化测试,满足了实际项目的测试需求。主要内容如下:首先,通过对自动化测试技术、持续集成技术的国内外研究现状和相关理论基础进行调研,分析实际项目中对DSP处理器驱动自动化测试平台的功能需求。随后,设计基于Jenkins的DSP处理器驱动自动化测试平台的总体框架,使用Windos/Linux PC、视频编码器/解码器EI3拓展板、DSP EZ-KIT等搭建自动化测试硬件平台,对各组成部分及功能进行详细阐述。接着完成软件平台设计:利用持续集成工具Jinkins的Master/Slave架构,进行分布式测试项目构建;引入版本控制系统GitHub/Bitbucket,进行驱动软件和测试脚本等源代码的更新管理;配置驱动编译环境CrossCore Embedded Studio,利用其标准函数库等功能实现对待测驱动软件的编译;编写并介绍在进行DSP音频、视频驱动自动化测试时,主要使用的测试脚本文件。最后,对已搭建好的自动化测试平台进行基础调试以及稳定性测试,展示现场测试环境。结合DSP处理器的Linux音频、视频驱动测试实例,给出了平台完整测试流程,并根据测试日志和Jenkins功能界面对测试结果进行分析,列出自动化测试相较于手动测试方法的优势。该平台成功实现了DSP处理器驱动测试工作的持续集成与自动化,达到测试效率的提升预期。
曾雅蓉[9](2018)在《面向缺陷管理的跨项目知识复用技术研究》文中研究说明软件缺陷管理一直是软件开发活动中很重要的一环。如今,随着开源运动的蓬勃发展,越来越多的开发者将软件项目托管到开源社区。为了吸引来自不同地区的外围贡献者参与到项目的开发进程中来,开源社区提供的协同开发工具趋向于轻量化。一方面,这些轻量级工具简化了项目的贡献机制,为项目吸引了海量贡献;另一方面,汇聚而来的海量贡献质量参差不齐,其中不乏有很多模糊的、质量低的外围贡献,给开源项目的健康发展带来了巨大的隐患。因此,在大众化协同的开源生态下,对开源软件进行自动化的缺陷管理变得格外重要。已有的自动化缺陷管理方法基于传统的机器学习模型,受制于训练样本数量的多少。对于一些新的或是没有足够历史数据的项目,无法在项目内构建一个好的预测模型。因此,为了解决样本不足的项目的缺陷管理问题,本文基于开源社区Github中的大规模数据集,对面向缺陷管理的跨项目知识复用技术进行了探索研究。论文的主要贡献总结如下:第一,基于开源社区累积的数据资源,分别对项目内的质量以及项目间的关联关系进行了量化评估,提出了面向开源项目的多维量化度量体系,其中包括项目内质量评估度量(包含4个维度、9个度量指标),以及项目间关联关系度量(包含3个维度、15个度量指标)。另外,我们提出了基于多维度量的项目质量评估方法,并通过实验验证了该方法的有效性。第二,基于项目间多维关系度量,分别在缺陷预测和缺陷报告分类场景下对跨项目的可迁移性进行了深入分析。通过对Github社区中高质量项目集进行实证分析,我们发现:在缺陷报告分类场景中,项目间参与人员的交集大小对跨项目可迁移性影响最大,两个项目的共同参与者越多,跨项目分类效果就越好;在缺陷预测场景中,源项目模型的自身预测效果对跨项目可迁移性影响最大,源项目模型在项目内的预测准确率越高,跨项目的预测效果就越好。第三,基于跨项目的可迁移性分析结果,我们提出了一个高效的跨项目集成预测方法。基于Github社区的大规模数据集,分别在缺陷预测与缺陷报告分类的场景下验证了算法的有效性,发现我们的方法能够达到比较好的预测效果。
杨湛宇[10](2018)在《面向开源软件复用的程序增量分析技术研究》文中研究表明复用开源软件对缩短产品研发时间、降低研发成本、提高软件质量具有重要意义。代码侵权检测、质量评价及同步更新是开源软件复用过程中的三个重要环节,此三者均依赖于高效的程序分析方法支撑。现有的程序分析方法主要识别完整的语法结构,分析时间依赖于整体代码规模,缺乏对开源代码仓库的高效分析支持,没有有效利用开源代码仓库中快照间的高度相似性特点,难以满足海量开源代码的高效分析需求。为解决上述问题,本文提出了一种面向开源软件复用的程序增量分析技术,针对开源代码仓库的存储特点,仅对变更的函数进行增量分析,从而有效减少分析规模。本文的增量分析方法利用了开源代码仓库中相邻快照间高度相似这一特点。首先,获取快照间的增量文本变更,通过映射算法将文本格式的变更转换成可分析的函数对象,从而获得增量函数集合。然后,设计了面向开源软件复用的程序分析器,实现了函数信息获取。为了实现函数的快速比对,本文结合N-gram模型设计了一种函数指纹计算方法,并给出了基于函数指纹的相似度比对方法。在此基础上,构建了函数指纹索引库,针对上述三方面的开源代码复用挑战,提出了相应的解决策略。最后,设计了四组实验进行验证,实验结果证实了上述增量分析方法的有效性。本文首次提出了面向开源软件复用的开源代码仓库增量分析方法,有效减少了开源代码的分析规模,有助于提高整体分析速度、降低分析结果存储大小,能有效满足大规模开源代码仓库的海量分析需求。本研究成果不仅在开源代码复用领域有重要应用价值,在其它领域也有广泛的应用前景。
二、自动化版本控制在实际项目中的应用(论文开题报告)
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
本文主要提出一款精简64位RISC处理器存储管理单元结构并详细分析其设计过程。在该MMU结构中,TLB采用叁个分离的TLB,TLB采用基于内容查找的相联存储器并行查找,支持粗粒度为64KB和细粒度为4KB两种页面大小,采用多级分层页表结构映射地址空间,并详细论述了四级页表转换过程,TLB结构组织等。该MMU结构将作为该处理器存储系统实现的一个重要组成部分。
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
三、自动化版本控制在实际项目中的应用(论文提纲范文)
(1)基于历史演化信息的并发回归缺陷的提取方法研究(论文提纲范文)
摘要 |
ABSTRACT |
第1章 绪论 |
1.1 研究背景 |
1.2 国内外研究现状 |
1.2.1 回归缺陷定位技术 |
1.2.2 缺陷数据集 |
1.3 本文研究内容 |
1.3.1 缺陷提取 |
1.3.2 轨迹记录 |
1.4 本文章节安排 |
第2章 相关技术介绍 |
2.1 缺陷跟踪管理 |
2.2 演化版本控制 |
2.3 虚拟环境隔离技术 |
2.4 SZZ算法 |
2.5 插桩技术 |
2.6 符号说明 |
2.7 本章小结 |
第3章 基于历史演化信息的并发回归缺陷提取方法 |
3.1 引言 |
3.2 方法准备 |
3.2.1 基本定义 |
3.2.2 扩展定义 |
3.3 方法流程 |
3.4 源数据收集 |
3.4.1 候选程序收集 |
3.4.2 缺陷相关性过滤 |
3.5 代码演化分析 |
3.5.1 BFC定位 |
3.5.2 LWC和 BIC模糊定位 |
3.5.3 TCs传播 |
3.6 本章小结 |
第4章 并发回归缺陷基准与并发轨迹建模 |
4.1 引言 |
4.2 方法流程 |
4.3 基准构建 |
4.3.1 特性规定 |
4.3.2 特性添加 |
4.3.3 ConReg4J |
4.4 并发轨迹建模 |
4.4.1 抽象轨迹建模 |
4.4.2 并发轨迹建模 |
4.5 本章小结 |
第5章 数据集工具和基于轨迹的调试工具 |
5.0 引言 |
5.1 数据集工具需求分析 |
5.2 调试工具需求分析 |
5.3 数据集工具设计 |
5.4 调试工具设计 |
5.4.1 结构化数据存储 |
5.4.2 UI界面显示 |
5.4.3 代码结构 |
5.5 数据集工具实现 |
5.5.1 安装和部署 |
5.5.2 程序启动与导航 |
5.5.3 回归信息探索 |
5.5.4 缺陷引入探索 |
5.5.5 缺陷修复信息探索 |
5.5.6 运行测试用例 |
5.5.7 贡献新的数据 |
5.6 调试工具实现 |
5.6.1 多线程轨迹展示 |
5.6.2 可疑轨迹推荐 |
5.7 本章小结 |
第6章 总结和展望 |
6.1 总结 |
6.2 展望 |
参考文献 |
攻读学位期间发表或录用的学术论文 |
致谢 |
(2)基于组合特征与组合分类器的commit分类研究(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 研究背景及意义 |
1.2 国内外研究现状 |
1.3 研究内容及创新 |
1.4 论文结构及其安排 |
第二章 相关背景知识介绍 |
2.1 分布式版本控制系统Git |
2.2 文本分类方法 |
2.2.1 支持向量机模型 |
2.2.2 BERT深度学习模型 |
2.3 源代码更改提取工具 |
2.4 评估指标 |
2.5 本章小结 |
第三章 组合特征的commit分类 |
3.1 总体概览 |
3.2 commit message文本特征的提取 |
3.2.1 获取commit message |
3.2.2 commit message短文本预处理 |
3.2.3 短文本向量化 |
3.3 commit中源代码和文件更改特征的提取 |
3.4 特征融合 |
3.5 commit分类实现 |
3.6 本章小结 |
第四章 组合分类器的commit分类 |
4.1 总体概览 |
4.2 commit message文本分类器的构建 |
4.3 源代码更改分类器的构建 |
4.4 获取置信度 |
4.5 commit分类实现 |
4.6 本章小结 |
第五章 实验与结果分析 |
5.1 实验环境 |
5.1.1 硬件环境 |
5.1.2 开发环境 |
5.2 实验数据 |
5.3 Baseline |
5.4 实验结果分析 |
5.4.1 准确性和Kappa系数结果分析 |
5.4.2 准确性和Kappa系数指标假设检验分析 |
5.4.3 源代码和文件更改特征重要性分析 |
5.5 有效性威胁 |
5.6 本章小结 |
第六章 总结与展望 |
6.1 总结 |
6.2 展望 |
参考文献 |
附录1 攻读硕士学位期间申请的专利 |
致谢 |
(3)基于服务器集群的负载均衡系统的设计与实现(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 研究背景及意义 |
1.2 课题来源及研究内容 |
1.3 本文的组织架构 |
第二章 相关技术研究 |
2.1 基础知识 |
2.1.1 集群技术 |
2.1.2 负载均衡技术 |
2.2 服务器集群负载均衡技术研究 |
2.2.1 国内研究现状 |
2.2.2 国外研究现状 |
2.2.3 小结 |
2.3 服务器集群高可用技术研究 |
2.3.1 国内研究现状 |
2.3.2 国外研究现状 |
2.3.3 小结 |
2.4 本章小结 |
第三章 基于服务器集群的负载均衡系统总体设计 |
3.1 系统模块分析 |
3.1.1 系统的设计目标 |
3.1.2 系统的功能分析 |
3.2 总体架构设计 |
3.2.1 系统总体架构 |
3.2.2 系统网络部署总体架构 |
3.3 系统功能设计 |
3.3.1 用户管理子系统设计 |
3.3.2 版本控制子系统设计 |
3.3.3 负载均衡子系统设计 |
3.3.4 集群高可用子系统设计 |
3.3.5 集群状态监控子系统设计 |
3.4 数据库设计 |
3.5 本章小结 |
第四章 基于改进一致性哈希的负载均衡方法 |
4.1 一致性哈希在负载均衡中的现存问题 |
4.2 基于改进一致性哈希的负载均衡方法详细设计 |
4.2.1 虚拟节点数量计算模型 |
4.2.2 节点性能比 |
4.2.3 虚拟节点最大线性值 |
4.2.4 虚拟节点冗余值 |
4.3 实验与分析 |
4.3.1 实验环境与方法 |
4.3.2 实验结果与分析 |
4.4 本章小结 |
第五章 基于Redis的服务器集群高可用模型 |
5.1 高可用模型在服务器集群中的现存问题 |
5.2 基于Redis的高可用模型详细设计 |
5.2.1 架构设计 |
5.2.2 集群主备构建策略 |
5.2.3 Session共享策略 |
5.3 实验与分析 |
5.3.1 实验环境与方法 |
5.3.2 实验结果与分析 |
5.4 本章小结 |
第六章 系统原型实现与测试 |
6.1 系统环境 |
6.1.1 硬件环境 |
6.1.2 软件环境 |
6.2 系统原型实现 |
6.2.1 用户管理子系统原型 |
6.2.2 版本控制子系统原型 |
6.2.3 集群高可用子系统原型 |
6.3 系统功能测试 |
6.3.1 用户登陆测试 |
6.3.2 版本控制测试 |
6.3.3 集群高可用测试 |
6.3.4 负载均衡测试 |
6.4 本章小结 |
第七章 总结与展望 |
7.1 总结 |
7.2 展望 |
参考文献 |
附录1 攻读硕士学位期间申请的专利 |
附录2 攻读硕士学位期间参加的科研项目 |
(4)基于SOAM系统的G公司项目管理改进研究(论文提纲范文)
摘要 |
abstract |
第1章 绪论 |
1.1 研究背景 |
1.2 研究内容与方法 |
1.2.1 研究内容 |
1.2.2 研究方法 |
1.3 国内外研究现状 |
1.3.1 国外对PMO的研究现状 |
1.3.2 国内对PMO的研究现状 |
1.3.3 国外对CMMI的研究现状 |
1.3.4 国内对CMMI的研究现状 |
1.4 研究目的和意义 |
第2章 理论基础与文献综述 |
2.1 CMMI的发展与概述 |
2.1.1 CMMl发展历史 |
2.1.2 CMMl概述 |
2.2 CMMI理论基础 |
2.2.1 CMMI过程域 |
2.2.2 成熟度模型等级 |
2.3 PMO的发展与概述 |
2.3.1 PMO的起源及发展 |
2.3.2 PMO概述 |
2.3.3 PMO的构建过程 |
2.4 PMO理论基础 |
第3章 G公司项目现状分析 |
3.1 G公司SOAM项目概述 |
3.2 SOAM系统的开发现状 |
3.3 SOAM系统行业价值分析 |
3.3.1 产品功能的市场价值 |
3.3.2 竞争对手的产品 |
3.3.3 功能的优势与劣势分析 |
3.4 SOAM系统在项目管理过程中存在的问题 |
3.4.1 项目管理规范化、流程化意识不足 |
3.4.2 项目管理体系不完善 |
3.4.3 质量管理、监督不到位 |
3.4.4 缺乏经验总结 |
第4章 SOAM系统项目管理改进方案设计 |
4.1 提高人员意识 |
4.2 项目管理体系建立 |
4.2.1 PMO基准的确认 |
4.2.2 PMO规范的过程组 |
4.3 质量管理方案的设计 |
4.3.1 质量管理方案 |
4.3.2 CMMI检查单 |
4.3.3 工具使用 |
4.4 经验总结 |
4.4.1 经验数据库方案设计 |
4.4.2 培训方案设计 |
第5章 SOAM系统项目管理改进方案实施 |
5.1 提高人员意识实施情况 |
5.2 项目管理方案实施情况 |
5.2.1 组织机构调整 |
5.2.2 PMO实施情况 |
5.3 质量管理方案实施情况 |
5.3.1 产品质量数据实证 |
5.3.2 CMMI检查单实施情况 |
5.4 经验总结效果评价 |
5.4.1 经验数据库的应用 |
5.4.2 培训效果评价 |
第6章 总结与展望 |
6.1 总结 |
6.2 不足和展望 |
致谢 |
参考文献 |
(5)基于CMM模型的自动化生产线软件质量管理研究(论文提纲范文)
摘要 |
ABSTRACT |
第一章 绪论 |
1.1 研究背景 |
1.2 研究的目的和意义 |
1.3 解决的关键问题 |
1.4 研究的方法 |
1.5 软件开发管理的相关研究 |
第二章 理论基础 |
2.1 能力成熟度模型(CMM) |
2.2 关键过程域 |
2.3 个人软件过程(PSP) |
第三章 自动化生产线软件开发的问题分析 |
3.1 自动化生产线软件的特点 |
3.2 软件开发目前存在的问题 |
第四章 节点内容设计 |
4.1 项目节点框架 |
4.2 节点内容 |
4.3 工作进度管理 |
第五章 项目过程设计 |
5.1 软件项目过程计划 |
5.2 项目工作量预估 |
5.3 制定项目计划 |
5.4 WBS工作分解与人员分配 |
5.5 五大主要流程 |
第六章 改进前后项目实施的比较 |
6.1 CMM2级的关键过程域的改进 |
6.2 CMM3级的关键过程域的改进 |
6.3 改进前后软件质量的比较 |
第七章 结论 |
参考文献 |
致谢 |
(6)基于DevOps的D公司软件项目管理改进研究(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 研究背景与意义 |
1.2 国内外研究历史与现状 |
1.3 研究内容与方法 |
1.3.1 研究内容 |
1.3.2 研究方法 |
1.4 本论文的结构安排 |
1.5 本章小结 |
第二章 理论综述 |
2.1 软件项目管理 |
2.1.1 软件项目管理的目的 |
2.1.2 软件项目管理的内容 |
2.1.3 软件项目管理的特点 |
2.2 软件过程模型 |
2.2.1 瀑布开发模型 |
2.2.2 快速原型模型 |
2.2.3 螺旋模型 |
2.2.4 增量模型 |
2.2.5 迭代模型 |
2.3 DevOps |
2.3.1 DevOps相关理念 |
2.3.2 DevOps理论发展历史 |
2.3.3 DevOps核心原则 |
2.4 本章小结 |
第三章 D公司酒店电视二期项目现状 |
3.1 项目背景 |
3.1.1 公司简介 |
3.1.2 项目简介 |
3.2 组织结构与流程 |
3.2.1 项目组织结构 |
3.2.2 项目管理流程 |
3.3 项目管理的现状 |
3.3.1 运维过程耗时多 |
3.3.2 测试过程效率低 |
3.3.3 部署与交付频率低 |
3.3.4 项目内外沟通少 |
3.4 原因分析 |
3.4.1 归纳原因 |
3.4.2 梳理关系 |
3.4.3 确定改进重点 |
3.4.4 改进方案评估标准与度量指标 |
3.5 本章小结 |
第四章 酒店电视三期项目改进 |
4.1 组织结构改进 |
4.2 流程改进 |
4.2.1 审批流程简化 |
4.2.2 部署过程改进 |
4.2.3 测试过程改进 |
4.2.4 运维过程改进 |
4.3 沟通与能力改进 |
4.3.1 重塑项目组文化 |
4.3.2 开展运维技能培训 |
4.3.3 使用ChatOps技术快速共享信息 |
4.3.4 建立项目知识共享平台 |
4.4 改进结果 |
4.5 本章小结 |
第五章 评估与总结 |
5.1 全文总结 |
5.2 后续工作展望 |
致谢 |
参考文献 |
(7)面向开源代码复用的程序比对分析技术研究(论文提纲范文)
摘要 |
ABSTRACT |
1 绪论 |
1.1 研究背景及意义 |
1.2 国内外研究现状 |
1.3 工作内容 |
1.4 课题来源 |
1.5 论文结构 |
2 相关技术介绍 |
2.1 版本控制软件 |
2.1.1 SVN |
2.1.2 Git |
2.2 词法分析器 |
2.3 语法分析器 |
2.4 哈希算法 |
2.4.1 传统哈希算法 |
2.4.2 局部敏感哈希算法 |
2.5 海量数据搜索技术 |
2.6 本章小结 |
3 程序比对分析方法 |
3.1 获取仓库代码 |
3.1.1 获取完整的仓库代码 |
3.1.2 获取增量文本 |
3.2 完整和增量语法分析 |
3.2.1 完整语法分析 |
3.2.2 增量函数提取 |
3.3 构造函数指纹 |
3.3.1 词法分析 |
3.3.2 Simhash函数指纹构造算法 |
3.4 相似度计算和比对分析 |
3.5 代码侵权检测和代码同步更新实现机制 |
3.5.1 开源许可证侵权检测 |
3.5.2 代码同步更新 |
3.6 本章小结 |
4 原型系统的设计与实现 |
4.1 原型系统客户端实现 |
4.2 原型系统服务端实现 |
4.2.1 函数指纹数据库表结构设计 |
4.2.2 函数指纹检索接口设计 |
4.3 本章小结 |
5 原型系统分析能力验证 |
5.1 实验1:代码分析效率对比 |
5.2 实验2:工程相似度判定能力验证 |
5.3 实验3:函数更新能力验证 |
5.4 实验4:海量函数指纹检索能力验证 |
6 总结与展望 |
6.1 结论 |
6.2 主要贡献 |
6.3 未来的工作 |
参考文献 |
个人简介 |
导师简介 |
获得成果 |
致谢 |
(8)基于Jenkins的DSP处理器驱动自动化测试平台的设计与实现(论文提纲范文)
摘要 |
ABSTRACT |
1 绪论 |
1.1 项目背景及意义 |
1.2 DSP处理器驱动测试概况 |
1.3 国内外研究现状 |
1.3.1 自动化测试国内外研究现状 |
1.3.2 持续集成国内外研究现状 |
1.4 论文结构安排 |
2 DSP处理器驱动自动化测试平台需求分析 |
2.1 测试需求 |
2.2 测试对象 |
2.2.1 DSP处理器 |
2.2.2 DSP测试评估板 |
2.2.3 DSP处理器驱动 |
2.2.4 驱动测试技术基础 |
2.3 自动化测试平台需求分析 |
2.4 本章小结 |
3 DSP处理器驱动自动化测试平台的设计 |
3.1 自动化测试平台的总体框架 |
3.2 自动化测试硬件平台架构 |
3.2.1 硬件平台架构 |
3.2.2 硬件平台各组成模块及其功能 |
3.3 自动化测试软件平台架构 |
3.4 持续集成工具Jenkins的搭建与配置 |
3.4.1 Jenkins的安装与运行环境 |
3.4.2 Jenkins的Master/Slave架构 |
3.4.3 Jenkins的项目配置 |
3.5 版本控制系统GitHub/Bitbucket |
3.6 驱动编译环境CCES |
3.6.1 CCES的安装与图形界面介绍 |
3.6.2 CCES的功能实现 |
3.7 测试脚本设计 |
3.8 本章小结 |
4 DSP处理器驱动自动化测试实例 |
4.1 平台基础调试及稳定性测试 |
4.2 测试环境 |
4.3 测试内容 |
4.3.1 Linux音频驱动测试 |
4.3.2 Linux视频驱动测试 |
4.4 测试流程 |
4.5 测试结果分析 |
4.6 本章小结 |
5 总结与展望 |
5.1 本文工作总结 |
5.2 后续工作展望 |
参考文献 |
攻读硕士学位期间发表的学术论文和科研工作 |
致谢 |
(9)面向缺陷管理的跨项目知识复用技术研究(论文提纲范文)
摘要 |
ABSTRACT |
第一章 绪论 |
1.1 课题研究背景 |
1.1.1 开源社区趋向于采用轻量级的协同管理工具 |
1.1.2 开源生态下软件缺陷管理变得格外重要 |
1.1.3 项目内缺陷管理技术受制于样本集的大小 |
1.2 相关研究现状 |
1.2.1 自动化缺陷报告分类 |
1.2.2 自动化缺陷预测 |
1.2.3 跨项目预测方法 |
1.3 研究内容与贡献 |
1.4 论文结构 |
第二章 项目多维度量挖掘 |
2.1 引言 |
2.1.1 问题背景 |
2.1.2 相关工作 |
2.2 项目多维度量挖掘 |
2.2.1 项目内质量评估度量 |
2.2.2 项目间关联关系度量 |
2.3 实验设计与结果分析 |
2.3.1 实验设计 |
2.3.2 实验度量指标 |
2.3.3 实验结果及分析 |
2.4 本章小结 |
第三章 基于多维度量的跨项目可迁移性建模分析 |
3.1 引言 |
3.1.1 问题背景 |
3.1.2 相关工作 |
3.2 可迁移性建模分析 |
3.3 实验设计及结果分析 |
3.3.1 实验一:缺陷报告分类 |
3.3.2 实验二:缺陷预测 |
3.3.3 实验小结 |
3.4 本章小结 |
第四章 跨项目集成预测方法研究 |
4.1 引言 |
4.1.1 问题背景 |
4.1.2 相关工作 |
4.2 跨项目集成预测方法 |
4.3 实验设计及结果分析 |
4.3.1 实验一:缺陷报告分类 |
4.3.2 实验二:缺陷预测 |
4.3.3 实验小结 |
4.4 本章小结 |
第五章 总结与展望 |
5.1 工作总结 |
5.2 工作展望 |
致谢 |
参考文献 |
作者在学期间取得的学术成果 |
(10)面向开源软件复用的程序增量分析技术研究(论文提纲范文)
摘要 |
ABSTRACT |
1 绪论 |
1.1 研究背景及意义 |
1.2 国内外研究现状 |
1.3 本文的主要内容 |
1.4 课题的来源及意义 |
1.5 论文结构 |
2 相关技术介绍 |
2.1 版本控制系统 |
2.1.1 中央式版本控制系统 |
2.1.2 分布式版本控制系统 |
2.2 N-gram模型 |
2.3 程序分析技术 |
2.3.1 上下文无关文法 |
2.3.2 LL(k)分析方法 |
2.3.3 LR(k)分析方法 |
2.4 语法分析器自动生成器 |
2.4.1 确定性分析器生成器 |
2.4.2 非确定性分析器生成器 |
2.5 本章小结 |
3 开源代码仓库增量程序分析方法 |
3.1 增量文本变更的获取 |
3.2 文本至函数的映射 |
3.2.1 文本变更的格式处理 |
3.2.2 函数集合的存储格式 |
3.2.3 定位修改的函数 |
3.2.4 新增函数检测 |
3.3 分析器的实现 |
3.3.1 Flex词法分析模块 |
3.3.2 Bison语法分析模块 |
3.4 函数指纹生成 |
3.4.1 Token序列生成 |
3.4.2 N-gram指纹构造 |
3.4.3 相似度比对算法 |
3.5 索引库的构建 |
3.6 增量分析方法的应用 |
3.6.1 许可证侵权检测的解决方案 |
3.6.2 代码质量评估的解决方案 |
3.6.3 代码同步更新的解决方案 |
3.7 本章小结 |
4 增量分析的有效性验证 |
4.1 单一文件分析能力的验证 |
4.2 完整项目分析能力的验证 |
4.3 函数指纹算法的有效性验证 |
4.4 代码复用关系分析能力的验证 |
4.5 本章小结 |
5 总结与展望 |
5.1 结论 |
5.2 贡献 |
5.3 未来的工作 |
参考文献 |
个人简介 |
导师简介 |
获得成果目录 |
致谢 |
四、自动化版本控制在实际项目中的应用(论文参考文献)
- [1]基于历史演化信息的并发回归缺陷的提取方法研究[D]. 宋学志. 东华大学, 2021(01)
- [2]基于组合特征与组合分类器的commit分类研究[D]. 王斯滕. 南京邮电大学, 2020(03)
- [3]基于服务器集群的负载均衡系统的设计与实现[D]. 刘成. 南京邮电大学, 2020(03)
- [4]基于SOAM系统的G公司项目管理改进研究[D]. 陆光灿. 吉林大学, 2020(08)
- [5]基于CMM模型的自动化生产线软件质量管理研究[D]. 董奕飞. 天津工业大学, 2020(01)
- [6]基于DevOps的D公司软件项目管理改进研究[D]. 郭健. 电子科技大学, 2019(04)
- [7]面向开源代码复用的程序比对分析技术研究[D]. 郝亮. 北京林业大学, 2019(04)
- [8]基于Jenkins的DSP处理器驱动自动化测试平台的设计与实现[D]. 李煜. 东华大学, 2019(03)
- [9]面向缺陷管理的跨项目知识复用技术研究[D]. 曾雅蓉. 国防科技大学, 2018(02)
- [10]面向开源软件复用的程序增量分析技术研究[D]. 杨湛宇. 北京林业大学, 2018(04)