Skip to content

Student Profiles

MildogMiller edited this page Apr 21, 2022 · 37 revisions

Pascal - Student Profiles

Compiled by Rourke Amiss using information from team members

Introduction

Students should create and logs into their profile. After successful completion of this the student will be directed to the Student Profile Page. The Student Profiles is to give the Student an interface to display their information and achievements associated with them, accessible by other users and recruiters. It contains information that is used to identify the Student, such as their name, profile photo, contact details and academic record.

Functional Requirements And Use Case Diagram

Functional Requirements:

  • FR1: Student Profile page must have the name and surname of the Student.
  • FR2: Student Profile page must have the contact information of the Student, either an email address and/or phone number.
  • FR3: Student Profile page must have a Profile Photo of the Student
  • FR4: Student Profile page must have bio that details the Student
  • FR5: Student Profile page must have the ability for a Student to update/change any applicable information on the page.
  • FR6: Student Profile page must be accessible by other Students and Companies that have requested for access.
  • FR7: Student Profile page must have addable tags such that users and companies can identify the Student's interests (including employment status).

Use Case Diagram:

image

Optional Requirements

Optional Requirements:

  • The Student Profile page should allow students to add any personal interests and abilities.
  • The Student Profile page should allow Students to add professional information, including qualification and employment preference.
  • The Student Profile page should allow Students to link other socials (Instagram, Linkedin) on their Profile.
  • Student Profile page should allow Students to link their COS 301 Capstone Project

Non-Functional Requirements

Quality Requirements:

  • All features should me user friendly
  • Performance - All features should work as expected.

Constraints

  • The Student Profile is to be created and maintained solely by the Pascal team and no other teams.
  • No user may edit another Students profile other than their own.
  • A company/recruiter must request for access to relevant information they will need from the Student.

Components/Services

1. Adir Miller [Project Manager]:

Tasks:

  • Kept track of the project and made sure team was working on correct features
  • Helped with Bug Fixes
  • Organized and monitored integration with other teams

2. Rourke Amiss [Business Analyst]:

Tasks:

  • Formulate features from the given requirements.
  • Formulating all the technical requirements for the Student Profiles.
  1. Functional Requirements
  2. Non-Functional Requirements
  • Compiled the SRS

Student Profiles SRS Documentation.pdf

  • Compiled the wiki
  • Signed off on the Acceptance Criteria

3. Xander Coetzer [API Engineer]:

Tasks:

  • Responsible for creating the API for the Student Profiles feature.
  • This entailed creating an endpoint to retrieve the student profile, edit the data of a particular student and delete a student profile.
  • See the pdf below for example queries and a brief overview of the student profiles api:
  • I have also implemented unit tests to test the three main endpoints namely editStudent, getStudent and deleteStudent:
  • image

4. David Roodt [Data Engineer]:

Tasks:

  • Planning of Data base schema
  • Implementation of Data Base Schema
  • Sql calls in repository layer

Schema Explanation:

user

id user id used to uniquely identify any user email email user signs up with password user's password passwordSalt password salt for encryption name user's full name dateOfBirth user's date of birth companyId only appliable to componies when they sign up. store realtion to compony table created Date account was created suspended If user's profile has been suspended validated If user is a validateduser

UserProfile

userId linked from user table studentNumber student number of user profilePicture link to UserProfileFile for picture bio user's bio employmentStatus if user is employed openToOffers if user is open tob job offers

UserTag

userId linked from user table tag user tag

model UserSocialMedia {

userId linked from user table type type of social media link link to social media

UserLocation

userId linked from user table location Preffered location of user

UserEmail

userId linked from user table email addition emails of user

UserProfileFile

fileId unique id of file userId linked from user table filePath file path in Firebase fileCategory type of file fileExtension type of file

UserDegree

userID linked from user table degreeType type of Degree degreeName Name of Degree

Schema

unknown unknown2

5. Mohamed Nizhar Aboobaker [Designer]:

Tasks:

  • Responsible for the wireframes and mockups designs of the user interface
  • Helped with implementing some of the UI components d4c8be04-0cc1-46ce-8e23-4945df555be9 073a5b29-2f3e-40e7-9b8a-88ffd98d0056

Meeting(s):

  • 11 March 2022 (09:30 - 10:05)
  • 14 March 2022 (13:30 - 14:02)
  • 16 March 2022 (11:30 - 12:32)

6. Daniel de Nobrega [Developer Operations]:

Tasks:

  • Kept an eye on my teams pull requests in case there was code that didn’t make sense or if any of the tests failed, to keep the pipeline intact.
  • Discussed the protocols that need to be taken ,with the rest of the Dev Ops, if the Pipeline broke.
  • If an issue was identified when reviewing a pull request a meeting would take place between myself and the coder to discuss the issue at hand and how we can go about correcting it.
  • Operation Protocols
  • Operations Performed:

Cara dismissal of approval Approving merge request Nizhar

7. Tabitha Jemwa [Service Engineer]:

Tasks:

8. Cara Grobler [UI Engineer]:

Tasks:

  • Helped with Demo 1 documentation creation
  • Consulted on smaller design decisions with the lead designer
  • Created frontend based on given designs
  • Implemented mobile responsiveness for the frontend
  • Created API calls to populate the frontend with API data
  • Final Implementation of Student Profile: 3f3a1456-10b5-4f17-844b-e3fde74e8559

For Future Teams

Implement the edit functionality

  • Most of the service layer for this is complete, need to finalize and test
  • Most of the API layer it finished, need to finalize and test
  • Service layer of Edit needs to be linked to API, this has been started but need to finalize and test
  • Edit Page needs to be designed
  • Edit Page needs to be linked to API

Add more student information

  • Its possible that next year more information will be needed, that information will then need to be added

UP integration

  • Link the student page with the UP servers allows for automatic pulling of data without the student needing to upload

Acceptance Criteria

All acceptance criteria should be completed.

  1. The Student’s name and student number must be present.
  2. The Student’s contact details must to be present.
  3. Student data must be pulled dynamically from the API

Signing off of Feature for Team Pascal.pdf

Clone this wiki locally