Professional Documents
Culture Documents
Project Report
Project Report
Project Report
PROJECT REPORT
FOURTH YEAR
VII SEMESTER
PRESENTED BY:
D.Sree Pujitha - 19NG1A1216
B.Anitha - 19NG1A1206
B.Lokesh - 19NG1A1213
Sai Pavan - 19NG1A1237
Ashwin - 19NG1A1256
ABSTRACT
A quiz is used to test students understanding of the material given. In early days Manual quiz
system was one of the most popular methods for assessing students. Even today the quiz
system is quite popular among the students as well as the teachers. But in manual quiz
system there are many problems that everyone face in common. Some of the problems are
that the manual system requires pen/pencil and paper, teacher needs to spend time for script
checking, students need to wait to get their result untill the teacher finishes script checking.
These are the most common problems of Manual quiz system that rotated each and everytime
the quiz held.
For these reasons, the popularity of manual systems decreases day by day and computer
based quiz system is taking place of manual quiz system. The computer based quiz system
are getting popular with a tremendous speed. As the technology is spreading throughout the
world, the automated system is taking the place of manual systems. Currently big institutes
are running their online quiz system at a very successful rate. In the recent years, the use of
electronic online quiz systems has become quite popular due to pressure of increasing class
sizes, need of more efficient methods of assessing distance students. These things motivate us
to work with computer based quiz systems.
The main objective of “Quizzee Bee Buzz” is to facilitate a user friendly environment for all
the users and reduce the manual effort. The application Quizzee Bee Buzz will provide a quiz
with multiple choice questions where a user can easily register and login to take quiz and
view his score.
TABLE OF CONTENTS
1 1
Introduction
2 2
Literature survey
3 3-4
Modules Implementation
4 5
Software and Hardware Requirements
5 6-8
Code Implementation
6 9-11
Output
7 12
Advantages and Disadvantages
8 13
Conclusion
9 14
References
INTRODUCTION
The Quizzie Bee Buzz Application is based on Python programming language and MYSQL .
The project Quizzie Bee Buzz consists of only the user side. The user must sign up first and
then log in to start the Quiz. The Quizzie Bee Buzz consists of basic multiple choice
questions based on basic Engineering. It is a Quiz portal system with Register, Login, and
Quiz modules.
The main objective of “Quizzie Bee Buzz” is to facilitate a user friendly environment for all
users and reduces the manual effort. In past days quiz is conducted manually but now this
quiz application proves to be time efficient and accurate.
The user registers for the quiz by providing necessary details. Whenever a new user registers,
a new record is stored in reg table of quizapp database of MySQL server at backend. The
unique username and password are the login credentials for the user which are used to login
and attempt the quiz. The user name and password are verified at backend. The user can view
his previous quiz score. The quiz score is updated as the user retakes the exam each time.
In the quizapp database of MYSQL server, we maintain two different tables, one for
registration and other for questions. Whenverer a new user registers a new record is added to
the registration table. The questions are imported from excel sheet to questions table using
python module – xlrd and MYSQLdb. Among the various number of questions, everytime
ten questions are generated randomly for the user in the quiz exam which is done by the
random module of python.
1
LITERATURE SURVEY
2
MODULES IMPLEMENTATION
Module 2 : Reading questions from EXCEL sheet and adding them to database
User registers and his details are added to added to databse using MySQLdb.
self.mainTitle = Label(f1, text="Register Yourself", bg="azure",font=("Helvetica", 30, "bold italic
underline")).place(x=50, y=10)
self.name = Label(f1, text="First Name : ", bg="azure", font=("Times New Roman", 10))
self.lname = Label(f1, text="Last name : ", bg="azure", font=("Times New Roman", 10))
self.email = Label(f1, text="Email id : ", bg="azure", font=("Times New Roman", 10))
self.uname = Label(f1, text="Username :", bg="azure", font=("Times New Roman", 10))
3
self.pw = Label(f1, text="Enter password : ", bg="azure", font=("Times New Roman", 10))
s = "insert into reg(name,lname,email,uname,p,score) values('%s','%s','%s','%s','%s','%d')"
arg = (name, lname, email, uname, p, 0)
cursor.execute(s % arg)
conn.commit()
Module 4 : User Authentication
s = "select * from reg where uname='%s' and p='%s'"
arg = (u, p)
cursor.execute(s % arg)
result = cursor.fetchall()
if result:
self.goinaccount(u)
else:
messagebox.showerror("Error", "Invalid Username or Password, Try Again!")
Module 5 : Quiz page and score updation
Generating questions using random module
id = random.randint(1, 85)
while len(s1) > 0:
s = "select qstn from questions where QID=%d"
id = s1.pop()
arg = (id)
cursor.execute(s % arg)
strQ = strQ.join(list(cursor.fetchone()))
questions.append(strQ)
Updating score of user whenever user logs in to the account
conn = MySQLdb.connect(host='localhost', database='quizapp', user='root', password='root')
cursor = conn.cursor()
q = "update reg set score='%d' where uname= '%s'"
arg = (s, self.user)
cursor.execute(q % arg)
conn.commit()
cursor.close()
conn.close()
messagebox.showinfo("Score", "Your Score is: " + str(s) + "/10")
4
HARDWARE AND SOFTWARE REQUIREMENTS
SOFTWARE REQUIREMENTS:
HARDWARE SPECIFICATIONS:
5
CODE IMPLEMENTATION
# lst = sheet.row_values(3)
# print(lst[0], lst[1], lst[2], lst[3], lst[4], lst[5], lst[6])
# q2 = "insert into questions(QID, qstn, opA, opB, opC, opD, ans)
values('%d','%s','%s','%s','%s','%s','%s')"
# arg = (int(lst[0]), lst[1], lst[2], lst[3], lst[4], lst[5], lst[6])
# cursor.execute(q2 % arg)
# conn.commit()
cursor.close()
conn.close()
import MySQLdb
from tkinter import *
from tkinter import messagebox
import hashlib
6
import random
class MainWindow:
def c_reg(self):
self.newWindow = Toplevel(self.master)
self.newWindow.resizable(0, 0)
self.app = Register(self.newWindow)
def c_login(self):
self.login = Toplevel(self.master)
self.login.resizable(0, 0)
self.log = Login(self.login)
def Submit(self):
l1[self.qno] = self.opt_selected.get()
x=0
y = True
7
for i in range(10):
if (l1[i] == 0):
x += 1
if (x > 0 and x != 1):
y = messagebox.askyesno("Warning", "You have not attempted " + str(
x) + " questions, Are you sure you want to submit?, You won't be able to make changes
again")
elif (x == 1):
y = messagebox.askyesno("Warning", "You have not attempted " + str(
x) + " question, Are you sure you want to submit?, You won't be able to make changes
again")
if (y == True or x == 0):
s=0
for i in range(10):
if (l1[i] == answerstemp[i][0]):
s=s+1
print("DEBUG: Score: ", s)
root = Tk()
root.resizable(0, 0)
RegObj = MainWindow(root)
root.mainloop()
8
OUTPUT
START PAGE:
REGISTRATION PAGE:
9
LOGIN PAGE:
1
QUESTIONS:
1
ADVANTAGES AND DISADVANTAGES
ADVANTAGES:
1) Immediate Grading:
For internal tests or class tests, CBT technology can assess students’ grades immediately, and
help them assess their own performance.This immediate grading system can guide students
on what needs to be done to improve their studies.
2) Reduces Time:
Paper-based exams take a lot of time to set up. But in computer-based exams, the question
papers are distributed virtually. The candidate gets a set time to give the examination; after
the time, the candidates' answers automatically get submitted. It saves the time and effort of
collecting answer sheets from the candidates one by one.
3) Randomizing questions
It is significant and more easy to randomize your question with just one click than to do it all
manually. Randomizing questions and even answers of those questions is not a lot a of work
to do with online quizzes. Besides the advantage of time saving, it also helps preventing
students from cheating.
4) Large number
DISADVANTAGES:
1) Often test literacy skills: “if the student reads the question carefully, the answer is
easy to recognize even if the student knows little about the subject”.
2) Provide unprepared students the opportunity to guess, and with guesses that are right,
they get credit for things they don’t know.
3) Expose students to misinformation that can influence subsequent thinking about the
content.
4) Takes time and skill to construct (especially good questions.)
1
CONCLUSION
This Quizee Bee Buzz application provides facility to play quiz anywhere and anytime. It
save time since user does not need to wait for the result. The main purpose of this project is to
develop an application that offers new aspects of learning and improving knowledge in
educational area. Most of the available apps are entertainment-based, which mostly do not
contribute to the academic enhancement of the students. User gets extra knowledge and
skills. User can register, log in, and give the test with his/her user id, password and can see
the results as well. This Quiz Application project is developed to overcome the time
consuming problem of manual system. The users who will use the system, don’t need high
computing knowledge and also the system will inform them while entering invalid data. This
application is developed for educational purpose, allowing the users to prepare the multiple
choice questions for different examinations conducted on provincial and national level. The
main goal of the application is to enable users to practice for subjective tests conducted for
admissions and recruitment
1
REFERENCES