„Salesforce“ verslo sistemos versijų kontrolės uždavinių automatizavimas „GitHub“ aplinkoje
Santrauka
Baigiamajame magistro darbe nagrinėjamas „Salesforce“ verslo sistemos versijų kontrolės uždavinių automatizavimas „GitHub“ aplinkoje. Licencijuojamoms, uždarojo kodo verslo sistemoms nėra paprasta pritaikyti versijų kontrolę. Todėl yra svarbu sukurti metodą vykdyti versijų kontrolę verslo sistemai ir pritaikyti versijų kontrolės uždavinių automatizaciją. Analitinėje dalyje išnagrinėtos versijų kontrolės sistemos, jų uždaviniai ir galimi automatizavimo būdai ir apžvelgiamas versijų kontrolės naudojimas „Salesforce“ verslo sistemoje. Pagal probleminės srities analizę apibrėžiamas konkrečios verslo srities kūrimo procesas ir nustatomos galimos automatizacijos: automatinis pakeitimų perkėlimas tarp versijų kontrolės sistemos ir „Salesforce“ aplinkų, automatinis testavimas, automatinis testavimo užduočių kūrimas ir automatinis konfliktų sprendimas versijų kontrolės sistemoje. Šios automatizacijos įgyvendinamos „GitHub“ versijų kontrolės aplinkoje taikant „GitHub Actions“ platformą. Šioms automatizacijoms yra atliekami du eksperimentiniai tyrimai: kūrimo proceso automatizacijos tyrimas ir automatinio konfliktų sprendimo realizacijos tyrimas. Gauti rezultatai parodė, kad versijų kontrolės uždavinių automatizavimas sumažino laiko sąnaudas dviejų savaičių laikotarpyje 81,48 %, o automatinio konfliktų sprendimo realizacijos tikslumas yra 34,78 %. Išnagrinėjus literatūrą, probleminę sritį, praktiškai pritaikius prototipą ir ištyrus jį eksperimentiškai pateikiamos baigiamojo darbo išvados. Darbą sudaro 6 dalys: įvadas, literatūros analizė, siūlomo metodo aprašymas, prototipo aprašymas ir eksperimentinis tyrimas, išvados, literatūros sąrašas. Darbo apimtis – 80 puslapiai teksto be priedų, 33 iliustracijų, 7 lentelės, 28 bibliografiniai šaltiniai. The master’s thesis investigates the automation of version control processes for the Salesforce business system on the GitHub platform. It is not easy to apply version control to licensed, closed-code business systems. Therefore, it is important to develop a method to implement version control for a business system and to apply the automation of version control processes. The literature analysis part of this study examines version control systems, the processes that use them and possible automation methods, and investigates the use of version control in a Salesforce business system. Based on the problem domain analysis, the development process for a specific business system is defined and possible automations are identified: the automatic migration of changes between version control system and Salesforce environments, the automatic testing, the automatic creation of testing tasks and the automatic conflict solution in the version control system. These automations are implemented in the GitHub version control platform using GitHub Actions. Two experimental studies are applied to implementation of these automations: a study on the automation of the development process and a study on the implementation of automatic conflict solution. The results obtained show that the automation of the version control tasks reduced the time wastage over a two-week period 81,48 % and the accuracy of the automatic conflict solution is 34,78%. After the literature review, the analysis of the problem domain, the practical application of the prototype and the experimental testing, the conclusions of the master’s thesis are presented. The thesis consists of 6 parts: introduction, literature analysis, description of the proposed method, description of the prototype and the experimental research, conclusion, references. Thesis consists of 80 p. text without appendixes, 33 pictures, 7 tables and 28 bibliographical entries.