Romanian Project Name: Gestiunea AutomatΔ a StudenΘilor FacultΔΘii (GASF)
Authors:
Sugubete Andrei CR3.2B
Maximilian Andrei CR3.2B
Mitrache Marian NicuΘor CR3.2B
π Visit the Website
| Link | Description |
|---|---|
| View Latest Releases | All compiled PDF versions |
| Download main.pdf | Complete system specification |
| Download main_revised.pdf | Revised documentation |
The Automated Faculty Student Management System (AFSMS) is a comprehensive, secure, web-based platform designed to digitalize and optimize the administrative and educational workflows within a university faculty.
Moving away from manual paperwork, AFSMS provides centralized management of academic curricula, student formations, examination grading, and administrative document circulation. By integrating natively with Microsoft Office and institutional Single Sign-On (SSO), it drastically reduces administrative overhead for the registrar's office while providing real-time transparency for students and teaching staff.
- Role-Based Web Portal: Dual perspectives including a Public Portal for general information (curricula, schedules) and a secure Private Portal (authenticated via SSO) for tailored academic operations.
- Advanced Academic Data Management: Bulk import, validate, and manage data corresponding to curricula (study plans), study formations, and student enrollments.
- Automated Reporting & Export: Instantly generate official standardized documents, such as the e-Grade Centralizer (e-Centralizatorul de note) and e-Transcript (e-Registrul matricol). Export formats include
.CSV,.XML,.XLS, and secure.PDF. - Document Workflow Management: Route electronic documents within the secretariat for information, approval, or modification. Features advanced search by file type, creation date, author, or content.
- Audit Logging & Point-in-Time Recovery: Comprehensive, append-only activity logging tracking "who did what and when." Features built-in database rollback and offline backup capabilities to prevent and correct data collection errors safely.
- Microsoft Ecosystem Integration: Seamless bidirectional integration with Microsoft Excel for bulk data operations and Microsoft Outlook (via Graph API/SMTP) for mass group communications.
- Registrar / Secretariat Staff: Heavy users managing academic records, generating reports, and overseeing document workflows.
- Professors / Teaching Staff: Enter grades and communicate with student groups during exam sessions.
- Students: Read-only access to their personal academic standing, grades, and schedules.
- System Administrators: IT staff handling system configuration, SSO integration, role assignments, and database recovery.
- General Public: Unauthenticated guests viewing public faculty information.
AFSMS uses a scalable client-server architecture designed to handle concurrent user spikes during peak exam sessions while strictly adhering to EU GDPR regulations.
- Frontend / Client: Responsive Web Application built with React 19 + Vite + Tailwind CSS v4. Optimized with dropdowns (selection lists) to minimize manual data entry errors.
- Backend / API: Node.js + Express 5 REST API server (default port
3000). Connects to the database via thepgdriver. - Authentication: Mock SSO (JWT-based) for development and testing (built-in, no external provider required). Designed to be replaced with institutional SSO in production.
- Database (DBMS): PostgreSQL 15+ β supports robust transaction logging, complex queries, and point-in-time recovery.
- Email Notifications: Configurable via
EMAIL_PROVIDERenvironment variable β three supported modes:mock(default, Ethereal) β captures emails locally without sending real messages.graphβ Microsoft Graph API for production bulk email (requires Azure AD app registration).smtpβ classic SMTP fallback (compatible with Office 365, Gmail, on-premise servers).
- Integrations:
- Microsoft Graph API (bulk email via
$batch) - PDF generation (jsPDF + jsPDF-AutoTable)
- CSV / XLS import & export (PapaParse, xlsx)
- Microsoft Graph API (bulk email via
To meet the rigorous standards of the university environment, AFSMS v1.0 implements formalized performance benchmarks and an extensive automated testing suite.
- Simultaneous Capacity: Support for up to 200 concurrent users during peak exam sessions.
- Report Load Time: 95% of report generation requests (PDF/XLS) complete in < 3000ms.
- Data Commitment: Registry updates and grade entries are processed in < 1000ms.
- System Uptime: Designed for 99.9% availability during active semesters.
AFSMS uses Jest for automated unit and integration testing.
- Mandated Coverage: Minimum 80% (per SRS NFR-AFSMS-QUAL-005).
- Current Coverage: ~90% statements and lines (83% branches/functions) β covering the Audit Service and Auth Middleware (
backend/tests/core.test.js). - Verify Tests:
cd backend && npm test -- --coverage
The project adheres to strict coding standards (CODE-01 to CODE-10):
- Single Responsibility Principle (SRP) for all service functions.
- Consistent
camelCasefor variables andPascalCasefor classes. - Comprehensive audit logging for every state-changing operation.
- Traffic: All data in transit is encrypted via HTTPS (TLS 1.2+).
- Access Control: Strict role-based access control (RBAC). A standalone credential database is avoided in favor of institutional SSO.
- Data Integrity: The system prevents saving invalid data at the UI module level. All successful CRUD operations are permanently logged for auditing.
- Node.js v20+ and npm
- Modern web browser (Chrome 100+, Firefox 100+, Safari, Edge)
- PostgreSQL 15+ database server
-
Clone the repository:
git clone https://github.com/ProiectBD-P9-T4-SMM/P9-T4-SugubeteMaximilianMitrache.git cd P9-T4-SugubeteMaximilianMitrache -
Frontend β install dependencies and start the dev server:
npm install npm run dev
The frontend will be available at
http://localhost:5173/P9-T4-SugubeteMaximilianMitrache/. -
Backend β install dependencies and start the API server:
cd backend npm installCreate a
.envfile in thebackend/directory (seedocs/Email_Configuration_Guide.mdfor email options):PORT=3000 DATABASE_URL=postgresql://user:password@localhost:5432/afsms JWT_SECRET=your_jwt_secret EMAIL_PROVIDER=mock
Then start the server:
npm run dev # development (nodemon) # or npm start # production
The API will be available at
http://localhost:3000/. -
Database β apply the schema and seed data:
psql -d afsms -f src/schema.sql psql -d afsms -f src/seed.sql
-
Build the frontend for production:
npm run build
The latest main branch is automatically deployed via GitHub Actions to GitHub Pages:
π https://ProiectBD-P9-T4-SMM.github.io/P9-T4-SugubeteMaximilianMitrache/
Comprehensive documentation mapping directly to the IEEE 830-1998 Software Requirements Specification (SRS) standards is available for this project.
- Registrar Operations Manual: Step-by-step guides for workflow and reporting.
- Professor Quick Start Guide: Instructions for grade entry and student communication.
- Administrator Guide: Setup, backups, and point-in-time recovery processes.
This project is licensed under the MIT License β see the LICENSE file for details. (Update according to university/institutional policies).













