# Introduction

Type |
Dependencies |
Order | 9
Owner | Rose
Section | Introduction
Status | Done

### Introduction

Newcomers to the software engineering industry often struggle to find the personalized support they need to grow in their careers. The lack of accessible mentorship is a significant obstacle, and it can deter those with limited programming knowledge from pursuing software development.

To tackle this issue, our proposed Learnr platform aims to connect learners (mentees) with experienced educators (mentors and supermentors). In the dynamic world of software development, tailored guidance is crucial for mentees to thrive. This platform offers a set of user-friendly tools designed to provide personalized learning experiences and effective mentorship. The goal is to empower mentees to confidently navigate their educational journey, helping them overcome obstacles in their pursuit of a software development career.

### Current System

When the Learnr project began, we started with a clean slate, as this was the first effort to bring this idea to life. The early stages involved gathering and organizing a wide array of feature requests from the Product Owners. This process helped in pinpointing the key elements needed for the system. The primary focus at this stage was to develop a Minimum Viable Product (MVP) that would capture the fundamental aspects of the platform, prioritizing practical functionality and the ability to adapt and evolve based on technical and design needs.

### Proposed System

The Learnr Platform is a comprehensive solution designed for the Assurant Technology Development Pipeline to enhance their teaching and learning methodologies. The platform aims to bridge the gap between learners (mentees) and educators (mentors and supermentors), offering a suite of tools that support personalized learning and effective mentorship. This internal tool integrates features such as personalized learning roadmaps, account management, an intuitive user interface, secure database interactions, and security protocols.

The Learnr project uses a range of modern web technologies to create its Online Learning and Mentorship Platform. It employs Bootstrap, HTML, and CSS to make the user interface visually appealing and responsive. JavaScript adds interactivity, while Express.js and Node.js handle the behind-the-scenes functionality. To improve data management, they transitioned from using CSV files to SQL. Security measures are in place to ensure that only authorized users can access sensitive information.

1. Learning Roadmap Management:
   - This feature enables supermentors and mentors to create and manage custom learning roadmaps, which are central to the platform's educational approach. These roadmaps are directly linked to a comprehensive database, allowing for real-time updates and adjustments based on mentee progress.
   - Mentors can assign, update, and track the progress of mentees through various learning pathways, ensuring that the educational content is tailored to each individual's needs and abilities.

2. Account Management and Personalization:
   - The platform offers robust account management options. Users can edit their personal information, including passwords, email addresses, bios, school affiliations, and areas of interest. This personalization enhances the user experience and fosters a more engaging learning environment.
   - Supermentors have extended privileges, such as registering new users, resetting passwords, and managing high-level account information. This administrative capability ensures smooth operation and maintenance of user data integrity.

3. User Interface and Experience (UI/UX):
   - A significant focus has been placed on creating a user-friendly and aesthetically pleasing interface. Features include a sign-in interface, personalized user profiles, mentor and mentee dashboards, and management dashboards for overseeing the learning process.
   - The UI/UX design is intuitive and responsive, catering to the needs of a diverse user base. It ensures easy navigation and access to key features, enhancing the overall usability of the platform.

4. Database Integration and Documentation:
   - The backbone of the system is a well-structured database, which is meticulously documented, including an Entity-Relationship Diagram. This database efficiently associates mentors with mentees and manages the allocation and tracking of learning pathways.
   - An automatic pathway ID assignment feature using hashing is implemented, adding a layer of efficiency and security to the management of learning content.

5. Security and Authorization:
   - Security is paramount in the system design. It incorporates robust authorization checks before granting access to sensitive pages and information. This approach protects user data and ensures that only authorized individuals have access to specific functionalities.