
Fig. 6. The new version of the application
Even when utilizing AWS instances with the fewest resources
possible, all of the figures are less than 10%. The Jenkins
server's increased CPU usage is correlated with the start of an
automated deployment procedure. The deployment resource
can be set up to restart the overloaded pods if the CPU usage
beyond the pre-allocated limit.
Fig. 7. CPU utilization of the pipeline
The automated CI/CD pipeline for AWS web application
deployment using Java is presented in this paper. When using
the existing system, developers must manually complete the
building, testing, and deployment processes, which takes more
time. Even when using scripts, users cannot pause a process
while it is being executed. However, when using automation
systems, developers can complete these tasks in a pipeline
manner and receive reports on a regular basis. In addition,
even if a phase contains errors, the system doesn’t move
forward.
The suggested solution is fast, easily scalable, dependable, and
has a 0 second downtime, according to the experimental
results. Therefore, any modifications made to the application's
source code is automatically identified, it starts a whole series
of events. When a Jenkins task fails during the deployment of
a new version of the application, the most recent stable version
of the application is rolled back by the system.
[1] “The NIST Definition of Cloud Computing”, Computer Security
Resource Center, NIST 2020, [Online], Available:
https://csrc.nist.gov/publications/detail/sp/800-145/final.
[2] S. Watts, M. Raza, “SaaS vs PaaS vs IaaS: What’s The Difference &
How to Choose”, BMC Software, 2019, [Online], Available:
https://www.bmc.com/blogs/saas-vs-paas-vs-iaas-whats-
thedifference-and-how-to-choose/.
[3] Phillips, M. Sens, A. de Jonge, and M. van Holsteijn, The IT Manager’s
Guide to Continuous Delivery: Delivering Business Value in Hours,
XebiaLabs, Hilversum, The Netherlands, 2015
[4] J. Humble, and D. Farley, Continuous Delivery: Reliable Software
Releases Through Build, Test, and Deployment Automation, 1st ed.
Reading, MA, USA: Addison-Wesley, 2010.
[5] M. Fowler, Continuous Integration, accessed on Oct. 21, 2015.
[Online]. Available:
http://martinfowler.com/articles/continuousIntegration.html
[6] B. Fitzgerald and K.-J. Stol, ‘‘Continuous software engineering: A
roadmap and agenda,’’ J. Syst. Softw., vol. 123, pp. 176–189, Jan.
2017.
[7] M. LeppÃďnen et al., ‘‘The highways and country roads to continuous
deployment,’’ IEEE Softw., vol. 32, no. 2, pp. 64–72, Mar. 2015.
[8] L. Chen, ‘‘Continuous delivery: Huge benefits, but challenges too,’’
IEEE Softw., vol. 32, no. 2, pp. 50–54, Mar. 2015.
[9] A. A. U. Rahman, E. Helms, L. Williams, and C. Parnin, ‘‘Synthesizing
continuous deployment practices used in software development,’’ in
Proc. Agile Conf. (AGILE), Aug. 2015, pp. 1–10.
[10] H. H. Olsson, H. Alahyari, and J. Bosch, ‘‘Climbing the ‘stairway to
heaven’: A mulitiple-case study exploring barriers in the transition
from agile development towards continuous deployment of software,’’
in Proc. 38th Euromicro Conf. Softw. Eng. Adv. Appl., Sep. 2012, pp.
392–399.
[11] "Continuous integration with TeamCity”, TeamCity 2020, [Online],
Available:
https://www.jetbrains.com/help/teamcity/continuousintegration-with-
teamcity.html#ContinuousIntegrationwithTeamCityBasicTeamCityco
ncepts.
[12] R. Varga, “Changing Dashboard build system to Bamboo”, CERN
Summer Student Program, No. CERN-STUDENTS-Note-2013-135,
2013, [Online], Available: https://cds.cern.ch/record/1596224.
[13] N. Seth and R. Khare, "ACI (automated Continuous Integration) using
Jenkins: Key for successful embedded Software development," 2015
2nd International Conference on Recent Advances in Engineering &
Computational Sciences (RAECS), Chandigarh, 2015, pp. 1-6, doi:
10.1109/RAECS.2015.7453279.
[14] B. Kitchenham and S. Charters, ‘‘Guidelines for performing systematic
literature reviews in software engineering,’’ Keele Univ. and Univ.
Durham, U.K., Tech. Rep. Ver. 2.3., 2007.
[15] H. Zhang, M. A. Babar, and P. Tell, ‘‘Identifying relevant studies in
software engineering,’’ Inf. Softw. Technol., vol. 53, no. 6, pp. 625–
637, 2011.
[16] D. Budgen, M. Turner, P. Brereton, and B. Kitchenham, ‘‘Using
mapping studies in software engineering,’’ in Proc. 20th Annu.
Meeting Psychol. Programm. Interest Group (PPIG), 2008, pp. 195–
204.
[17] Erich, F., C. Amrit, M. Daneva (2017) A qualitative study of DevOps
usage in practice. Journal of Software: Evolution and Process, 29(6):
p. e1885.
[18] Ghantous, G.B., A. Gill (2017) DevOps: Concepts, Practices, Tools,
Benefits and Challenges. In PACIS 2017 Proceedings. 96.
[19] Senapathi, M., J. Buchan, H. Osman (2018). DevOps Capabilities,
Practices, and Challenges: Insights from a Case Study. in Proceedings
of the 22nd International Conference on Evaluation and Assessment in
Software Engineering 2018. ACM.
[20] Chen, L.P. (2015b) Towards Architecting for Continuous Delivery.
12th Working IEEE/IFIP Conference on Software Architecture, ed. L.
Bass, P. Lago, and P. Kruchten. 131-134.
[21] P. Rodríguez et al., ‘‘Continuous deployment of software intensive
products and services: A systematic mapping study,’’ J. Syst. Softw.,
vol. 123, pp. 263–291, Jan. 2017.
[22] E. Laukkanen, J. Itkonen, and C. Lassenius, ‘‘Problems, causes and
solutions when adopting continuous delivery—A systematic literature
review,’’ Inf. Softw. Technol., vol. 82, pp. 55–79, Feb. 2017.
[23] D. Ståhl and J. Bosch, ‘‘Modeling continuous integration practice
differences in industry software development,’’ J. Syst. Softw., vol. 87,
pp. 48–59, Jan. 2014.
[24] M. V. Mäntylä, B. Adams, F. Khomh, E. Engström, and K. Petersen,
‘‘On rapid releases and software testing: A case study and a
semisystematic literature review,’’ Empirical Softw. Eng., vol. 20, no.
5, pp. 1384–1425, 2015.
[25] Implementation of a Continuous Integration and Deployment Pipeline
for Containerized Applications Using Tools Cepuc, R Botez, O
Craciun… - 2020 19th RoEduNet …, 2020 - ieeexplore.ieee.org
6. Conclusion
References
International Journal of Electrical Engineering and Computer Science
DOI: 10.37394/232027.2024.6.22
Abdullah, Mohammad Zeeshan,
Ansari Abdurrahman, Imran Akhtar, Salman Baig