Rendy Indriyanto, Diki Gita Purnama
Jurnal Indonesia Sosial Teknologi, Vol. 4, No. 9, September 2023 1504
discuss how to deploy and install software in the target infrastructure. Even though
current conditions demand that application development must be complete up to the
deployment and maintenance of software releases (Taryana, Fadli, & Nurshiami, 2020).
The process of making software ready for use by end users, as well as by application
testers and other related parties is referred to as deployment or delivery (Ghimire, 2020).
In the previous development of the Academic Information System, the IT team of
Paramadina University was still carrying out the process of deploying applications
conventionally and had not implemented an automation system. The entire process is
done manually where the source code that has been completed is then uploaded to the
production server (Arachchi & Perera, 2018).
The practice of deploying in this way is certainly simpler and easier to do, but
problems will arise when updates or changes are made on the side of the running
application. When the development team makes direct code changes to the application
that is running on the production server, there will potentially be errors that cause the
application to malfunction. Business process changes to the application will be difficult
for the development team to do. Development in traditional ways often leads to problems
such as application delays and product quality (Laksito, 2022).
Another problem that arises is the difference between the device and environment
used on the development team's side with the server side so that there is a mismatch both
from the operating system version, supporting software, libraries, and software package
dependencies which results in the application cannot function correctly when it has been
deployed to the server (Hadian, Hakim, & Fanani, 2023).
From the problems above, other deployment techniques are needed that can carry
out the process automatically starting from the development, testing, and deployment
stages. For this reason, the author conducted research on the implementation of
Continuous Integration/Continuous Delivery (CI/CD) in the process of developing
Academic Information System applications which are being updated at Paramadina
University.
The implementation of CI/CD is part of DevOps principles and practices. DevOps
is a term for a process that focuses on improving collaboration, communication, and
integration between software developers and IT operations (Chapman, 2014). DevOps
reduces the gap between the development team, operations team, and application users
allowing them to detect problems early (Tohirin, Utami, Widianto, & Al Mauludyansah,
2020).
By implementing CI/CD, it is useful to monitor a project in terms of the speed of
code generation to deployment to a production environment (Achdian & Marwan, 2019).
The application deployment process will be carried out automatically to the staging and
production server bypassing the testing stage by the system. Coding errors will be avoided
because when the development team makes a mistake, the deployment process will
automatically stop and errors that occur will immediately be identified. Continuous
Delivery (CD) provides many benefits for development teams including process