DevOps in content management system (CMS) Pop Cristian-Gabriel Technical University of Cluj-Napoca Abstract—Most websites nowadays are powered by content management systems (CMS), which allow website administrators to make changes to their sites without having to know how to code. Digital Content Management Systems (DCMS) can face certain challenges in terms of access to resources or managing fast content storage. Through DevOps concept, we can continually introduce new features and functionality without any disruption to the authors. DevOps (development and operations) is a collection of collaborative approaches that automate the distribution of new software updates in order to shorten the development cycle and generate high-quality software. When it comes to DevOps, software companies confront a number of challenges since the integration of development and operations teams necessitates the merging of various processes, technologies, and skill sets. DevOps is a new software development process that differentiates from traditional approaches by involving the client more closely and implementing "continuous" procedures. I. Introduction A Content Management System (CMS) is a set of interconnected components that allows users to modify, manage, and change data in real time. It is an interactive tool that assists in the rapid building of webpages. A Content Management System differs from static or dynamic websites in that it takes a distributed approach to communication, allowing people from all over the world to communicate through a single CMS. [1] CMS provides organized content management system capabilities such as the ability to save text documents, photographs, video, and any other sort of online material. CMS platforms, which serve as the backbone for many big websites, offer several editors and sections. The CMS anatomy is depicted in the next Figure. Figure 1. CMS anatomy Features and components of the Content Management System give genuine benefits and bridge the gap across business classes. In today's world of fast technology, where businesses want less time for more profit, this is especially true. [1] The market for content management systems is now quite crowded. Accessibility to commercial and free solutions, as well as cheaper hosting, have an impact on the fact that not only businesses, but regular people utilize these types of programs to construct and publish their own web pages. Content Management Systems are constantly growing in popularity. The number of applications of this type is anticipated to be in the thousands. They keep coming up with fresh ways to fulfill the demands of existing and future users. On the server side, content management systems often rely on databases to store the information presented on the page and configure the portal, as well as scripting languages or specific applications. Any content management system has two parts: the display component for portal visitors and the administrative part for allowing authorized users to upload and alter material on the site after logging in to the application. CMS systems often provide for editing power diversification, allowing users to assure more security and reduce errors caused by inexperienced users. Panel administration is done using a web browser, so modifications may be performed from anywhere with an Internet connection. [2] Software companies have expressed interest in adopting software development methods that shorten the development and delivery cycle. The primary motivation for adopting new development methodologies is to respond quickly to changing customer needs and to positively evaluate suggested changes. The software industry has used agile development methodologies to solve the issue of fast change in the software development life cycle [5]. DevOps is a new software development strategy that was born out of the notion and success of continuous delivery. Figure 2. CMS structure DevOps has become one of the most "contemporary" and extensively debated words in the area of software engineering in recent years [3] [4]. DevOps aims to bridge the gap between development and operations by encouraging collaboration between development teams (i.e., designers, developers, testers, etc.) and businesses, resulting in the formation of additional teams responsible for the development, management, and support of customer-side systems [3]. The DevOps technique, by definition, creates a living bridge between development teams (DEVelopment) and system users (OPeration), allowing them to cooperate effectively and smoothly. Figure 4. CI/CD concept The performance of the DevOps technique in a company is tracked by evaluating three main areas: collaboration culture, procedures, and tools [6]. People are at the core of the approach, and they're often the biggest roadblock to establishing a DevOps culture at a company. The methodology's adoption might result in a comprehensive overhaul of product development procedures. Monitoring the efficacy of DevOps integrated processes throughout the product manufacture and delivery pipeline is also deemed important. The right tools can help you apply the DevOps concept correctly and effectively. Operating time and capacity are two common characteristics to keep an eye on. Culture, Automation, Measurement, Sharing, and Services have also been highlighted as the core aspects of DevOps based on the literature [7]. Continuous Integration (CI) and Continuous Delivery (CD) are encouraged in DevOps (CD). Its goal is to reduce the product delivery cycle, allowing businesses to deploy software products and services on schedule without sacrificing quality. A. Infrastructure as Code Companies who have implemented DevOps have followed the idea of automating the flow of the software production process. It is accomplished using configuration Figure 3. DevOps concept 2 management methods and automated environment provisioning. Infrastructure as Code (IaC) is a method of creating the environment needed for production or testing using configuration files and tools. The major resources for implementing IaC techniques are configuration management systems like Puppet-Ansible and Chef [8]. B. Version Control System Figure 5. Agile Methodology The desire to share is a fundamental premise in the DevOps ecosystem. As a result, the initial software development line must be set up with this major goal in mind: sharing code so that the entire team can see what is being done and developed. As a result, all of the project's developers make their work public in a sourcecode version management system like Git. In addition, [9] claims that version control solutions play a key part in a vast number of DevOps technologies, in which developers produce source code and distribute it in these repositories, resulting in a Continuous Integration pipeline. D. DevOps Environment A DevOps-based software development pipeline features a well-defined automated cycle that starts with integrating the developers' source code with the code version control system. When the CI server detects that the commits are complete, it runs the relevant tests and, if necessary, provides feedback to the developers. C. Continuous integration and continuous delivery CI is a DevOps approach in which members of a development team exchange their work on a frequent basis and automate the building, testing, and validation processes [8]. The CI server triggers the procedures for developing and testing software when an environment change is recognized, resulting in the release of reports for activities connected to the tests. Following that, if the tests pass, the CI service can make the production environment available through a process known as "Continuous Deployment," the goal of which is to swiftly uncover problems and software faults and have them rectified. Continuous Delivery refers to the continuation of a development cycle (CD). It is a method of software engineering in which teams produce valuable systems in short cycles while ensuring that they may be delivered securely at any time [10]. As a result, customers may have new functions integrated in the system securely, continually, and automatically. CD is accomplished by practicing discipline and automating delivery, which involves developing, testing, and installing software [11]. Figure 6. Before and after DevOps II. METHODOLOGY AND RESEARCH QUESTIONS This work is based on the basic concepts of conducting a systematic review of the literature. 3 Systematic studies or systematic reviews of the literature are intended to offer an overview of a field study by categorizing and quantifying contributions in accordance to those categories. The process of these studies involves searching for the necessary literature to know what topics have been dealt with in it and at the same time where they were published. As part of the realization of these mapping studies systematic and systematic reviews of literature, the focus falls on analysis of primary studies. In this case, a primary study means a study which investigates a specific research question. Secondary studies are the review and mapping studies, so a secondary study passes in the journal all primary studies relating to a particular question of research, with the aim of synthesizing the evidence relating to the that research question. [12] In a systematic mapping study, there is an extensive review of primary studies on a given topic in order to identify the evidence available on the appropriate theme. The process of carrying out a systematic review of the the literature requires the use of a well-defined methodology to be able to identify, analyze and interpret all available resources on a particular research question, in a way that is impartial. This section describes the protocols used for conducting this research with a view to addressing the main issue, by using Systematic Mapping (SM). The SM process was conducted as per, in five essential stages, namely: (1) set the research questions; (2) search for relevant articles; (3) sort the articles found; (4) select key-words, by using the abstracts; and (5) map the data. A. Research Questions The electronic databases used for the Systematic Mapping were: ACM Digital Library; IEEE xPlore; Science Direct; and The following questions (RQ) RQ1 to RQ5 were used as an instrument to guide this Systematic Mapping: Following the definition of the search keywords and databases, the criteria for inclusion were developed so that they could find a link between the studies chosen and the questions posed in the Systematic Review. RQ1. Springer Link . C. Search Terms As we sought to find studies focused on the subject of this research, we defined the key-words for the search terms that, according to a proper procedure, must be developed based on the central terms identified in each research question. In this context, the keywords from the selected control articles were applied to the exploratory analysis as guidelines for this stage, by means of Boolean operators, for example “AND” and “OR”, as described below: The same search terms were applied in all the databases returning 382 papers from ACM digital library, 279 papers from IEEE, 306 from Science Direct and 504 from Springer. D. Criteria for the Selected Studies How does DevOps relate to Content Management? Tabel 1. Criteria for inclusion Criteria Studies that address any of the research questions Studies that propose or report the use of any DevOps tools Studies that propose or report any DevOps implementation models Papers that tackle DevOps practices in content management systems RQ2. How a DevOps team manages external content management? RQ3. How a DevOps team manages internal content management? B. Search Strategy The search strategy that was adopted to find relevant studies included making automatic searches in the databases. The searches were focused on the period from 2010 to May 2022. We also drew up criteria for exclusion, shown in Table 2 in order to discard studies that were not related to the research in any way. 4 Field of study Tabel 2. Criteria for exclusion Criteria The study does not have an abstract The study was not published in English Article not accessible Paper was published as a short paper or poster The article does not relate to DevOps The article does not tackle practices, implementation techniques nor models for adopting DevOps Old publications E. Roles and Skills Models and Deployment DevOps Practices DevOps Foundations 0 1 2 3 4 5 Field of study Figure 8. Field of study Selection of studies IV. The studies were chosen using Table 1's criteria for inclusion and Table 2's criteria for exclusion. We used a paired analysis to accomplish this. We also evaluated the paper title and abstract using the inclusion and exclusion criteria in the first phase. After that, we analyzed the article's whole content in the last phase. After all the selection phase, only 9 studies adressed to our 3 research questions. Research questions discussion The main purpose of this systematic study review regarding DevOps methodology in content management systems is to observe a proper image of the studies that already exist. The studies that we found need to match the research questions that we came up with and that is what we are going to tackle next. A. How does DevOps relate to Content Management? III. RESULT OF THE SYSTEMATIC MAPPING In a DevOps environment, a Content Management team's purpose is to make frequent modifications to fulfill client expectations. Obviously, this must be done with caution, professionalism, and within the framework of the system. Changing user profiles, introducing new dropdown options, and modifying the user interface are all good possibilities for quick release cycles in response to user input. A records management system may benefit less from a DevOps approach than a customer experience management system that must develop quickly to suit changing demands (due to stringent audit controls and external compliance commitments). As with many other beneficial concepts in our changing environment, IT professionals must decide which systems are best suited to the new approach, as well as which tools and characteristics of DevOps are appropriate for their teams and businesses to use. Standard operating procedures must vary when looking at release and update cycles from a new perspective and on different time scales. And this is one of the major breakthroughs. Because of the increasing agility and speed of release, automated setup and deployment solutions have become significantly more common. For many years, WebCenter has been scriptable and may be installed using scripts. However, a lot of incredibly valuable technologies The Systematic Mapping resulted in 9 studies being selected. This section presents several aspects of the papers found. Kind of study Grounded theory Case study Bibliographic study 0 2 4 6 8 Kind of study Figure7. Kind of study 5 now exist that enable DevOps teams to handle these operations much more often and quickly (essential for consistency between environments and successful loads). search engine, creating tags, and setting up alerts on documents or pages so that the right team members are notified when they are changed. Consider an alternative strategy to internal documentation content management that focuses on collaboration rather than publishing channels. Atlassian Confluence, for example, provides a straightforward authoring process as well as integration possibilities for managing internal team content. Users may also modify workspaces with reporting, external content, and navigation from a library of add-ins. They may also construct reusable templates for development organization workplaces to utilize when new projects begin. Another option is to use a cloud repository for content management, as Dropbox and Box demonstrate. Dropbox, for example, and, by extension, Dropbox Paper's document architecture, provide lightweight content authoring and file storage to serve as a CMS for documentation. It uses an API to connect to other tools in the DevOps toolchain. Search capabilities and the ability to invite colleagues to papers are common characteristics of these tools. Using the organization's identity access management system or single sign-on, provide security to this class of collaborative products. B. How a DevOps team manages external content management? Traditional database-driven CMS methods become excessively sluggish and redundant when GitHub, Chef, Selenium, and other documentation-generating pipeline components demand content posting. In a DevOps context, a Git-based CMS for documentation meets the needs of customer-facing content. Git-based CMSes outperform SQL-based CMSes in terms of performance and scalability. They use a decoupled design, with numerous content writing and delivery microservices running in separate subsystems. The CMS should be placed in the same cloud as the DevOps team's other CI/CD tools for security and scalability reasons.Various methods of operation are used by DevOps-tailored CMS alternatives for project management and documentation. As an exemple, Crafter, an open source Git-based CMS, separates content and code updates, which, the toolmaker posits, enables code delivery velocity. Content providers may make ongoing changes and information updates using Git, unhindered by CI/CD pipeline software pushes. A Git push automatically takes work from an isolated code branch through testing and into production. A Git pull creates new environments with any version of relevant material that is acceptable. For externally oriented documentation, there are CMS platforms that can publish material across numerous digital channels, such as enterprise sites, mobile applications, microsites, and any other location where your customers can access information. Assess tools that demand more or less Git competence, based on the content creators' abilities. V. Conclusions This systematic review shows that DevOps teams still improve their way into using content management systems. DevOps engineers do not want to touch the production environment directly and should not have to. Unfortunately, traditional CMS platforms force them to do so. Anyway, there are other CMS platforms that tackle this challenge because they are Git-based so all the code can live in the same version control system as the business content, together. This creates an ideal DevOps process for Continuous Integration and Delivery (CI/CD). As APIs become regular features for tool integration, DevOps teams have more content management options. Successful document management, on the other hand, requires planning: Make content management a line item in the DevOps tools budget and a component of the CI/CD toolchain from the start, and don't settle for the corporate CMS platform if it doesn't satisfy the software team's demands. C. How a DevOps team manages internal content management? Content management for internal content utilized by the DevOps team must be easy, searchable, and auditable. One solution is to save information in a wiki or cloud repository with versioning, alerting, tagging, and search capabilities. While some companies expect DevOps teams to leverage an existing CMS for documentation and knowledge sharing, be sure the technology meets all of your requirements and push back if it doesn't. Spend time fine-tuning the platform's 6 VI. References Communications in Computer and Information Science, 2019, vol. 1077, pp. 247–265. [12] Kitchenham, B., Charters, S., 2007. Guidelines for Performing Systematic Literature Reviews in Software Engineering. Technical Report EBSE 2007-001. Keele University and Durham University Joint Report [13] [1] WordPress: A Multi-Functional Content Management Abhilash Kumar1 , Aman Kumar2 , Hina Hashmi3 , Dr. Shueb Ali Khan4 [2] Content Management System for Web Portal, Maciej Nakwaski, Wojciech Zabierowski [3] R. Jabbari, N. bin Ali, K. Petersen, and B. Tanveer, “What is DevOps? A Systematic Mapping Study on Definitions and Practices”, Scientific Workshop Proceedings of XP 2016, Edinburgh, Scotland, 24 May 2016 [4] J. F. Perez, W. Wang, and G. Casale, “Towards a DevOps Approach for Software Quality Engineering”, Workshop on Challenges in Performance Methods for Software Development (WOSP '15), Austin, Texas, 31 January 2015. [5] L. Riungu-Kalliosaari, S. Mäkinen, L. E. Lwakatare, J. Tiihonen, and T. Männistö, ‘‘DevOps adoption benefits and challenges in practice: A case study,’’ in Proc. Int. Conf. Product-Focused Softw. Process Improvement. Cham, Switzerland: Springer, 2016, pp. 590–597. [6] Krief, “Learning DevOps: The complete guide to accelerate collaboration with Jenkins, Kubernetes, Terraform, and Azure DevOps”, Packt Publishing Ltd, 2019. [7] F. Erich, C. Amrit, and M. Daneva, “Report: Devops literature review”, University of Twente, Tech. Rep (2014). [8] C. Siebra et al., “Empowering Continuous Delivery in Software Development: The DevOps Strategy,” in Communications in Computer and Information Science, 2019, vol. 1077, pp. 247–265. [9] F. Erich, “DevOps is simply interaction between development and operations,” in Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2019, vol. 11350 LNCS, pp. 89–99 [10] E. Laukkanen, T. O. A. Lehtinen, J. Itkonen, M. Paasivaara, and C. Lassenius, “Bottom-up Adoption of Continuous Delivery in a Stage-Gate Managed Software Organization,” Proc. 10th ACM/IEEE Int. Symp. Empir. Softw. Eng. Meas. - ESEM ’16, pp. 1–10, 2016. [11] J. Humble and D. Farley, “Continuous Delivery Huge Benefits, but Challenges Too,” IEEE Softw., p. 497, 2015. [11] C. Siebra et al., “Empowering Continuous Delivery in Software Development: The DevOps Strategy,” in 7