User Manual

Documentation Plan:

The user manual will be addressed to the students and faculty who will be mainly using the website. We will post the user manual to GitHub when we hand over the code. From there, it will be up to the admin to decide how to distribute this information to the users of the app.

It will mainly consist of:

  • A basic summary of how to use the website for students, meaning how to upload documents, how to see new announcements, how to fill out their student form, and how to view calendar events.
  • A guide for faculty on how to search through users and update information.
  • What the program does and why it will be useful to both students and faculty

The Admin’s Manual will also be posted to GitHub and it will contain more detailed information about how to maintain and develop the site, aimed towards whoever will be taking over the website when it is handed over.

It will contain:

  • A summary of the code including descriptions of libraries that were used and what languages might be needed
  • Some assistance in navigating the code for future development.
  • Some next steps that we didn’t yet take but might be useful in the future.

User Manual

Welcome to the PRP Exam Management System! This user manual will guide you through the various features and functionalities of the system, ensuring a smooth and successful PRP exam process for both students and faculty members.

Table of Contents:

  1. Sign up Process: To begin the PRP exam process, students must first register on the system. Follow these steps:
    •  On the sign in page click register here.
    • Fill in username, email and create a new password.
    • Select whether or not you are requesting a waiver.
    • Click register.
    • Sign in.
  2. Uploading Research Paper: After registration, students need to upload their research papers. Here’s how:
    • Log in to your account using your newly created credentials.
    • Navigate to the profile page.
    • Click on the upload PDF button and select your research paper file from your device.
    • Once selected, click on the upload button to upload your paper.
    • You will receive a confirmation message upon successful upload.
  3. Navigating the Home page: When you first enter the website you will be taken to a home page that has a lot of good information:
    • At the top of the page, you will see notifications sent by the administrator in charge of the website and the PRP exam.
    • Below that there is a calendar containing all of the relevant dates and events you need to know about.
  4. Filling out the Research Form: Filling out the form for students requesting an exam is a simple process:
    • Log in to your account.
    • Navigate to the form section.
    • Select whether you are signing up for the PRP or selecting an exam waiver.
    • Fill in all other relevant fields with your information.
    • Submit the form.
    • Your PRP application process has now begun and is being reviewed.
  5. Faculty Features: Faculty members have access to additional features to facilitate exam administration.
    • Searching for Students:
      • Log in to your faculty account.
      • Navigate to the student search feature.
      • Enter the student’s name in the search bar.
      • View the student’s profile and relevant exam information.
  6. Reviewing Research Papers:
    • Faculty members can see the attached research papers with the students’ profiles in search.
    • Click on the attached file and review.
    • Provide feedback as necessary using contact info.
  7. Viewing Calendar:
    • Log in to your faculty account.
    • The calendar is built into the home page.
    • View upcoming PRP exam events and deadlines.
    • Plan your schedule accordingly.

That’s it! You are now familiar with the PRP Exam Management System and its key features.

Admin’s Manual

Summary of the Project:

The PRP Management System is a client-server web application built using the MERN (MongoDB, Express, React, Node) technology stack. It facilitates the management of PRP exams, allowing students to register, upload research papers, schedule presentations, and faculty members to search for students and review submissions.

Setting Up and Executing the System:

  1. Cloning the Repository:
    • Go to the GitHub repository: PRP Management System Repository.
    • Click on the “<> Code” button and copy the URL corresponding to your preferred method of cloning the repository.
    • In a terminal, navigate to the desired location for the cloned directory and execute the command: git clone [copied URL].
  2. Setting Up MongoDB:
    • Download and install MongoDB Community Edition from here.
    • MongoDB Compass, a tool for viewing changes to the database, is included in the MongoDB Community Edition. If not included, download it separately from here.
  3. Setting Up Node.js:
    • Download and install Node.js, which includes Node Package Manager (npm), from here.
  4. Installing Dependencies and Starting the Server:
    • On the server machine, open a terminal and navigate to the root of the cloned directory (Comp-523-PRP).
    • Run npm install to download the required Node.js modules.
    • Navigate to the Client directory and run npm install to install client-side dependencies.
    • Return to the root directory and execute npm start to start the server.
  5. Accessing the Web App:
    • Accessing the web app through the internet will depend on the client’s server setup.
    • Host the files on the server machine.
    • When a client web browser accesses the server machine’s IP address (usually through its domain name), the machine serves the web app client files to the browser, which renders it for the user.
  6. Setup Google Calendar:
    • The calendar is connected to google, before deploying the web app you will want to setup your own google calendar that you want posted to the student accounts.
    • Update events as more show up and change.
  7. Semester Reset Functionality:
    • Utilize the existing button included on the home screen for the admin to reset the system for a new semester.
    • When clicked, the button will trigger a process that wipes all existing data and sets up the website to be used for the next group.
  8. Notification Posting Feature:
    • The admin has the unique ability to post notifications to anyone registering for the PRP.
    • On the homepage there is a slot to add a notification.
    • Write your notification and click the make announcement button.

Next Steps for Future Development:

  1. Enhanced Security Features:
    • Implement robust authentication and authorization mechanisms to ensure data security and user privacy.
    • Integrate UNC Single Sign-On (SSO) for seamless and secure authentication.
  2. Performance Optimization:
    • Optimize client and server-side code for improved performance and scalability, considering the expected small user base.
  3. Semester Reset Functionality:
    • A more robust semester reset feature could be beneficial which could initialize different calendar events and archive data.
  4. Student Checklist:
    • One of the features we were not able to get functional is a checklist of items.
    • It would post certain steps that each student would need to take to finalize the application process to the PRP exam.
  5. Registering for exam dates:
    • While there are ways that through google calendar the admin can allow the students to sign up for an exam, a function of signing up for exam slots built into the website could be beneficial.

By following these steps and considering the future development suggestions, the PRP Management System can be effectively maintained and enhanced to meet the evolving needs of its users.