The University Networking Project implements a client/server system for university exam management. It involves the Secretariat for exam input and reservation, Students for access and booking, and the University Server for centralized management, ensuring efficiency and modularity.
The University Networking Project is developed to provide a seamless and organized solution for managing university exams. The system involves three main components:
- 📋 Secretariat: Responsible for exam input and reservation.
- 👩🎓 Students: Have access to the system for booking exams.
- 💻 University Server: Manages the centralized coordination of exams, ensuring efficiency and modularity.
-
📋 Secretariat Module:
- Input and reservation of exams.
- Administrative control over exam scheduling.
-
👩🎓 Student Module:
- Access to the system for exam booking.
- View of available exam slots.
-
💻 University Server:
- Centralized management of exams.
- Efficient coordination and scheduling.
Ensure you have the following software installed:
-
Clone the repository:
git clone https://github.com/vincenzobucciero/NetworkingProject-University.git
-
Navigate to the project directory:
cd NetworkingProject-University
-
Compile the Secretariat module and run:
gcc secretariat.c -o secretariat
./secretariat
-
Compile the Secretariat module and run:
gcc student.c -o student
./student
-
Compile the UniversityServer module and run:
gcc university_server.c -o university_server
./university_server
Replace secretariat.c
, student.c
, and university_server.c
with the actual names of your C source files. Additionally, include any necessary compiler flags or dependencies in the compilation commands.
We welcome contributions to the University Networking Project! Whether you've found a bug, have a feature request, or want to contribute code, here's how you can get involved:
-
Fork the Repository: Start by forking the repository on GitHub.
-
Clone your Fork: Clone your forked repository to your local machine using the following command:
git clone https://github.com/your-username/NetworkingProject-University.git
-
Create a Branch: Create a new branch for your contribution:
git checkout -b feature/new-feature
-
Make Changes: Implement your changes or add new features. Ensure your code follows the project's coding standards.
-
Test your Changes: Run tests if available and ensure that your changes work as expected.
-
Commit your Changes: Commit your changes with a descriptive commit message:
git commit -m "Add a concise and descriptive commit message"
-
Push to your Fork: Push your changes to your fork on GitHub:
git push origin feature/new-feature
-
Create a Pull Request: Open a pull request on the main repository. Provide a detailed description of your changes and reference any related issues.
-
Feedback and Discussion: Participate in discussions about your pull request. Be responsive to feedback and make any necessary changes.
-
Merge: Once your changes are approved, they will be merged into the main branch.
By contributing to this project, you agree to abide by the Code of Conduct. Thank you for your contributions and for helping to improve the University Networking Project.
Remember to replace your-username
and feature/new-feature
with your GitHub.
The University Networking Project is open-source software released under the MIT License.
Link to the report of the project: RelazioneBuccieroVincenzo.pdf