Professional Documents
Culture Documents
Project ER
Project ER
On
GUI Chat Application with Python
Submitted to
Purbanchal University
Biratnagar, Nepal
Submitted By
Aardik Acharya
Roshan Shrestha
COLLAGE OF INFORMATION
TECHNOLOGY AND ENGNEERING
Tinkune, Kathmandu
March 26, 2023
Sushan Kawan
COLLAGE OF INFORMATION
TECHNOLOGY AND ENGNEERING
Tinkune, Kathmandu
March 26, 2023
A project report
On
GUI Chat Application with Python
Submitted to
Purbanchal University
Biratnagar, Nepal
Submitted By
Aardik Acharya
Roshan Shrestha
Sushan Kawan
COLLAGE OF INFORMATION
TECHNOLOGY AND ENGNEERING
Tinkune, Kathmandu
March 26, 2023
ACKNOWLEDGEMENT
This is to acknowledge all those without whom this project would not have been
reality. Firstly, the project members would wish to thank Project supervisor who
provided immense support and time towards it. Without proper guidance, the
project would not have been complete.
The journey of making this project was so nice and all the teachers who
supported, the parents support also played a big role and friends too. The project
members thank to all of them and wish that they keep supporting like this.
A project is a bridge between theoretical and practical learning and with this
thinking the project members worked on the project and made it successful due to
timely support and efforts of all who helped.
Once again thank you Project supervisor for giving this chance to learn so many
things .There are no more valuable words to express the thank.
ii
ABSTRACT
A Python GUI chat application client is a program that provides users with a graphical user interface to connect to
a chat server and engage in real-time text-based communication with other users. In essence, the client facilitates
the interaction between the user and the chat server, allowing messages to be sent and received in a user-friendly
manner.
The objective of this project is to build chat application with GUI using python. This contains two files,
one will act as a server and the other will act as a client. It will create a desktop GUI for chat interface.
Currently, the chat application works in the local machine. To work between devices, change the IP
address for host and port. It also uses threading for simultaneously sending and receiving messages.
iii
LIST OF FIGURES
iv
LIST OF TABLES
1 Gantt chart 7
v
LIST OF ABBREVIATIONS
vi
Table of Contents
ACKNOWLEDGEMENT........................................................................................ii
ABSTRACT............................................................................................................iii
LIST OF FIGURES.................................................................................................iv
LIST OF TABLES...................................................................................................v
LIST OF ABBREVIATIONS.................................................................................vi
CHAPTER 1: INTRODUCTION.............................................................................1
1.3 Objectives..................................................................................................2
1.4 Features......................................................................................................3
5.2 Testing..........................................................................................................12
6.3 Limitations....................................................................................................16
CHAPTER 7: REFERENCE..................................................................................17
CHAPTER 1: INTRODUCTION
The process of conversing, engaging, and/or exchanging messages through the Internet is
referred to as chatting. It involves two or more people communicating via a chat-enabled
service or program. Chat can be given via the Internet using text, voice, or video
communication. A chat program is made up of two fundamental components: a server and
a client.
A server is a computer program or hardware device that offers functionality to other
programs or hardware. A client or clients are simply people who wish to communicate
with one another. Also, clients first need to connect to the server and then the server will
work as a medium between clients. The chat program we’ll create will be more like a chat
room than a peer-to-peer chat. As a result, numerous users can connect to the chat server
and submit messages. Any message is sent to every chat user that is connected.
1.1 Problem Statement
The problem domains on this project are:
2
1.2 Background information and motivation
Travelling to abroad for further studies have been really popular and growing
among students. With this the establishment of different kinds of institutions and
consultancy’s grows as well. So taking IELTS/GRE/GMAT tests is very common.
The project is designed to provide a digital platform for such institutions, where
they can easily manage students and exams. Whilst, benefitting the students to be
able to take exams remotely.
Since many developers realize that modern urbanites are living in a digital
situation, they have captured the commercial opportunity therefore many similar
applications have emerged in the market. These applications have easy-to-use
interfaces and features that make the user experience better. However, these
existing programs blindly pursue fancy appearance and huge features, resulting in
the high utilization rate of user’s resources, such as CPU and memory. For normal
users, these kinds of huge features are problematic. Therefore, this project is
designed to dedicate to low consumption which could run on any browser.
1.3 Objectives
The objectives of this project are:
3
1.4 Features
A. Admin can:
1. Manage credentials
2. Manage students
3. Manage questions
4. Manage faculties
5. Manage results
4
1.5 Document organization
The project report is divided into seven chapters. Chapter 1 is about the background
and motivation of the proposed application, the problem statement, and objectives
to solve the problem statement, features and highlighting of proposed applications
that have been achieved. Chapter 2 contains a review on the advancement of other
system on the market, along with comparisons, strengths, and weaknesses.
Chapter 3 is the system analysis containing feasibility study. Chapter 4 is the
system design including the use case diagram, and activity diagram. Chapter 5 is
about software development and implementation, system performance,
definitions, implementation and testing. Chapter 6 is the project review,
discussion, and conclusion, the achievements of the project, the problems
encountered in the development process and the future improvement. Finally
Chapter 7 is the part containing references.
5
CHAPTER 2: LITERATURE REVIEW
Online examination system is one of the methods of taking exams which doesn’t
require any kind of a piece of paper or a pen. It is the fast growing method to take
exams over online. Speed and accuracy is the reason behind the famous of this
because speed and accuracy is the backbone of this system. Many researchers
have already researched about online examination system and we have developed
an online examination system to keep an eye on this researches and these all are
the following:
The above developed system supports the login and some basic features,
resumption capabilities, random questions distribution. Ayo et a (2007): They
proposed a model of examination system. The software was developed in private
university in Nigeria. The reason behind the developed such as software is to
conduct the entrance examination for all Nigeria universities called JAMB (Joint
Admission Matriculation Board). This software was designed and tested in
Covenant University they were the private university in Nigeria. They found the
software really helpful for conducting neat and clean with accuracy entrance
examination. It eliminates the problems that are associated with the traditional
methods of entrance examination Jim and Sean (2006) (Zhenming, Conejos, Jim,
& Sean): They justified the assessment can be taken in different ways. First of all
they made a e-assessments via Internet and then the mindset has been done that
we can enhance the assessment to an online examination system.
6
CHAPTER 3: SYSTEM ANALYSIS
7
Table 1: Gantt chart
Date
Requirement
Analysis
System
Design
Implementatio
n
Testing
8
CHAPTER 4: SYSTEM DESIGN
9
4.2 Student use case diagram
10
4.3 Login activity diagram
The above figure Login activity diagram system shows the flow of login, where a
user will be able to login using their username and password. After the login user
can perform all the operations such as (manage students, manage credentials,
manage faculties, manage questions, manage results), if its admin else (take tests,
check results), if its student. If a user enters wrong details or doesn’t exist in the
database, an error is thrown. The diagram helps to demonstrate how the login
works in the project.
11
CHAPTER 5: SYSTEM DEVELOPMENT AND
IMPLEMENTATION
The proposed project is developed using Waterfall Model. Since the mode is
simple and easy to understand and use. It is easy to manage due to rigidity of the
model. The waterfall model has 6 phases. Such as: - Requirement analysis, system
design, implementation, testing, deployment and maintenance. Each phase in
waterfall model has specific deliverables and a review process. In this model
phases are processed and complete one at a time.
12
5.1 Tools and Technologies used
5.2 Testing
Unit Testing 1: Admin role
Test Objective: To ensure that the admin can add/remove the students, faculties,
questions, and results.
13
Click "faculties” in the Successfully listed faculties available Pass
menu
Click “Questions” in the The registered questions list available to manage Pass
menu
Click “update or delete” Successfully able to add or remove the students Pass
students
Test Objective: To ensure students are able to take exam, check the results and
logout.
14
Table 3 Unit Testing Student perspective
Click “take test” The questions regarding the test were successful Pass
loaded
15
CHAPTER 6: CONCLUSION AND FUTURE
ENHANCEMENT
In a nutshell the students are only given one time login privilege. The reason for
going one time login is that, in such test or examination system, the students are
not allowed to retake exams again and again. Also being able to login every time
will ensure the traffic disturbances and such examination system is taken by many
students which leads difficulty in the management so a onetime login ensures that
the students are logged out after their test is done and wait for the institution to
provide them the hard copy of their result.
In short, the proposed application will combine the strengths of most system on
the existing market and eliminate some unrealistic features, allowing admin to
focus on managing examination system.
Lastly, the proposed system player achieves the second objective to provide one
time login for the students. By this way the institution can worry less about
students being logged in even after taking their tests.
16
6.3 Limitations
The proposed project is not something the best out there. It is still lacking lots of
features which could make life of a user much easier. Such as:
17
CHAPTER 7: REFERENCES
Bibliography
ANDERSON, J. (2020, March 21). Human on technology. Retrieved from
JANNA ANDERSON :
https://www.pewresearch.org/internet/2012/02/29/main-findings-teens-
technology-and-human-potential-in-2020/
(Thapa, 2017)
https://github.com/vijaythapa333/gre-gmat-test-preparation-system
18