0% found this document useful (0 votes)
40 views3 pages

Kahoot!!! Project

Uploaded by

ibrahimkorejo8
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views3 pages

Kahoot!!! Project

Uploaded by

ibrahimkorejo8
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

Final project - workshop in communication networks

1 Introduction

Kahoot is an online platform for creating learning games,

which allows you to prepare interactive trivia quizzes online

via the browser or the app. The quizzes are often complex

Choice questions, and the participants choose an answer through the smartphone,

The computer, tablet or any other device connected to the Internet.

In this project you can implement an online quiz game (Kahoot). The purpose of this project is

Improve your programming skills and expose in depth the transport layer and the layer

The application (layers 4-5). The project implements the server-client architecture.

Note that the client-server architecture has two entities: a client that consumes

Services and a server that provides services.

In our case:

• The client is a user who is interested in participating in the quizzes.

• The server is the computer responsible for managing the quizzes. Its services include:

Access to quizzes, printing new questions, etc...

the virgin In the quiz game, the players answer a common question at the same time and receive

Points according to the speed of the answers. After at least 5 questions, the player who obtained the
amount

The highest points is the winner.

2 requirements

2.1 server side

1. Run a multi-client online quiz game server using sockets.

2. Clients must connect to the server to participate in the quizzes.

3. Design a quiz database with categories, questions and correct answers.


4. The server should be able to handle multiple quizzes at the same time with groups

A variety of questions.

5 It is required to implement a scoring system to monitor the players' performance during quizzes.

6 Apply a time limit to each question, and handle timeout scenarios, i.e. every

The customers answered before the time expired.

7. Design a scoreboard that will show the grades of all the participants.

2 client side

1. Customers need to connect to the server and authenticate themselves to join the quizzes.

2. Implement a user interface for displaying questions, options and a timer.

3. Customers can choose a quiz category and participate in quizzes with connected customers

others.

4 Implementing a real-time update mechanism to display scores and the correct answers after each
question.

5. Clients should be able to exit the quiz "gracefully" and disconnect from the server.

3 technical highlights

• Be sure to examine extreme cases. Use your judgment to decide where it is

required No input type validation is required - for example, if you expect to receive a string you are

can assume that.

• You are responsible for creating a reliable connection between the server and the clients. Use wisely

in functions in the socket library.

• You must invest your efforts in the following:

✓ Provide a well-documented quality code.

✓ Provide documentation in a PDF file.


✓ Understand the theoretical material well.

• Implementation of a nice and clean GUI (graphical user interface). You will get a grade for that too.

4 instructions

4.1 Application

• You need to implement your code in the Ubuntu linux system in the Python language, as

which could be seen in the workshops. Below is a link where you can learn Python easily:

https://www.w3schools.com/python

• Do not use non-standard socket programming libraries. Use only libraries

which were presented in the workshops.

4.2 Documentation

• You are required to document your code well.

• You must attach a document in PDF format that includes the following:

1. Full name and ID.

2. An explanation of each file you created - including all classes and functions (which will include
images).

Illustration (usage examples) for each option on the server.

3 serving

• Submission in individuals.

• Compress all files in ZIP format and submit on the course website.

• Final submission date: 20.09.2024

• Note that you have a lot of time. Use it wisely.

You might also like