Font Size: a A A

The Design And Implementation Of Continuous Integration Tool With Process Auto-Adjustment Based On Neural Network

Posted on:2020-10-19Degree:MasterType:Thesis
Country:ChinaCandidate:X GuoFull Text:PDF
GTID:2428330575958291Subject:Engineering
Abstract/Summary:PDF Full Text Request
Many researches have proved that DevOps is effective in speeding up project workflow and improving productivity in the enterprise and IT team.But unexpectedly,the teams that actually apply DevOps in practice are still very few.There are various factors leading to its low utilization rate.One reason the majority agreed in common is that enterprises and teams are not familiar with DevOps.While some others consider that the transform of original architecture into DevOps costs too high.Particularly,the most important problem is that there is no platform to help implement complete De-vOps process.This thesis focuses on the current condition of continuous integration process in DevOps.First,nowadays continuous integration process cannot be flexible at all.It cannot make real-time adjustments targeted at dynamic development context.Secondly,the cost of continuous integration grows and would probably cause the delay of project delivery as the software scale grows.Finally,the frequency of integration is difficult to be well-scheduled.Too low frequency of integration will lead to the de-crease of code quality while too high frequency will result in the increase of resource and cost.Confronted with these challenges,this thesis contributed to the design of DevOps platform based on pipeline.The whole continuous software delivery process could be implemented in this DevOps platform,including continuous development,continuous integration,automated testing,container management and other procedures in DevOp-s.Especially,this thesis put more emphasis on continuous integration.A continuous integration framework with process auto-adjustment is proposed.The automation tool designed for the framework is applied in the continuous integration module of De-vOps platform.The continuous integration framework take advantage of feedforward neural network which can be self-learning and adaptive.It can continuously make au-tomatic adjustment and decision-making optimization based on historical information and integration data.Furthermore,it could forecast the best opportunity to have next integration.This provides scientific advice for IT team to balance development and integration.In order to verify the stability and universality of the framework,this thesis select-ed 11 projects in GitLab with high stars and continuous integration/continuous delivery process for framework test.The results show that this framework can achieve at about 70%prediction accuracy rate when the frequency of history integration is not sufficient enough.But when the framework can obtain a 10%or more integration rate,the predic-tion accuracy can reach 80-90%.Moreover,the cost value of the framework for each project shows a decreasing tendency which is actually the optimization of feedforward neural network.The cost value of each project decreased by 0.05 to 0.27,and finally stabilized at around 0.3-0.6.Therefore,the project team can increase the integration frequency as much as possible when the application scale is small,and apply this tool to guide further continuous integration process when the application become complex and heavyweight.This could help team avoid unnecessary integration and then obtain both quality and efficiency in software delivery.
Keywords/Search Tags:DevOps, Continuous Integration, Neural Network, Process Auto-Adjustment
PDF Full Text Request
Related items