| | 1 | = Prototype Implementation = |
| | 2 | |
| | 3 | == Overview == |
| | 4 | |
| | 5 | The first prototype is a command-line interface (CLI) application written in Python that demonstrates six use cases through direct interaction with the PostgreSQL database. The prototype uses psycopg2 for database connectivity and bcrypt for password hashing. All data selections are presented as numbered lists so the user never needs to remember identifiers. |
| | 6 | |
| | 7 | == Technology == |
| | 8 | |
| | 9 | ||'''Component'''||'''Technology'''|| |
| | 10 | ||Language||Python 3|| |
| | 11 | ||Database Driver||psycopg2-binary|| |
| | 12 | ||Password Hashing||bcrypt|| |
| | 13 | ||Database||PostgreSQL 16 (Docker)|| |
| | 14 | |
| | 15 | == Implemented Use Cases == |
| | 16 | |
| | 17 | ||'''ID'''||'''Title'''||'''Actor'''||'''Details'''|| |
| | 18 | ||UC0001||Browse Available Resources||All roles||[wiki:UseCase0001PrototypeImplementation Implementation]|| |
| | 19 | ||UC0002||Make a Resource Reservation||Teaching Staff||[wiki:UseCase0002PrototypeImplementation Implementation]|| |
| | 20 | ||UC0003||Approve or Reject Reservations||Administrator||[wiki:UseCase0003PrototypeImplementation Implementation]|| |
| | 21 | ||UC0007||View Resource Usage Analytics||Administrator||[wiki:UseCase0007PrototypeImplementation Implementation]|| |
| | 22 | ||UC0008||Log In to the System||All roles||[wiki:UseCase0008PrototypeImplementation Implementation]|| |
| | 23 | ||UC0009||Register a New User||Administrator||[wiki:UseCase0009PrototypeImplementation Implementation]|| |
| | 24 | |
| | 25 | == Application Structure == |
| | 26 | |
| | 27 | ||'''File'''||'''Description'''|| |
| | 28 | ||main.py||Entry point: login with email/password, role-based main menu|| |
| | 29 | ||db.py||Database connection helper and shared UI utilities|| |
| | 30 | ||uc_browse.py||UC0001: Browse Available Resources|| |
| | 31 | ||uc_reserve.py||UC0002: Make a Resource Reservation|| |
| | 32 | ||uc_approve.py||UC0003: Approve or Reject Reservations|| |
| | 33 | ||uc_analytics.py||UC0007: View Resource Usage Analytics|| |
| | 34 | ||uc_users.py||UC0009: Register a New User|| |
| | 35 | |
| | 36 | == Source Code == |
| | 37 | |
| | 38 | The source code is publicly available at: https://github.com/Teo03/FRRUAS-prototype |
| | 39 | |
| | 40 | == Build and Run == |
| | 41 | |
| | 42 | See [wiki:BuildInstructions BuildInstructions]. |