university projects Management
Meta data:
Title : PFE
Duration : 3 months
Type : 3rd year university project
Role : Full Stack develper | team leader
team size : 04
role in team : leader
Presentation:
So what is 'PFE' anyway ? it's an abriviation for 'Projet de fin d'etudes' in french which means the projects given to students at the second semestre after going thgough a lot of courses during the year to apply thoses knowledges on a real world project which tackles a specific set of problems caming from a persistent need.
Goals:
The main goals of our project can be summarized in a chronological order as follow:
1to launch the plateform the university should set its own configuration variables (rooms, level, type of documents for each level ,admins...) using our desktop application.
2then the admins inject the entities (teachers,students,enterprises) to the platform either one by one or using an excel file.
3 students can find or construct teams using our invitation system.
4when the team gets created the members can collaborate togother in real time by exchanging documents in what we call 'the team playground' , the team leader can create an announcement to notify the team about important updates or a survey with multiple options to ask the team for their opinions before making a critical decision , beside of the previous options team members can choose to use the real time team chat .
5teachers and entreprises can suggest a theme for a specific level then after a lot of studies the admins can decide to approve it which result in making it an officiel theme or in other temes an option for teams of that choosen level.
6one of the most important features of our plateforme is team completion which solves the problem of : respecting the promtion configuration ( min_students_in_team , max_students_in_team) and getting ride of the problem of the students which couldn't find a team by automating this process . with a few number of clicks the admin can equilibrate&validate the teams of a specific level.
7after equilibrating & validating the teams of a specific level the admin sends whish lists (a wish list :ordering the themes according to the team wishes exp: 1- theme_a , 2- theme_b , 3- theme_c)
8another important feature is assigning the themes to the teams according to their whish list . so in order to simplify the process for admins we made 3 algorithms (FIFO , random ,moy ) to do the job.
9teams can commit docs from the 'team playground' to the supervisor ,then the supervisor choose the most important documents and validate them to make them visible to the juries and the admins then the supervisor can mark his teams as ready for graduation.
10admins can create a graduation session (title,description,date,room,related_team,juries) if the team is marked as ready by the the supervisor(s)
Technologies:
#ReactJs#NextJs#Redux#TailwindCss#Websocket#NestJs#typeorm#mysql#session-auth