I just need the current graduate student part done in python, Business requirement and ERD provided

Business Requirements
  1. Applicant

    1. Applicant Creation

      1. An applicant must be able to access a “website” to see all available actions that can be taken

      2. An applicant must provide personal information in the form (see section 9 for info details)

  2. Application

    1. Application Creation

      1. An applicant must provide academic information in the form (see section 10 for info details)

      2. An applicant must provide application specific information in the form (see section 11 for info details)

    2. Application Submission

      1. After an applicant submits their application, the “website” provides the applicant a student number

      2. After submission, the application is evaluated by the system (see section 2cii for application statuses)

    3. Application Status

      1. Below flow diagram describes the application status

        1. IF App is missing data THEN Application Incomplete

        2. ELSE “Application Complete and Under Review / No Decision Yet”

      2. Status’ include:

        1. Admit

        2. Admit with Aid

        3. Reject

    4. Application Queries

      1. An applicant can query the status of their application from the “website” using their student number

      2. Update personal or academic information

  3. Graduate Secretary

    1. GS Queries

      1. A Graduate Secretary may update [MODIFY] the application status

      2. Search for an applicant using their last name or Student Number

      3. Update an applicants’ personal or academic information

      4. Given a Semester or Year or Degree Program, generate the list of graduate applicants

      5. Given the Semester or Year or Degree Program, generate the list of admitted students

      6. Given the Semester or Year or Degree Program, generate total # of applicants, total # admitted, total # rejected, and avg GRE score for admitted students

      7. Given the Semester or Year or Degree Program generate a list of students cleared for graduation

      8. Given the Semester or Year or Degree Program generate a list of alumni and their email addresses

      9. Generate total list of current students (by degree or by admit year)

      10. Change Student’s Faculty Advisor, given a student number.

      11. Generate the list of courses and grades, given a student number.

      12. Generate list of all advisees, given a faculty advisor name

  4. Alumni

    1. Alumni Queries

      1. Request their transcript

      2. Update their personal information using their student ID to authenticate (see section 9)

  5. Current Graduate Student

    1. Student Enrollment

      1. A Student is enrolled once application has been completed and application decision is admitted or admitted with aid. See section 2d on application statuses.

    2. Student Course Registration

      1. A Student may enroll in a course. See section 12 on course information.

    3. Student Graduation Application

      1. A student may visit the “website” and apply for graduation

        1. System “audits” if student has satisfied program requirements (see section 14 on graduation requirements)

          1. If the student is not cleared for graduation they are informed what requirements they are missing

    4. Queries

      1. Generate the list of courses and grades, given a student number.

      2. View course list

      3. View grades

  6. Faculty Advisor

    1. Queries

      1. Generate the list of courses and grades, given a student number.

      2. View all data about an applicant but cannot enter a review

      3. View their advisees’ courses taken but cannot update the courses.

      4. Generate a list of all advisees

  7. Faculty Instructor

    1. Queries

      1. Generate the list of courses and grades, given a student number.

      2. Enter grades for the students in the courses they are teaching (i.e., courses for which they are the instructor). See section 12 on grades.

  8. Faculty Reviewers

    1. Queries

      1. Search for an applicant using their last name or Student Number

      2. Generate the list of courses and grades, given a student number.

      3. Review a student’s application

      4. Enter their review into a review form which is stored in the system.

  9. Personal Information

    1. All personal information must be protected from users who do not have access. For read/write allowances, see section 9c

    2. The following information must be provided by all applicants

      1. Name

      2. Address

        1. Street Number

        2. City

        3. State

        4. Zip

      3. Phone Numbers

        1. Work

        2. Mobile

        3. Home

      4. Email address

    3. Read/Write Allowances for Personal Information

      1. Read Only

        1. Faculty Advisor

        2. Graduate Secretary

      2. Read/Write

        1. Student

        2. Alumni

        3. Applicant

        4. Graduate Secretary

  10. Academic Information

    1. Prior Degrees (max 2)

    2. Degree years

    3. GPA per degree

    4. Univ/College of each degree

    5. GRE Score

      1. Verbal

      2. Analytical

      3. Quantitative

  11. Other Application Information

    1. Program Sought [MS or MSE]

    2. Applicant Date Received (MM/DD/YYY)

    3. Admission Date Request (W2023, S2022, or F2022)

    4. (optional) Area of Interest

    5. Prior Work Experience (1 or 2 sentences)

    6. Recommendation Letters (max 3)

      1. Authors

        1. Name

        2. Email address

        3. Title

        4. Affiliation

  12. Database University

    1. Students must be able to enroll and register for courses through the DBU. See section 12c on course registration.

    2. Course Information

      1. Title

      2. Course number

      3. Section number

      4. Semester

      5. Number of course credits

    3. Course Registration Information

      1. Course - see section 12b on course information

      2. Course section number

      3. Semester

      4. Student identification

      5. Instructor information

      6. Grade

        1. Grade can be either A,B,C or F

  13. Graduation Application

    1. Students must fulfill below requirements in order to graduate

      1. Has taken 10 courses (3 credits each) totalling to 30 credits hours

      2. Has taken 3 out of the 4 core courses: CS510, CS511, IMSE5212, IMSE 513

      3. Has at most 2 grades below B

      4. Has a minimum GPA of 3.0

    2. Graduation statuses are limited to:

      1. Cleared

      2. Not Cleared

Process Workflow
  1. Application Process

    1. An Applicant fills out personal and academic information.

    2. An Applicant is notified if any required fields are missing.

    3. An Applicant submits an application once all required fields are filled.

    4. An Applicant may check on the status of their application.

    5. A date the application was received by the department is recorded.

  2. Admission Process

    1. The GS scores the application.

    2. The faculty reviews the application.

    3. The Chair of the admissions with the help of the GS admits, admits with aid, or rejects an applicant.

    4. The admission or rejection date is recorded.

  3. Registration and General Student Process

    1. A Student accepts the admission decision and the GS adds the Student in the system.

    2. A Student who has been enrolled in the University registers for a class.

    3. A Faculty member who instructs a class may update a student’s grade

    4. A Student or Faculty member may check on their grades.

  4. Graduation Process

    1. Student apply for graduation by filling out an online form with list of courses they will take to meet graduation requirements

    2. System automatically check if graduation requirements are met

    3. If requirements are met, student graduation application status changed to ‘cleared’. Otherwise, status is ‘‘not cleared’

    4. GS generates the list of graduating students (students whose graduation application status is ‘cleared’). GS only checks the “cleared” students and approves their graduation by checking their folder and transcript.

    5. If student graduation application status is ‘cleared’, GS then removes the student from the ‘graduate student’ list and adds them to alumni list. Enrollment information must not be removed

    6. Alumni are then able to edit their personal information using their student number to authenticate. Alumni are able to view a list of the courses they took and their grades