Chat Bot
Chat Bot
(Note: All entries of the proforma of approval should be filled up with appropriate and
complete information. Incomplete proforma of approval in any respect will be
summarily rejected.)
Saima Shaikh
Date: …………………
College Enquiry Chatbots
A Project Report
By
This is to certify that the project entitled, "College Enquiry Chatbots", is bonafied work of Shaikh
Mohammed Zaid Abdul Khaliq bearing Seat No: 347 submitted in partial fulfillment of the
requirements for the award of degree of BACHELOR OF SCIENCE in INFORMATION
TECHNOLOGY from
University of Mumbai.
External Examiner
Intoda y' s dig ita l a g e,w here technolog y perm ea tes every a spect of ou r lives,the edu ca tiona l
sector is no exception. As the nu m ber of stu dents pu rsu ing hig her edu ca tioncontinu es to rise
g loba lly,Colleg e s a nd u niversities fa ce the cha lleng e of efficiently m a na g ing the influ x of
inqu iries from prospective stu dents. Tra ditiona lly,this process involved m a nu a lm ethods su ch
a s phone ca lls,em a ils,or in-personvisits to the a dm issionoffice. How ever,these m ethods a re
not only tim e-consu m ing bu t a lso prone to errors a nd inconsistencies.
The em erg ence of cha tbot technolog y presents a revolu tiona ry solu tion to this problem .
Cha tbots,pow ered by a rtificia l intellig ence a nd na tu ra l la ng u a g e processing a lg orithm s,ca n
eng a g e w ith u sers inrea l-tim e conversa tions,providing a ccu ra te a nd persona lized responses
to their qu eries. This technolog y ha s the potentia l to tra nsform the w a y Colleg e s ha ndle
inqu iries,m a k ing the process m ore efficient,a ccessible,a nd u ser-friendly.
Objective:
The primary objective of this project is to harness the power of chatbot technology to
develop a robust College inquiry system. By leveraging artificial intelligence and natural
language understanding capabilities, the system aims to provide prospective students with
timely and accurate information about College admissions, programs, facilities, and other
relevant details. Through seamless interaction and personalized responses, the chatbot
system aims to enhance the overall experience of prospective students and streamline the
inquiry process for College administrators.
Purpose
The purpose of the College inquiry chatbot system is multifaceted. Firstly, it aims to
automate and streamline the process of handling inquiries, reducing the reliance on manual
intervention and administrative overhead. By deploying a chatbot interface, College s can
ensure prompt and consistent responses to inquiries, regardless of the time or volume of
requests received. Additionally, the system aims to enhance the accessibility and
convenience of obtaining information about College admissions, programs, and facilities,
catering to the diverse needs of prospective students.
Scope:
The scope of the project encompasses the development of a comprehensive
chatbot system capable of addressing a wide range of inquiries related to
College admissions. This includes providing information about admission
procedures, eligibility criteria, program offerings, campus facilities,
extracurricular activities, and other relevant details. The chatbot system will
be designed to engage users in natural language conversations, understand
their queries accurately, and provide relevant responses in a timely manner.
Furthermore, the system will incorporate features such as user authentication,
data storage, analytics, and reporting to ensure seamless operation and
effective management of inquiries.
Technology Used
The traditional methods employed in handling College inquiries involve a manual approach, where
prospective students reach out to College s via phone calls, emails, or in-person visits to the
admission office. While these methods have served their purpose, they come with inherent
limitations.
Firstly, the manual handling of inquiries is time-consuming and resource-intensive. College staff
members are required to dedicate significant time and effort to respond to inquiries promptly, which
may result in delays and inefficiencies, especially during peak admission seasons. Moreover, the
reliance on human operators increases the likelihood of errors and inconsistencies in the information
provided to prospective students. Additionally, the manual system may struggle to cope with
fluctuations in inquiry volume, leading to delays and disruptions in service.
Proposed System
In contrast to the limitations of the existing system, the proposed College inquiry chatbot system
offers a modern and efficient solution to handle inquiries effectively. By leveraging chatbot
technology, the system provides users with a seamless and intuitive platform to interact with the
College and obtain relevant information.
The chatbot interface serves as a virtual assistant, capable of engaging users in real-time
conversations and providing accurate responses to their inquiries. Through the use of artificial
intelligence and natural language processing algorithms, the chatbot can understand the intent and
context of user queries, enabling it to deliver personalized and contextually relevant information.
This not only enhances the user experience but also ensures consistency and accuracy in the
information provided.
Moreover, the chatbot system operates 24/7, allowing users to access information at their
convenience without being restricted by office hours or time zones. This significantly improves
accessibility and responsiveness, catering to the diverse needs of prospective students from around
the world.
Requirement Analysis
Before embarking on the development of the chatbot system, it is essential to conduct a thorough
analysis of the requirements, encompassing both hardware and software components.
TOOL
Star UML
Star UML is a UML tool by MK Lab. This software is very useful to draw the diagram
like class diagram, activity diagram, and use case diagram in the project.
Features of Star UML
Operational Feasibility
Economic Feasibility
C=2.4
Size=5.8 KLOC
Effort Estimate:
Effort = 2.4 * (KLOC) ^ 1.05
Effort = 2.4 * (5.8) ^ 1.05
Effort ≈ 15.1988 person-months
Chapter 3
Requirements Analysis
- Identify the need for an AI College information bot to provide reliable College information and
guidance to users.
- Recognize the limitations of traditional methods for accessing College information, such as
searching online or consulting medical professionals.
- Understand the importance of accessibility and affordability of healthcare services, particularly in
rural areas or underserved communities.
- Acknowledge the potential of AI-powered solutions to bridge the gap in healthcare accessibility
and provide instant support and information to users.
- Define the scope of the problem, including the target audience, key objectives, and expected
outcomes of implementing the AI College information bot.
Proposed Statements:
• The project aims to address the need for a reliable and accessible AI College information bot
that provides accurate health-related information to users.
• The bot will assist users in obtaining information on symptoms, conditions, treatments, and
healthy habits without offering medical diagnoses or advice.
• Emphasis will be placed on promoting user awareness about healthcare topics and connecting
users with credible resources for further information or professional assistance.
• The project seeks to bridge the gap in healthcare accessibility, particularly in rural areas, by
providing an AI-powered solution that can deliver instant and reliable information.
• Functional Requirements:
• Natural language understanding and processing capabilities for interpreting
user queries.
• Access to a comprehensive knowledge base of College information for
providing accurate responses.
• Guidance through a symptom assessment process without offering medical
diagnoses.
• Personalized recommendations for promoting healthy habits based on user
interactions and preferences.
• Connectivity with external APIs or databases to fetch additional information
or resources.
• Non-Functional Requirements:
• Accuracy: Ensuring the bot's responses are reliable and backed by credible
sources.
• Responsiveness: Providing quick and timely responses to user queries to
enhance user experience.
• Privacy and Security: Implementing measures to protect user data and
maintain confidentiality.
• Scalability: Designing the system to handle a growing user base and
increasing query loads.
• Ethical Considerations: Incorporating disclaimers, ensuring user consent,
and avoiding biases in information dissemination
3.3 Planning and Scheduling
Planning and scheduling are distinct but inseparable aspects of managing the successful project. The process of
planning primarily deals with selecting the appropriate policies and procedures in order to achieve the objectives of
the project. Scheduling converts the project action plans for scope, time, cost and quality into an operating timetable.
The translating of the project criteria for scope, time, cost, and quality and the requirements for human resources,
communications, risk and procurement into workable
“machinery” for the project team a critical interface juncture for the project team. Taken together with the project
plan and budget, the schedule becomes the major tool for the management of projects. In addition, the integrated
cost-time schedule serves as the fundamental basis for monitoring and controlling project activity throughout its life
cycle.
3.3.1 GANTT chart
A Gantt chart, or harmonogram, is a type of bar chart that illustrates a project schedule. This chart lists the tasks to be
performed on the vertical axis, and time intervals on the horizontal axis. The width of the horizontal bars in the graph
shows the duration of each activity.
What the various activities are
When each activity begins and ends
How long each activity is scheduled to last
Where activities overlap with other activities, and by how much
The start and end date of the whole project
3.3.2 PERT chart
A Pert chart is a project management tool used to schedule, organize, and coordinate tasks within a project. PERT
stands for program Evaluation review Technique, a methodology developed by U.S. Navy in 19540s to manage the
Polaris submarine missile program. A similar methodology, the Critical Path Method (CPM) was developed for
project management in the private sector at about the same time.
• Numbered rectangles are notes and represent events or milestones.
• Directional arrows directions indicate possible concurrent tasks.
Dotted lines indicate dependent tasks that do not require resources.
3.4 Software and Hardware Requirements
Hardware Requirements:
The hardware components required for building the AI healthcare chatbot system using python.
o RAM- minimum 4gb/Above
o Processor-minimum intel i5 core/Above
o Windows- 7/Above
Software Requirements:
The software components required for building the AI healthcare chat bot system using python language.
o Good Internet speed
o Java script enabled browser
o Programming Language Python
o Python Libraries & Packages
o Tensor flow Keras
o NLTK
o Pickle
o Algorithm – Architecture RNN - LSTM (Deep Neural Networks)
By using above all these components we will make chatbot for overall project view.
3.5 Conceptual Models
ER Diagram :
An entity relationship diagram (ERD) shows the relationships of entity sets stored in a database. An entity in this
context is a component of data. In other words, ER diagrams illustrate the logical structure of databases.
Entity:
An entity is an object in the real world that is distinguishable from other objects. Examples: The address of the
manager of the institution, a Person with unique name etc. It is often useful to identify a collection of similar entities.
Such a collection is called as “Entity set”. Note that entity set need not be disjoint.
Attributes:
An entity is described using a set of attributes. All entities in a given entity set have the same attributes; this
essentially what we mean by similar. Our choice of attributed reflects the level of detail at which we wish to
represent information in crisis. For e.g. In this case we will store the name, registry umber, the course enrolled of the
student and not his/her address or the gender.
Relationships:
A Relationship describes relations between entities. There are 4 relationships of relational database and they are:
One to One: This type of relationship is rarely seen in real world.
One to Many: It reflects business rule that one entity is associated with many number of same entity. For example,
one student can enrol for many courses, but one course will have one Student.
Many to One: It reflects business rule that many entities can be associated with just one entity. For example, Student
enrols for only one Course but a Course can have many Students.
Many to Many: For example, many students can enrol for more than one course.
Class Diagram
A class diagram is an illustration of the relationships and source code dependencies among classes in the Unified
Modelling Language (UML). In this context, a class defines the methods and variables in an object, which is a
specific entity in a program or the unit of code representing that entity. Class diagrams are useful in all forms of
object-oriented programming (OOP). The concept is several years old but has been refined as OOP modelling
paradigms have evolved.
In a class diagram, the classes are arranged in groups that share common characteristics. A class diagram resembles a
flowchart in which classes are portrayed as boxes, each box having three rectangles inside. The top rectangle contains
the name of the class; the middle rectangle contains the attributes of the class; the lower rectangle contains the
methods, also called operations, of the class. Lines, which may have arrows at one or both ends, connect the boxes.
These lines define the relationships, also called associations, between the classes.
Activity Diagram
Activity diagram is another important diagram in UML to describe the dynamic aspects of the system. Activity
diagram is basically a flowchart to represent the flow from one activity to another activity. The activity can be
described as an operation of the system.
The control flow is drawn from one operation to another. This flow can be sequential, branched, or concurrent.
Activity diagrams deal with all type of flow control by using different elements such as fork, join, etc.
Activity or Action State: An action state represents the non-interruptible action of objects.
Action Flow:
Action flows, also called edges and paths, illustrate the transitions from one action state to another. They are usually
drawn with an arrowed line.
Object Flow:
Object flow refers to the creation and modification of objects by activities. An object flow arrow from an action to an
object means that the action creates or influences the object. An object flow arrow from an object to an action
indicates that the action state uses the object.
Synchronization:
A fork node is used to split a single incoming flow into multiple concurrent flows. It is represented as a straight,
slightly thicker line in an activity diagram.
A join node joins multiple concurrent flows back into a single outgoing flow.
A fork and join mode used together are often referred to as synchronization.
Use Case Diagram
Use case diagrams are usually referred to as behavior diagrams used to describe a set of actions (use cases) that some
system or can perform in collaboration with one or more external user of the system (actors). Each use case should
provide some observable and valuable result to the actors or other stakeholders of the system.
Use case diagrams are in fact twofold - they are both behavior diagrams, because they describe behavior of the
system, and they are also structure diagrams - as a special case of class diagrams where classifiers are restricted to be
either actors or use cases related to each other with associations.
Sequence Diagram
A sequence diagram shows object interactions arranged in time sequence. It depicts the objects and classes involved
in the scenario and the sequence of messages exchanged between the objects needed to carry out the functionality of
the scenario. Sequence diagrams are typically associated with use case realizations in the Logical View of the system
under development. Sequence diagrams are sometimes called event diagrams or event scenarios.
A sequence diagram shows, as parallel vertical lines (lifelines), different processes or objects that live
simultaneously, and, as horizontal arrows, the messages exchanged between them, in the order in which they occur.
This allows the specification of simple runtime scenarios in a graphical manner
.
Chapter 4
Implementation And Testing
Index.html
{% extends "base.html" %} {% block head %}
<title>college Chatbots </title>
{% endblock head %} {% block hero %}
</h2>
<div data-aos="fade-up" data-aos-delay="600">
<div class="text-center text-lg-start">
<a href="#about" class="btn-get-started scrollto d-inline-flex align-items-center justify-content-center
align-self-center">
<span>Get Started</span>
<i class="bi bi-arrow-right"></i>
</a>
</div>
</div>
</div>
<div class="col-lg-6 hero-img" data-aos="zoom-out" data-aos-delay="200">
<img src="{{ url_for('static',filename='custom/hero-main.png') }}" class="img-fluid" alt="">
</div>
</div>
</div>
</section>
</div>
</div>
</section>
<!-- End About Section -->
<header class="section-header">
<h2>Features</h2>
<p>What makes our website unique?</p>
</header>
<div class="row">
<div class="col-lg-6">
<img src="{{ url_for('static',filename='img/features.png') }}" class="img-fluid" alt="">
</div>
</div>
</div>
</div>
<!-- / row -->
</div>
</section>
<!-- End Features Section -->
<header class="section-header">
<h2>Team</h2>
<p>Our hard working team</p>
</header>
</div>
</div>
</section>
<!-- End Team Section -->
{% endblock main %}
Register.html
{% endblock main %}
Login .html
<div class="container-login100-form-btn">
<button type="submit" class="login100-form-btn">
Login
</button>
</div>
A security question is a form of shared secret used as in authenticator. It is commonly used by banks cable companies
and wireless provider as in extra security layer. Financial institution have used questions to authenticate customers
since at least the early 20th century. In 1906 speech at a meeting of section of the American bankers’ associations,
Baltimore banker Willian m. Hayden described his institutions use of security questions as a supplement to a
customer signature record the described the signature cards used in opening new account which had spaces for the
customers birth place, residence, mother’s maiden name, occupation and age.
Due to the common place nature of social media many of the traditional security questions are no longer useful or
secured. It is important to remember that a security question is just another password. Therefore, a security question
should not be shared with anyone else or include any information readily available on social media websites, while
remaining simpler, memorable, difficult to guess, and constant over time. It is important for the user to remember the
security questions if the forgot the password. Security questions can help them to recover their account (if the user
remembers the answer they had set to their security questions.)
System testing is designed to uncover the weaknesses that were not found in earlier test. In the testing phase, the
program is executed with the explicit intention of finding errors. This includes forced system failures and validation
of the system, as its user in the operational environment will implement it. For this purpose, test cases are developed.
When a new system replaces the old one, such as in the present case, the organization can extract data from the old
system to test them on the new. Such data usually exist in sufficient volume to provide sample listings and they can
create a realistic environment that ensures eventual system success. Regardless of the source of test data, the
programmers and analyst will eventually conduct four different types of tests.
➢ Integration Testing
The integration is the next important concept that highlights in the testing scenario. Integration testing can be
performed in different strategies. One of them is the Big Bang testing in which one could first test all of a system’s
modules separately and then whole systems at once. But here we proceed abruptly from the module testing and the
integration testing disappears. Another alternative is the Incremental Testing.
With the Incremental testing there are many advantages. We can start the integration as soon as reasonable subsets of
modules have been developed. It is easier to localize errors incrementally. The partial aggressions of modules often
constitute important subsystems that can have autonomy with these testing. The need for stubs and drivers can be
reduced.
There are two approaches to the Incremental Testing. They include Bottom-up and Top-down aggregations. The
former means starting aggregation and testing from leaves of the module charts. The latter means starting from the
top-level modules and substitute for higher-level modules. In our project we have used the top-down approach of
incremental testing.
Top-down integration is an incremental approach to the construction of programs structure. Modules are integrated
by moving downward through the control hierarchy, beginning with the main control module that is the basic
connectivity module in our project. Test is done on each module.
➢ System Testing
The system testing deals with the process of testing the system as a whole. This is done after the integration process.
Moving through each module from top to bottom tests the entire system. The verification and validation process are
then carried out. The errors that occur the testing phase are eliminated and a well-functioning system is developed.
Test case design focuses on a set of techniques, which meets all testing objectives, which are mentioned below.
Testing demonstrates that software functions work according to specifications. In addition data collected from testing
provides a good indication of software reliability and some indication of software quality as a whole. Testing results
in the deduction in the numbers of errors. Critical modules are tested as early as possible.
Various Testing Methods:
Unit testing focuses verification efforts on the smallest unit of the software design, the module. This is also known as
Module Testing. The modules are tested separately. This testing is carried out during programming stage itself.
Validation Testing:
Validation testing can be defined in many ways but a simple definition is that validation succeeds when the software
functions in a manner that can be reasonably expected by the users.
After validation test has been conducted one of the two possible conditions exists
1. The function or the performance characteristics confirm to specification and are accepted.
2. A deviation from specification is uncovered and a deficiency list is created.
Output Testing:
After performing the validation testing the next step is output testing of the proposed system since no system is useful
if it does not produce the required output in the specific format. The outputs generated or displayed by the system
under consideration are tested by asking the users about the formats required by them.
User Acceptance Testing:
User acceptance of a system is a key factor for the success of any system. The system under consideration is tested
for user acceptance by constantly keeping in touch with prospective system users at the time development and
making changes whenever required.
Quality Assurance Methodologies:
Quality assurance is a planned and systematic of all actions necessary to provide adequate confidence that the item or
product confirms to established technical requirements. The purpose of software quality assurance group is to
provide assurances that the procedures, tools and techniques used during product development and modification and
adequate to provide desired level of confidence in the work products. Often, software quality assurance personnel are
organizationally distinct from software development group. Preparation of a Software Quality Assurance Plan for
each software products is primary responsibility of software quality assurance group. Quality assurances personnel
are sometimes are charge of arrangements for walkthroughs, inspections and major milestones reviews.
In addition, quality assurance personnel often conduct the project post mortem, write project legacy document and
provide long term retention of the project records.
Typically, the quality assurance group will work with the development group to derive Source Code Test Plan. A test
plan for the source code specifies the objectives of testing; the test plan for source code specifies the objectives of
testing, the test completion criteria, the system integration plan, and methods to be used on particular test inputs
expected outcomes. There are four types of tests that the source code must satisfy: function tests, performance tests,
stress test and structural test.
System verification and validation:
System verification and validation is done to check the quality of the software in simulated and live environment. A
number of different transactions are used to perform verification. Validation is the process of demonstrating that the
implemented software does satisfy the system requirements. One aspect of software validation is to statistically
analyse the program without resorting to actual execution. The system validation is done in such a way that the
system response time will not cause any hardship to the user.
Login Verification
Username admin
Password admin123
Remark OK
Username admin
Password MaharashtraCollege
Expected
Password Login Successful
Actual Output Login Successful
Remark Not OK
CONCLUSION
In conclusion, the development of the AI College bot project represents a significant step forward in
leveraging technology to improve access to healthcare information and support. By harnessing the
power of artificial intelligence, natural language processing, and deep learning algorithms, this
project aims to address the growing need for reliable health-related assistance and guidance in
today's digital age.
Through the creation of an interactive chatbot interface, users can access a wealth of College
information, receive personalized recommendations, and connect with relevant resources
seamlessly. The project emphasizes the importance of user empowerment, enabling individuals to
make informed decisions about their College and well-being.
Moreover, the project underscores the ethical considerations inherent in deploying AI technologies
in the healthcare domain. By prioritizing user privacy, data security, and transparency, the AI
College bot ensures that users can trust the information and support provided by the system.
Looking ahead, the project sets the stage for ongoing learning and adaptation, with future iterations
focused on continuous improvement based on user feedback and advancements in AI and healthcare
technology. By remaining responsive to user needs and evolving trends, the AI College bot strives to
remain a valuable asset in promoting College awareness and accessibility for individuals worldwide.
In summary, the AI College bot project represents a promising endeavor to harness technology for
the betterment of healthcare, offering a glimpse into a future where personalized, reliable College
support is just a conversation away.
BIBLIOGRAPHY
• Sophia, J. J., Kumar, D. A., Arutselvan, M., & Ram, S. B. (2020). A survey on chatbot implementation in
College care using NLTK. Int. J. Comput. Sci. Mob. Comput,
• Hwang, T. H., Lee, J., Hyun, S. M., & Lee, K. (2020, October). Implementation of interactive healthcare
advisor model using chatbot and visualization. In 2020
• International Conference on Information and Communication Technology Convergence (ICTC) (pp. 452-
455). IEEE
• Sivaraj, K., Jeyabalasuntharam, K., Ganeshan, H., Nagendran, K., Alosious, J., & Tharmaseelan, J. Medibot:
End to end voice based AI medical chatbot with a smart watch.
• Madhu, D., Jain, C. N., Sebastain, E., Shaji, S., & Ajayakumar, A. (2017, March). A novel approach for
medical assistance using trained chatbot. In 2017 international conference on inventive communication and
computational technologies (ICICCT) (pp. 243-246). IEEE.