Web Service for Document Management of University Degree Projects Camilo Sarmiento1 , Leidy Lozano2,* , Guillermo Gaona2 and Marcelo Leon3 1 Universidad Unidades Tecnológicas de Santander, Santander, Colombia 2 IS – PCE, Floridablanca, Colombia 3 Universidad Ecotec, Samborondon, Ecuador Abstract Regardless of the degree modality chosen to obtain a university degree in an educational center, a series of documents are always being generated that are constantly exchanged between the different actors involved such as students, directors, and juries, among others. Normally, these exchanges are made through email or cloud storage (dropbox, drive, etc.) that are lost over time, or access and permissions are changed, making them unable to be used for any benefit. This article presents a solution to this problem based on the creation of a web service that facilitates the storage, exchange, classification, and search of files generated in the graduation process of students from an educational center. Keywords Document Management, Web Services, Degree Projects 1. Introduction During the graduation process of university students, regardless of the degree modality chosen, a considerable amount of documents are generated that in most universities are not managed properly. The exchange between the actors involved, such as the students, their thesis directors, and the juries, among other possible interested parties, is usually carried out in a very informal way through the crossing of emails without keeping adequate and easy control of versions, storage, and management of said documents. By not having adequate documentation management, the university is faced with problems of inefficient use of resources such as the following: students who, not being able to consult the topics of degree projects already carried out, generate proposals already worked on, the difficulty for directors and thesis students in keeping track of changes and managing versions [1, 2], loss of important information for degree work, useless spending of the printing paper that goes against the care of the environment, among others [3]. ICAIW 2022: Workshops at the 5th International Conference on Applied Informatics 2022, October 27–29, 2022, Arequipa, Peru * Corresponding author $ camilosarmiento777@gmail.com (C. Sarmiento); la.lozano51@uniandes.edu.co (L. Lozano); ggaonar@gmail.com (G. Gaona); marceloleon11@hotmail.com (M. Leon)  0000-0002-1081-9357 (C. Sarmiento); 0000-0003-2670-4623 (L. Lozano); 0000-0002-9894-4434 (G. Gaona); 0000-0001-6303-6615 (M. Leon) © 2022 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). CEUR Workshop Proceedings http://ceur-ws.org ISSN 1613-0073 CEUR Workshop Proceedings (CEUR-WS.org) 214 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 For this problem, some solutions have been explored, one of them is a Web application prototype for the management of the coordination processes of degree works of the Faculty of Engineering of the EAN University [4], which allows organizing and controlling the docu- mentation such as formats, letters, documentation generated in the tutoring tasks (delivery of advances), emails and final works, generated by students, tutors and coordinators [4]. Another solution proposed [5] is the prototype of an information and management system for degree projects, which reflects the initiative of a final project as a benefit to the degree work committee. Another Web platform for the management of preliminary projects and degree projects is the GESAP [6] of the Systems Engineering program at the University of Cundinamarca, Facatativá extension. This web platform for the management of preliminary projects and degree projects of the university and the academic program is in version number 1 and it is proposed to make version 2 to improve and correct the findings of the first version. Based on the above, the development of a Web Service for the management of files generated in the graduation process was proposed, which allows the administration and storage of documents in a safe and easily accessible way, through the use of a Rest API service integrated under client- server technology. For its development, Django was used as a backend application framework with python as the programming language and Vuejs as a frontend application framework with javascript as the programming language. The main purpose of the project was to include its own web service based on cloud computing technology that could be used and managed by university directors, teachers, and students. This project was based on three main uses: 1) The didactic use of the application by teachers to teach students the concept of web services and their consumption in a way that strengthens practice, the use of this technology, and its importance. 2) The administrative use of the application that, through the graphical interface, used on any device, allows the storage and consultation of the files generated by the students in their graduation process. 3) The use of API rest technology that allows the integration of this application with any other technology, for example, integration with a mobile application with a document upload service which would be saved directly in the implemented application. This application is aimed at creating incentives to generate motivation within the student community so that its use strengthens knowledge and motivates the creation of more web services with different purposes and in the same way to have its own service that replaces the use of other applications such as Dropbox, Google Drive, among others that are used today. From the expected results, it is possible to fulfill the main objective of the project by developing a web service for the management of files of the degree projects, perfectly adaptable and easy to integrate. To conclude and as an added value to the web service, a prototype of a manageable web application is made, which can be used in Spanish and English. Then, in section 2, the methodology used for the development of the web service is presented, in section 3 the results obtained when carrying out the application: functional and non-functional requirements, modules to be used, use cases, relationship model entity, and the performance tests carried out. Finally, in section 4, the conclusions obtained with the development of the work are presented and some suggestions or improvements that can be made to the project are described. 215 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 2. Methodology For the development of this project, the use of the XP extreme programming methodology was chosen. This methodology, formulated in 1999 by Kent Beck, is part of the agile methodologies that seek the development and management of projects with efficiency, flexibility, and control [7]. XP is mainly based on communication, reuse of developed code, and feedback [8] considering that requirements changes on the fly are natural and unavoidable actions in the development of a project [9, 10, 11]. As visualized in Figure 1, the XP methodology is made up of 5 main phases: Planning, Design, Coding, Testing, and Release [12]. Figure 1: XP Methodology. Within the planning stage, the following activities are carried out: Definition of needs and/or problems, identification of the business process, the definition of actors, definition, and prioritization of requirements, and specification of modules. In the design stage, the technological base to be used is defined and the application design is carried out. Finally, within the coding, testing, and launch stages, the prototype is implemented taking into account that a universal code must be obtained, with which any other programmer can work and easily understand, with automated testing and pieces of useful software that can be incorporated little by little in the final product. 3. Results This section will present the results obtained in the different phases of the project. The method- ology was applied using a case study, the process carried out in the Technological Units of Santander for the presentation and development of degree proposals. 216 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 3.1. Planning The following activities were carried out in the Planning phase: 3.1.1. Definition of needs and/or problems The requirements for the development of the software were obtained from some meetings with the teacher and the students of the GRIIS research group, of the Technological Units of Santander, in which a series of questions were raised to the students on how they handle the documentation that is required for degree projects based on the System Coordination. 3.1.2. Identification of business processes Currently, to start the development of the registration and the verification of the degree proposal in the Technological Units of Santander, it must be taken into account that the student meets the requirements to begin the stage of the preparation of the degree project, which is it is divided into two steps: the first is the documentation that is required to be submitted in the presentation of the degree proposal. The second is the documents that are delivered at the end, the development of the proposal. The process of storing the documentation of the degree proposal is simple, regardless of the number of documents that are handled, the procedure is carried out by the student, taking advantage of the facility that he has to use the documentation by sharing it with the teacher director of the project to visualize it and add the corrections that the documentation that is being made needs. 3.1.3. Role definition It was identified that the handling of the application will be carried out by the profiles shown below: Non-Authenticated User: It is the user who has not registered in the application, which to use it must be registered in it. Authenticated User: It is the profile in charge of managing the main elements of the Cloud4Files application, this role has access to all the functionalities of the system. It is the user who has the power to create, modify and delete files or documents. 3.1.4. Definition of requirements Table 1 presents the list of functional and non-functional requirements of the application. 3.1.5. Module specification From the definition of the needs and the survey of requirements, the modules presented in Figure 2 were defined. • Project module: responsible for managing the projects created, for updating or deleting. 217 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 Table 1 Functional and non-functional requirements. Functional Requirements Non-Functional Requirements The app must allow file uploads. The application must be easy to use. The application must recognize differ- The application must keep the data stored, safe and secure. ent types of files. The application must allow the down- The application must be accessible from mobile and com- load of the files. puter. Figure 2: Use cases. • Files module: in charge of controlling the documents uploaded inside or outside the projects. • Favorites module: responsible for managing the files, marked as favorites. • Profile module: responsible for accessing the person’s personal data. • Security module: in charge of controlling the user’s security, such as the access informa- tion to the application. • API module: in charge of managing how the requests should be sent, examples and how the API responds where the integration endpoints are specified. 218 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 3.1.6. Selection of technologies For the construction of the application, a client-server architecture supported by two well- known frameworks Django (python) and Vuejs (Javascript ), and the PostgreSQL database engine were used. The Django framework was chosen because it is high-end, handles much of the complexity of Web development, and makes it easy to quickly build reliable and sustainable Web sites. Also, this framework has great free and open-source documentation with a dynamic and progressive community with various paid and free alternatives. 3.2. Design and Coding As a result of the design and implementation phase, the API REST endpoints necessary to manage projects, files and users were created. For greater ease of use, two views were created, the view in Figure 3 with the list of implemented endpoints and Figure 4 with an example of its use: Figure 3: Deployed Endpoints. 3.3. Tests To demonstrate the proper functioning of the REST API service, a WEB application was im- plemented and tests were carried out on each of the modules, taking into account the input of information, its processing, and the results generated, in order to modify the errors in each module. The interfaces made to execute the tests are presewnted in Figures 5, 6, and 7. 219 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 Figure 4: Example of using Endpoints. 4. Conclusions and future work As a result of this project and based on the research carried out, the use of the client-server architecture can be pointed out as one of the most used architectures in the development of web and mobile applications. In the development of the Web Application for the administration and storage of files, it was verified that it is flexible and adaptable to any application since its access is also given through the use of a consumable web service with API REST architecture. One of the things learned during the development of the application is that it has widespread use since it can be used in a closed information system such as an intranet or as a more generalized private or public service within the web. The tools and programming languages used for the construction of the project had certain delays due to their implementation since during the investigative process courses were taken with the aim of delving into the tools, which did not allow an effective design and implementation, taking a long time, little more than the time initially forecast. From the main approach of the system, it can be concluded that its use strengthens the dynamism of web services within the student community, offering a double functionality, one as a file management tool with a logging system and another as an easy-to-integrate backend application. An added value for teachers, as well as students, is the use of the application administratively for saving and downloading documents, which can be used for personal or educational use. In training use, teachers related to the areas of software development can use the web service of the application to implement it in the teaching processes. Within the general objective of this project, its use was established in a modular web platform for the management of degree projects, this application is built with a comprehensive and adaptive use approach to any application, allowing the coordination of systems to use its func- 220 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 (a) (b) (c) Figure 5: Project management. tionality. either directly through the administrative interface or in the use of the aforementioned modular application. As a final conclusion for this application, it can be said that its use and implementation within the Uteist community and careers related to the areas of software development encourages the creation of the university’s own web services and its use helps more students present a certain stimulus. towards technology tools and increasing focus on application development. 221 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 (a) (b) (c) Figure 6: File Management. As future work, to complement the operation of the tool, it is recommended to implement the following functionalities: a preview of the files where the information of the file can be viewed regardless of the type, the notification alert, so that the user can be informed about the number of times you download a file and the shared files module, where you can see the files that have been shared between users. 222 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 (a) (b) Figure 7: Bookmark Management. References [1] O. Jonathan, S. Misra, F. Makinde, R. Damasevicius, R. Maskeliunas, M. Leon, Development of online clearance system for an educational institution, in: International Conference on Applied Informatics, Springer, 2019, pp. 327–339. [2] H. Florez, M. Sánchez, J. Villalobos, iarchimate: a tool for managing imperfection in enterprise models, in: 2014 IEEE 18th international enterprise distributed object computing conference workshops and demonstrations, IEEE, 2014, pp. 201–210. [3] M. M. Z. Ndadji, M. T. Tchendji, C. T. Djamegni, D. Parigot, A language and methodology based on scenarios, grammars and views, for administrative business processes modelling, ParadigmPlus 1 (2020) 1–22. [4] C. Salazar Lara, E. Romero Padilla, Prototype of web application for the management of the coordination processes of degree works of the faculty of engineering of the ean university, 2012. [5] J. Sarmiento Forero, F. Quirós Traslaviña, Information system and management of degree projects, 2013. 223 Camilo Sarmiento et al. CEUR Workshop Proceedings 214–224 [6] D. A. Reyes Espitia, J. L. Luna Casallas, Plataforma web para la gestión de anteproyectos y proyectos de grado para el programa de ingeniería de sistemas en la universidad de cundi- namarca, extensión facatativá–“gesap–v2”, Ph.D. thesis, Universidad de Cundinamarca, 2019. [7] Sinnaps, Metodología xp o programación extrema, https://www.sinnaps.com/blog-gestion- proyectos/metodologia-xp, 2020. [8] H. Florez, M. Sánchez, J. Villalobos, G. Vega, Coevolution assistance for enterprise architec- ture models, in: Proceedings of the 6th International Workshop on Models and Evolution, 2012, pp. 27–32. [9] A. Velasco, J. Aponte, Automated fine grained traceability links recovery between high level requirements and source code implementations, ParadigmPlus 1 (2020) 18–41. [10] H. Florez, M. Leon, Model driven engineering approach to configure software reusable components, in: International Conference on Applied Informatics, Springer, 2018, pp. 352–363. [11] M. León, V. Burgos, L. L. Jacome, An interactive multimedia game" let’s save the water" for the communities of ecuador and bolivia, CEUR Workshop Proceedings (2019). [12] H. Florez, E. Garcia, D. Muñoz, Automatic code generation system for transactional web applications, in: International Conference on Computational Science and Its Applications, Springer, 2019, pp. 436–451. 224