Ijraset Journal For Research in Applied Science and Engineering Technology
Authors: Srinivasa Rao Pendela, Gnana Chandra Vutukuri, Himana Ruttula, Venkata Sumathi Yadala, Sri Lakshmi Pujitha Tarigopula
DOI Link: https://doi.org/10.22214/ijraset.2024.59305
Certificate: View Certificate
In modern software environments, a paradigm known as the MERN stack has emerged as an important force due to its breadth of development and management capabilities. Leveraging native MERN (MongoDB, Express.js, React.js, Node.js) software development, deployment, and management techniques with Cloud services, \"Educonnect\" emerges as an innovative solution for educational institutions seeking efficient and cost-effective data management. This paper deals with the implementation of a cloud native web application Educonnect after a dexterous development strategy to create a cloud native web application. The main focus of this cloud native application is to provide a solution for data organization and collection along with an effective way of sending communication to the students by using cloud services
I. INTRODUCTION
In the current educational landscape, cloud-native applications created using the MERN stack have gained more popularity and are considered more reliable. Recognizing this trend, we are introducing the Educonnect application, a cloud-native, MERN stack-powered solution tailored specifically for educational institutions for maintaining students personal and academic records at the same place. This application reduces the burden of managing student details, courses, certifications, announcements, internships, and job opportunities. It also assists college management in efficiently retrieving specific student details, such as those who have completed particular certifications or internships with specific skill sets. Manual data collection, which is prone to errors and requires significant effort, is thereby minimized. Moreover, the traditional methods of communication, such as WhatsApp messages or class announcements, are replaced by utilizing notifications from the application, facilitated by Firebase Cloud Messaging service.
II. LITERATURE REVIEW
Various studies had been done on the limitations, impacts of using on premises application and MERN stack web application using cloud services. On premises applications need to be installed in the systems of institutions though we have control over the systems and information of the students and handling of the data we need a lot of staff for maintenance. Also, backup storage is required for the on-premises application but using MERN with cloud services we can overcome these limitations.
We preferred this architecture and added some additional features by integrating cloud services. MERN stack applications, which are cloud-native, inherently offer superior scalability. This means that as the educational institution grows or experiences varying workloads, the application can adapt to handle increased data and user demands. Unlike on-premises solutions that may require hardware upgrades, Cloud Native applications can scale dynamically in response to evolving requirements.
We can also observe many successful examples of applications that uses MERN stack and cloud services, Spotify extensively uses Google Cloud (GCP) for cloud services, React.js for the front end, Node.js for the backend, and MongoDB for data storage. WhatsApp, owned by Facebook, is known to use Facebook's infrastructure for cloud services, React.js for the web interface, Node.js for the server, and MongoDB for data storage.
Coming to the cost considerations an on-premises solution can have a high total cost of ownership (TCO) than a cloud system. Large initial purchases are typically required for on-premises systems, which can often lead to higher needed capital expenditures in terms of support and functional improvements so maintenance costs should also be included. You are responsible for server hardware, software, data backup, storage, and disaster recovery with in-house systems. Dubbed more than on-premises for flexibility, reliability and security, cloud eliminates the hassle of maintaining and updating systems, enabling you to invest your time, money and resources into enjoying your central business processes and providing real-time access to policy settings and records.
III. METHODOLOGY
This application is developed using the MERN (MongoDB, Express.js, React.js, Node.js) Stack, which is a collection of technologies commonly used together for building full-stack web applications. It also includes the integration of various Google Cloud Services (such as Google Cloud Storage, App Engine, etc) to enhance its functionality. Alongside the MERN Stack, the application follows the MVC (Model-View-Controller) architecture, a widely adopted design pattern in software development. It follows a 3-tier architecture, where:
This architectural approach enhances modularity, maintainability, and scalability of the application by separating concerns and promoting code reusability.
A. Client Side
At the client side, users can access the web application through any device connected to the internet. The client-side of the application is developed using React.js, Tailwind CSS, Shadcn UI, Redux Toolkit. React.js allows us to create SPAs.
B. Server Side
The server-side contains the business logic of the application, developed using Node.js and Express.js. A NoSQL database MongoDB is used for storing user data. Redis is used for caching the frequently accessed data.
C. Google Cloud
Google Cloud is a suite of cloud computing services offered by Google, providing a range of infrastructure and platform services for building, deploying, and managing applications and services on Google's infrastructure. Various google cloud services are used in this application to provide certain functionalities.
IV. IMPLEMENTATION
A. Client Side
The application is developed for all devices which are connected to the internet and is accessible from anywhere and anytime. Based on the role of the user different screens will be displayed and is permitted to perform actions based on the permissions available.
Authentication and authorization processes are managed through JSON Web Tokens (JWT), which securely transmit user information in encrypted form. When a user attempts to log in, the authentication service verifies their credentials against the database. Upon successful authentication, a JWT containing relevant user data like ID, roles, and permissions is generated and issued to the client for storage. Subsequent requests requiring authentication involve the client presenting this JWT to the server. The server verifies the token's integrity to ensure it hasn't been tampered with, then authenticates the user based on its contents. Additionally, the server evaluates the user's permissions stored within the JWT to determine their access rights. Based on this evaluation, the server responds accordingly, either granting access to requested resources or denying it. This structured approach ensures a secure and seamless authentication and authorization process, safeguarding user data while facilitating access to authorized resources.
2. Administrator and Coordinator Module: Administrators and Coordinators are designated users with specific access privileges within the application. The Administrator oversees the comprehensive management of student data, encompassing personal and academic information. Whereas, Coordinators possess access limited to student data within a particular branch. Admin tasks involve managing department coordinators, issuing alerts to students through push notifications, organizing job drives, overseeing student data management, generating customized reports, verifying internship permission requests, and collating data of students interested in posted job opportunities. Coordinators, on the other hand, have access solely to student data within their respective departments, enabling them to send alerts, verify internships, and generate department-specific reports.
3. Student Module: Students register by completing a form with required details like name, email, roll number, profile photo, branch, and year of passing. Upon successful submission, this data is stored in MongoDB. They then log in using their registered email and password to access the application. Once logged in, they can input information such as courses completed, certifications earned, achievements, and internships. Students can also view announcements from admins and coordinators, receiving push notifications for important alerts and opting into posted job drives. Additionally, they receive email notifications for critical alerts and specific job opportunities.
B. Server Side & Google Cloud
The server side of the application is developed by using Node.js as runtime and Express.js as a framework for creating robust and reliable web server. It contains the business logic and it contains the interaction with the database to read and write the data. The major functionalities such as integration with Google Cloud Services (Cloud Storage, Cloud Logging etc) are done.
2. Cloud Services Integration: This application is integrated with various cloud services, including Google Cloud Storage, Google Cloud Logging, and Firebase Cloud Messaging. Google Cloud Storage is utilized for storing user files in buckets within respective folders. Google Cloud Logging records all user interactions within the application, such as logins, profile updates, data requests, and modifications, enabling security checks when necessary. Firebase Cloud Messaging facilitates push notifications to students, allowing them to receive alerts sent by admins and respond accordingly. The integration of these services enhances the application's functionality and user experience.
3. Database and Redis: MongoDB, a NoSQL database, is utilized for storing application data. Data is organized into collections, with each collection containing related documents. Seven collections are used in this application: student, user, certifications, courses, internships, job drives, and announcements. To enhance performance and reduce read operations on frequently accessed data, Redis, an in-memory caching solution, is employed. Redis stores data in RAM, allowing for fast retrieval and reducing database operations.
C. CI/CD Pipeline
Google Cloud offers a CI/CD pipeline with services like Cloud Build for building and testing, Artifact Registry for storing artifacts, and Cloud Deploy or Cloud Run for deployment. This lets you automate building, testing, and deploying your applications with every code change.
In conclusion, Educonnect stands out as a highly advantageous platform for educational institutions, facilitating efficient management of academic and personal student data. Its personalized features, such as direct alerts to students, replace reliance on WhatsApp and classroom announcements, enhancing communication within the educational community. Built using cutting-edge technologies like the MERN Stack and leveraging Google Cloud Services such as Cloud Storage and App Engine for file storage and deployment, as well as Firebase Cloud Messaging for notifications, Educonnect ensures reliability and scalability. Administrators and coordinators benefit from advanced data filtering and downloading capabilities, further enhancing administrative efficiency. Overall, integration with Google Cloud Services enhances reliability, minimizing downtime and ensuring uninterrupted access for users as needed.
[1] Dr. Santosh Kumar Shukla, Shivam Dubey, Tarun Rastogi and Nikita Srivastava. Application using MERN Stack. International Journal for Modern Trends in Science and Technology 2022, 8(06), pp. 102-105. [2] Yenduri Harshitha Lakshmi, Kuncham Pushpa Sri Vyshnavi, Shaik Fyzulla, Dr Yalamanchili Sangeetha. A Website for a Consultancy using Mern Stack. 2023 3rd International Conference on Smart Data Intelligence (ICSMDI) [3] Neenad Sahasrabuddhe, Sanskar Khandelwal, Neha Purohit, Rishika Jain, Sonali Kalekar, Dr. Ashish K Sharma. Print–OnTheGo Remote Printing Application using MERN Stack. 2023 4th International Conference for Emerging Technology (INCET) Belgaum, India. May 26-28, 2023. [4] Spoorthi M S, Kavana V, Koushik S N, Veena M. A Review On Placement Management System. International Journal of Creative Research Thoughts (IJCRT), | Volume 9, Issue 7 July 2021, ISSN: 2320-2882 [5] Anjali.V, Jeyalakshmi.PR, Anbubala.R, Sri Mathura devi.G, Ranjini.V. Web Based Placement Management System. International Journal of Computer Science and Information Technologies, Vol. 7 (2), 2016, 760-763 [6] Fiza Kousar, Gandharva V Hegde, Prof. Saravanan C. Design and Development of Department Placement Portal using MERN Technology. International Advanced Research Journal in Science, Engineering and Technology Impact Factor 7.105, Vol. 9, Issue 1, January 2022 [7] Ajeena Sunny, Aneena Felix, Angelin Saji, Christina Sebastian, Praseetha V.M. Placement Management System for Campus Recruitment. International Journal of Innovative Science and Research Technology ISSN No: -2456-2165, Volume 5, Issue 5, May – 2020 [8] A R Sri Nandhini, Alaine Joseph, Ajay S. Impact of Implementing Cloud Native Applications in Replacement to on-Premise Applications. International Journal of Engineering Research & Technology (IJERT)ISSN:22780181, Vol. 9 Issue 06, June-2020 [9] Tuncay Ercan. Effective use of Cloud Computing in educational Institutions. Procedia - Social and Behavioral Sciences, Volume 2, Issue 2, 2010, Pages 938-942 [10] Muhammad Mannir Ahmad Getso and Riyaz Ahmed A. H. Applications of Cloud Computing in Academic Institutions. International Journal of Information System and Engineering Volume 2, November2014
Copyright © 2024 Srinivasa Rao Pendela, Gnana Chandra Vutukuri, Himana Ruttula, Venkata Sumathi Yadala, Sri Lakshmi Pujitha Tarigopula. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Paper Id : IJRASET59305
Publish Date : 2024-03-22
ISSN : 2321-9653
Publisher Name : IJRASET
DOI Link : Click Here