Skip to main content
ICOF Global

System architecture

University ERP

Seventeen modules from application to alumnus — the blueprint, and an honest account of how much of it stands today.

17
Modules
0
Built
9
Partly built
8
Planned

The spine

One path, and one gate on it

  1. Public Website
  2. Admissions Portal
  3. Finance Verification
  4. Registrar Approval
  5. Student ERP

Everything downstream of Registrar Approval exists because a student record was created there. That is why the whole system has exactly one place where a student account comes into being, and why no administrator creates one by hand.

One vocabulary

The universal status system

A record moves between Finance, the Registrar and the faculty. It only moves cleanly if all three read the same colour the same way, so there is one table and no module defines its own. Every chip carries its label as well as its colour — the colour is a shortcut for people who already know it, never the only thing carrying the meaning.

The forward path

  1. 1
    DraftGrey

    The application has been started but not submitted. Only the applicant can see it.

  2. 2
    Awaiting paymentRed

    Submitted, but the application fee has not been paid. Nothing moves until it is.

  3. 3
    Payment under verificationOrange

    A payment has been recorded and Finance is checking the amount, reference, currency and whether it duplicates another.

  4. 4
    Payment verifiedBlue

    Finance has confirmed the payment. This is the gate: the application becomes visible to the Office of the Registrar only now.

  5. 5
    Registrar reviewingYellow

    The Office of the Registrar is examining qualifications, certificates, identity documents and eligibility for the programme.

  6. 6
    Additional documents requiredPurple

    The Registrar has asked the applicant for further documents. The record stays in the Registrar’s queue so an applicant who never responds remains visible.

  7. 7
    Awaiting Admissions OfficeIndigo

    The Registrar has verified the record and forwarded it to the Admissions Office, which makes the final assessment and admits.

  8. 8
    ApprovedGreen

    Admitted. The student number is issued, the account created and the welcome email sent, all automatically.

  9. 9
    Conditionally admittedGreen, hatched

    Admitted and studying, with named conditions to meet by a stated date. The conditions stay visible to the student, the adviser and the Registrar until each is discharged.

Outcomes

  • RejectedDark red

    The application was not successful. A reason is always recorded.

  • DeferredBlack

    Admission has been held over to a later intake at the applicant’s or the university’s request.

  • GraduatedGold

    The award has been conferred.

12 statuses in total. Dark red and red, and black and grey, are close enough that colour alone would not separate them for many readers — which is the reason every chip is labelled.

The system

Seventeen modules

  1. 1

    Admissions Portal

    Open to anyone. Where an application is created, paid for and tracked.

    Applicant · Admissions Officer

    Partly built

    Specified

    • Create applicant account
    • Online application
    • Upload documents
    • Programme selection
    • Fee payment
    • Application tracking
    • Interview booking
    • Admission letter download

    Working today

    • Online application, six steps, submitting to Admissions and writing a record
    • Programme selection at application
    • A published account of the pipeline and what every status means

    Next

    • Applicant accounts backed by auth, so an application can be saved and resumed
    • Document upload against a Registrar’s request
    • Online fee payment — currently paid outside the system and verified by Finance
    • Admission letter as a generated PDF
  2. 2

    Finance Department

    Verifies application fees and, in time, owns every financial record in the university.

    Finance Administrator · Finance Director

    Partly built

    Specified

    • Verify payment
    • Reject payment
    • Issue refund
    • Generate invoice
    • Print receipt
    • Financial reports
    • Revenue dashboard
    • Outstanding fees

    Working today

    • Verify payment — reference, amount and currency, turning the record blue

    Next

    • Reject payment with a reason, returning the record to the applicant
    • Refunds against the published refund schedule
    • Invoices and receipts
    • Revenue and outstanding-fee reporting
  3. 3

    Office of the Registrar

    Examines applications whose payment is verified, and decides them.

    Registrar Administrator

    Partly built

    Specified

    • Approve
    • Reject
    • Request documents
    • Defer admission
    • Transfer programme
    • Dashboard: waiting, approved today, rejected today, international, transfers, deferred

    Working today

    • Approve
    • Reject with a recorded reason
    • Request documents

    Next

    • Defer admission and transfer programme
    • The dashboard counts, which need the data before they mean anything
  4. 4

    Automatic Student Creation

    What happens the instant the Registrar approves. Nothing here is created by hand.

    Registrar Administrator

    Partly built

    Specified

    • Student profile
    • Student number
    • Username and temporary password
    • Student email
    • Programme, department, faculty
    • Fee structure
    • Academic calendar
    • Timetable
    • LMS account
    • Library account
    • Hostel record
    • Medical record
    • Digital student ID

    Working today

    • Student number in the ICOF{year}{00000} format
    • Auth account with username and temporary password
    • Programme carried from the application
    • Welcome email with all of the above

    Next

    • Everything else on the list. Each needs the module that owns it to exist first — there is no fee structure to attach until the Finance module holds one, and no timetable until the Academic Office builds one.
  5. 5

    Student Portal

    For enrolled students only. No application forms live here.

    Student

    Partly built

    Specified

    • Dashboard
    • Profile
    • Programme and current semester
    • Credit hours
    • Academic advisor
    • Announcements
    • Upcoming exams
    • Outstanding fees
    • GPA
    • Notifications

    Working today

    • Dashboard, profile, courses, results and GPA
    • Transcript and certificate
    • Announcements, forum, assignments, timetable
    • Applicants are turned away and sent to the Admissions Portal

    Next

    • Academic advisor allocation
    • Outstanding fees, once Finance holds a ledger
  6. 6

    Course Registration

    The student clicks once; the system knows their faculty, programme, level and semester, and checks the rules.

    Student

    Planned

    Specified

    • Automatic course list from programme and level
    • Prerequisite checking
    • Outstanding fee checking
    • Programme rules
    • Maximum credit checking
    • Automatic approval when valid

    Working today

    Nothing yet.

    Next

    • Prerequisites are not recorded against any course yet — this module cannot check what does not exist
    • Maximum credits per level: the regulations give 10–12 subjects a year, which needs expressing in credits
    • A fee ledger to check against
  7. 7

    Lecturer Portal

    Each lecturer sees only their assigned courses.

    Lecturer

    Partly built

    Specified

    • Attendance
    • Upload notes
    • Assignments
    • Exams
    • Marks and grade submission
    • Student messaging
    • Office hours
    • Research

    Working today

    • Grade book
    • Assignments
    • Question bank
    • Learning analytics

    Next

    • Attendance
    • Course allocation, so "assigned courses" is a real constraint
    • Office hours
  8. 8

    Head of Department Portal

    Allocates teaching and monitors it.

    Head of Department

    Planned

    Specified

    • Assign lecturers
    • Approve course allocation
    • Monitor teaching
    • Department reports
    • Student statistics
    • Research outputs

    Working today

    Nothing yet.

    Next

    • Departments are not yet modelled as records with a head, staff and courses attached
  9. 9

    Dean Portal

    Faculty-wide view: students, staff, departments, research, revenue, retention.

    Faculty Dean

    Planned

    Specified

    • Total students, lecturers, departments
    • Research and revenue
    • Graduation and admissions
    • Retention
    • Faculty reports

    Working today

    Nothing yet.

    Next

    • Every figure here must be derived from records the system holds. Until enrolment, staffing and revenue are real data, a dean’s dashboard would be decoration.
  10. 10

    Examination Office

    From timetable to degree classification to the graduation list.

    Registrar Administrator · Academic Office

    Partly built

    Specified

    • Exam timetable
    • Invigilators
    • Question papers
    • Moderation
    • Grade approval
    • Transcript generation
    • Degree classification
    • Graduation list

    Working today

    • Online examinations
    • Question bank
    • Transcript generation

    Next

    • Degree classification bands have not been adopted — this module cannot classify a degree until the Academic Board says what a first, a merit or a distinction is
    • Moderation and grade approval workflow
    • Invigilator scheduling
  11. 11

    Library

    Borrowing and cataloguing for students; inventory and acquisitions for librarians.

    Student · Library Staff

    Planned

    Specified

    • Borrow and reserve books
    • Digital library and research databases
    • Citation tools
    • Reading lists
    • Book inventory and cataloguing
    • Loans, fines and acquisitions
    • Digital repository

    Working today

    Nothing yet.

    Next

    • The university has not yet described what its library holds — see the Academic Catalog, Part X. A library module with no catalogue behind it is a login screen.
  12. 12

    Learning Management System

    Integrated directly. No second login.

    Student · Lecturer

    Partly built

    Specified

    • Courses
    • Assignments
    • Forums
    • Videos
    • Live classes
    • Quizzes
    • Grades
    • Certificates

    Working today

    • Courses, assignments, forum, quizzes, grades and certificates, all inside one login

    Next

    • Video hosting and live classes
    • Migration of the legacy Chamilo content
  13. 13

    Hostel

    Applications, allocation, maintenance and inspection.

    Student · Student Affairs

    Planned

    Specified

    • Applications
    • Room allocation
    • Maintenance
    • Payments
    • Visitors
    • Room inspection

    Working today

    Nothing yet.

    Next

    • The published fee schedule quotes student housing at USD 60–85 a month but the university has not described its housing stock. Rooms must be modelled before they can be allocated.
  14. 14

    Human Resources

    Employees, contracts, payroll, leave, performance and promotion.

    System Administrator

    Planned

    Specified

    • Employees and recruitment
    • Contracts
    • Payroll
    • Leave
    • Performance
    • Promotion
    • Training

    Working today

    Nothing yet.

    Next

    • Payroll holds salary and bank data and is the highest-risk module in this list. It should not be built until access control and audit logging are settled, and probably not before an external review.
  15. 15

    Research Office

    Projects, grants, publications, ethics and postgraduate supervision.

    Registrar Administrator · Faculty Dean

    Planned

    Specified

    • Projects and grants
    • Publications and journals
    • Ethics approval
    • Conferences
    • Postgraduate supervision
    • Research repository

    Working today

    Nothing yet.

    Next

    • Ethics approval needs the procedure and the committee that grants it — recorded as missing in the Academic Catalog
    • The six proposed journals need editors, boards and ISSNs before the module has anything to manage
  16. 16

    Alumni

    Graduation onward: employment, donations, mentorship and credentials.

    Student

    Partly built

    Specified

    • Graduation records
    • Employment
    • Donations
    • Mentorship
    • Networking
    • Certificates
    • Transcript requests

    Working today

    • Public alumni page
    • Credential verification

    Next

    • The association itself has no constitution or officers yet — see the documents register
  17. 17

    Chancellor and Vice Chancellor Dashboard

    Real-time institutional statistics for the two executive offices.

    Chancellor · Vice Chancellor

    Planned

    Specified

    • Total students, admissions today, pending applications
    • Revenue today, outstanding fees
    • Graduation candidates
    • Academic staff, international students, online students
    • Campuses, research projects, publications

    Working today

    Nothing yet.

    Next

    • Every number on this dashboard must be a live count from the system. The figures in the specification are illustrative — 12,845 students, $14,280 revenue today — and must never be typed in as placeholders. A dashboard showing invented numbers to the Chancellor is worse than no dashboard, and the site already carries four unattributed statistics that need the same treatment.

Who sees what

The role hierarchy

Fourteen roles, in the order the university sets them. Seniority governs what a role sees; it does not govern what a role may do. The Chancellor and the Vice Chancellor sit at the top of this list and neither can admit a student or verify a payment — an institution where they could would have no separation of duties left, whatever its organisation chart said.

  1. Chancellor

    5 capabilities

  2. Vice Chancellor

    7 capabilities

  3. Registrar Administrator

    14 capabilities

  4. Finance Director

    5 capabilities

  5. Faculty Dean

    4 capabilities

  6. Head of Department

    7 capabilities

  7. Programme Coordinator

    4 capabilities

  8. Lecturer

    5 capabilities

  9. Finance Administrator

    4 capabilities

  10. Admissions Officer

    7 capabilities

  11. Library Staff

    1 capabilities

  12. Student Affairs

    2 capabilities

  13. Student

    6 capabilities

  14. Applicant

    3 capabilities

Where this lives. The hierarchy and the capability matrix are held in src/lib/roles.ts, and the status table in src/lib/status.ts. Every screen asks those files rather than testing a role name inline, so a permission is decided in exactly one place and a colour means one thing across the whole system.