Citation: Buttar, A.M.; Khalid, A.;
Alenezi, M.; Akbar, M.A.; Rafi, S.;
Gumaei, A.H.; Riaz, M.T.
Optimization of DevOps
Transformation for Cloud-Based
Applications. Electronics 2023, 12, 357.
https://doi.org/10.3390/
electronics12020357
Academic Editor: Antonio Brogi
Received: 29 October 2022
Revised: 22 December 2022
Accepted: 4 January 2023
Published: 10 January 2023
Copyright: © 2023 by the authors.
Licensee MDPI, Basel, Switzerland.
This article is an open access article
distributed under the terms and
conditions of the Creative Commons
Attribution (CC BY) license (https://
creativecommons.org/licenses/by/
4.0/).
electronics
Article
Optimization of DevOps Transformation for
Cloud-Based Applications
Ahmed Mateen Buttar
1
, Adeel Khalid
1
, Mamdouh Alenezi
2
, Muhammad Azeem Akbar
3,
* , Saima Rafi
4
,
Abdu H. Gumaei
5
and Muhammad Tanveer Riaz
6,7
1
Department of Computer Science, University of Agriculture Faisalabad, Faisalabad 38000, Pakistan
2
Software Engineering and Disruptive Innovation (SEDI), College of Computer and Information Sciences,
Prince Sultan University, Riyadh 11586, Saudi Arabia
3
Software Engineering Department, LUT University, 15210 Lahti, Finland
4
Department of Informatics and Systems, University of Murcia, 30100 Murcia, Spain
5
Department of Computer Science, College of Computer Engineering and Sciences, Prince Sattam bin
Abdulaziz University, Al-Kharj 11942, Saudi Arabia
6
Department of Mechanical, Mechatronics and Manufacturing Engineering, University of Engineering and
Technology Lahore Faisalabad Campus, Faisalabad 38000, Pakistan
7
Department of Electrical, Electronic, and Information Engineering, Università di Bologna, 40136 Bologna, Italy
* Correspondence: azeem.akbar@lut.fi or ahmedmatin@hotmail.com
Abstract: Rapid software development is critical for meeting company objectives and competing
more effectively in the competitive IoT infrastructure. DevOps is a growing technique that enables
enterprises to provide high-quality software capabilities through automation, to improve team
communication, and to increase efficiency across the software product lifecycle. Research problem:
Due to the increased demand for new products and technologies, a huge overwork shifted on the
organizations for introducing software with pace and to become stable to compete with others. Due to
this, the majority of organizations prefer an automated system for product development and require
cloud-based applications. The git version control system is used for version management and Docker
is used to package code and provide libraries. AWS services are leveraged to deploy an application as
a cloud. Jenkins is used as a CI/CD pipeline to manage various phases of development and to make
the development process continuous. The ELK stack is used to monitor and visualize the execution
of code. In light of the findings, DevOps is an efficient method for cloud application deployment
and resource selection based on the relative importance of each optimized objective in terms of value
parameters such as cost, memory, and CPU capacity, and that the method can be tailored to specific
application requirements. The findings of this analysis indicate that an application can be deployed
to the cloud using DevOps techniques. The proposed approach cost 60% less at full weight 1.0 and
11.3% less with no weight compared to the benchmark solution’s 15.078%
Keywords: DevOps; cloud pipelines; continuous integration; continuous development
1. Introduction
Modern technology contributes to our life by providing tools and it’s also helping us
to improve our working conditions. Due to the growing demand for new products and
technologies, businesses are distributing software at a faster speed and are more consistent
than others. As a result, many businesses opt for an automated product development
program and require cloud-based applications. As a solution, Cloud collaboration using
DevOps makes organizations very powerful, as they not only facilitate the development
of software products but also facilitate the implementation and control of the deployment
process. DevOps is a set of practices that combines software development (Dev) and IT
operations (Ops). Leited et al. [1] described that “DevOps is a collaborative and multidis-
ciplinary effort within an organization to automate continuous delivery of new software
Electronics 2023, 12, 357. https://doi.org/10.3390/electronics12020357 https://www.mdpi.com/journal/electronics