College Recommendation System Report
College Recommendation System Report
A PROJECT REPORT
Submitted to
Department of Computer Application
Orchid International College
Submitted by
June, 2022
SUPERVISOR’S RECOMMENDATION
I hereby recommend that this project prepared under my supervision by Suman Rai
entitled “COLLEGE RECOMMENDATION SYSTEM” in partial fulfillment of
the requirements for the degree of Bachelor of Computer Application is recommended for
the final evaluation.
………………
SIGNATURE
SUPERVISOR
Project Co-ordinater
Department of IT
Orchid International College
Bijayachowk, Gaushala
i
Tribhuvan University
Faculty of Humanities and Social Sciences
Orchid International College
Bijaychowk, Kathmandu
LETTER OF APPROVAL
This is to certify that this project prepared by Suman Rai entitled “COLLEGE
RECOMMENDATION SYSTEM” in partial fulfillment of the requirements for the
degree of Bachelor in Computer Application has been evaluated. In our opinion it is
satisfactory in the scope and quality as a project for the required degree.
…………………………………
………………………….
Er. Dhiraj Kumar Jha Mr. Bidur Dahal
………………………. ………………………………..
Ms. Shikha Sharma
Lecturer,
Orchid International College
Bijaychowk, Gausala
ii
ABSTRACT
College Recommendation System Project is a web-based application in python, developed
mainly for recommendation of college for those students who don’t know the proper
knowledge of college in a particular area. Most of the students confused of choosing their
interested college and faculty. They have to make decision within a 2 month of time and they
don’t have proper guidance for searching quality college and high scope faculty. In order to
solve student’s problems, this project College Recommendation System will guide to collect
best college in the particular area.
In this project, we have developed a recommender system that take some information from
the user, survey and review from old students and generates recommendations in sorted
order. Which provides information to the students and advisors to improve the choice of
college and course. This project help to those students who want good college and faculty
according to the old student’s details. Students who passed out SEE, they don’t worry about
the choosing college. In our methodology we use collaborative filtering algorithm to
improves our recommendation. Recommending college based on old students’ data,
processing of these data, thus if the information is properly listed then the task of
recommending would get a lot easier. The difficult task for this project is to collect all the old
student’s data from their respective college who passed out SEE. Also, when results are
shown to the user, big challenge is how well data can be ranked so that user satisfaction is
guaranteed.
In this system, students can easily log in to the system and get sufficient knowledge about
college and faculty as per their interest. It is web-based system developed using Django
framework of python. This system make ease for every system who have passed SEE
examination.
iii
ACKNOWLEGDEMENT
We are very thankful to our project supervisor Er. Dhiraj Kumar Jha who had provided a
precious time for our project. In this time, we learned lot of things related to project and
made us proper guidance to complete our project. Also, I would like to thanks all of my
friend to be a part of my project by providing lot of support and guidance.
The aim of this project is to make familiar to the practical aspect and uses of theoretical
knowledge and clarifying the use of College Recommendation system and gives effective
way of recommending the college using the old school’s name. So, we have successfully
completed the project and compiled this report as the summary and the conclusion that we
have drawn from the project. During this project, we have gained a valuable experience and
knowledge.
iv
TABLE OF CONTENTS
SUPERVISOR’S RECOMMENDATION…………………………………………………….i
LETTER OF
APPROVAL…………………………………………………………………….ii
ABSTRACT………………………………………………………….…………..…………..iii
ACKNOWLEDGEMENT……………………………………………………..…….……….iv
TABLE OF CONTENTS………………………………………………………….…………..v
LIST OF FIGURES……………………………………………………………..……………
vii
LIST OF TABLES………………………………………………………………….
……….viii
LIST OF ABBREVIATIONS………...………………………………………….…..……….ix
Chapter 1: Introduction……………………………………….
……………………………..1
1.1 Introduction………………………………………………………….…………….…..1
1.2 Problem statement……………………………………………………….………….....1
1.3 Objectives…………………………………………………………………….…….…2
1.4 Scope and limitation………………………………………………………….….….…
2
1.5 Report Organization………………………………………………..………..….……..3
Chapter 2: Background study and Literature
Review……………………………………..4
2.1 Background study…………………………………………..………….…………...
….4
2.2 Literature Review…………………………………………………………………..….4
Chapter 3: System Analysis and Design………………………………………………….…
5
3.1 System Analysis……………………………………………………………………….5
3.1.1 Requirement Analysis…………………………………………………………………5
3.1.2 Feasibility Analysis……………………………………………………………………9
v
3.1.3 Object Modeling…….……………………………………………….…………….…
10
3.1.4 Dynamic Modeling….…….………………………………………….
………............11
3.1.4 Process Modeling….…….………………………………………….………..............12
3.2 System
Design………………………………………………………………………..12
3.2.1 Refinement of class…………………………………………………….………….....13
3.3 Algorithm Details…………………………………………………………………….14
Chapter 4: Implementing and Testing…………………………………………………….15
4.1 Implementation………………………………………………………………………15
4.1.1 Tools used……………………………………………………………………………15
4.2 Testing………………………………………………………………………………..16
4.2.1 Test Cases for Unit Testing……………………………………………………….….16
4.2.2 Test Cases for System Testing………….………………………………………….…
20
Chapter 5: Conclusion and Future Recommendations…………………………………..22
5.1 Conclusion……………………………………………………………….……….….22
5.1 Outcome……………………………………………………………….......................22
5.3 Future Recommendations ………………………………………………………..
…..22
REFERENCES………………...…………………………..…………………………….….23
vi
LIST OF FIGURES
vii
LIST OF TABLES
viii
LIST OF ABBREVIATIONS
DB Database
AS Auction System
JS JavaScript
UC Use Case
PYC Pycharm
ix
Chapter 1: Introduction
1.1 Introduction
Recommending on the basic of some information, past data, review, rating etc. with some
machine learning algorithm, that process of system we called as Recommendation System.
College Recommendation System guide the students to choose best college according to past
data and review of old students. Many students get confused to select which college is best near
his/her location. They do not have proper information of college. Also, they do not have time as
well to choose the best college with in a two month of time after SEE. This time might be the
toughest time ever to make decision. Some of them study bridge course to get help from mentor
to choose college and faculty.
The goal of this project is to study recommendation engines and identify the shortcomings of
tradition recommendation engine and to develop a web-based recommendation engine by
making the use of user based supervised learning and sentimental analysis. This system
recommends students by taking one of the input college name available in the system. Old
students record of that particular school are inside the database. And review of old students who
studied the college compare with that past data of particular school’s students who choose
college and carry out college name in the rank order.
Recommendation System are software or tools which provides recommendations of college to
the students in which they might be selected. This system represents important powerful method
enabling students to filter out large information and find out on the basic of their choice.
Various types of Recommendation techniques include:
• Supervised learning
• Sentimental Analysis
• Native Byes
• Decision tree
This project “College Recommendation System” the challenging task is to collect the database of
all colleges. Generating the list of colleges from all the colleges requires to eliminate those
colleges in which the candidate is not eligible
1
1.2 Problem Statement
We all have seen the social media like face book pages, Instagram pages, messages, huge
number of students asking what do after SEE, which faculty is best for career development,
which faculty cost reasonable, which college is best for higher education, which one is amongst
top 10 college in some certain area. Also, there is more instructions for career path way for
students after SEE. It was a hard decision for all those passed out SEE. Different course like
bridge course related to science, management and humanities are available for students for their
better decision after SEE. And we can find 75 % can join faculty according to bridge course and
remaining 25% will leave because of their interest and budget. Most of the students join bridge
course not because of their interest, because of their friend’s decision. This makes students
realize after 1 month of joining. To encounter this, we have College Recommendation system.
Using this system, students can choose college as well as faculty according to budget, their
capabilities, interest not according to friends’ opinion, parents’ opinion because this site make
students clear of which faculty make me what.
1.3 Objectives
Goal is a broad statement that defines what you plan to do in project. The main goal of this
Project is to guide students to choose best college using machine learning algorithm and Django
python framework.
Objectives detailed statements describing the ways through which you intend to achieve the goal.
The objectives are mentioned below:
• To create the straight vision of students after SEE according to their school past information
and rating.
• To make the student confident to choose faculty and college based on system recommendation,
budget etc.
2
1.4 Scope and Limitation
The main scope and deliverables of the project would be:
• Understand and prepare detailed requirement and specifications.
• Recommendation of college by clicking their old college name.
• Prepare high level and detailed design specification of the system.
• Prepare Test plan and Test case.
• Develop the system and coding.
• Perform unit testing, integration testing and system testing.
• Demonstrate a bug free application after suitable modification if needed.
3
1.6 Report Organization
Chapter 1: Introduction
This section demonstrates the introduction, objective, scope and limitation of our system.
This section provides the knowledge of background study and literature review of the entire
system and limitations of previous others system.
This section provides system analysis and design with functional and non-functional requirement
of the system. Also, it provides the Domain object model, class diagram of the system.
This section provides the implementing tool and technique with proper testing like test cases.
This section provides the expected result and conclusion of the existing system.
4
Chapter 2: Background Study and Literature Review
5
Chapter 3: System Analysis and Design
i. Functional requirement
6
A use case is a list of actions or event steps typically defining the interactions between actors and
the system. In our system there are mainly three actors and they are admin, buyer and seller who
interact with the system. Admin create/update a new post or category into the system and system
gives response if the action is implemented or not. Likewise, buyer can a new account by filling
up the registration form in our system and bid for the product. Also, a seller can sell his product
by adding the product and its description into the system.
7
Table 3.2: UC-Description for choose Recommendation
8
Success Scenario The students successfully submit the form.
Failure Scenario Review error.
Table 3.3: UC-Description for select exam form
These are some functional requirement of our system “College Recommendation System”.
Login/signup
System shall provide login and signup form for all users.
View College
The system shall provide college details with review, rating and others necessary information.
Choose Recommendation
The system shall provide old school name and location to get the review sentiments of old
students.
Select admission form
The system shall admission form that helps to collect review data from old students.
Logout
The system shall provide logout button for the students.
Security:
i. The system shall be able to check validation and authentication of the users.
ii. The system shall be secure and proper accountability includes not allowing user to see other
users accounts.
9
iii. The system shall be able to save password as hash code in database.
Usability requirement:
i. The system shall allow a user to access the system from the Internet.
ii. The system shall be able to run any web browser as an interface.
Availability Requirement:
i. The system shall be available 100% for the users and is used 24hrs a day and 365 days a
year.
ii. The system shall be operational 24hrs a day and 7 days a week.
The feasibility study is concerned with how your project is feasible with respect to time and cost.
This system is not huge like Amazon, so implementation and maintenance are easy also all the
software used to develop is open source.
i. Technical Feasibility
This system can be implemented in various platform and various platform have different version,
that will help to operate in future.
1.Hardware Requirement
Processor: 700MHz Intel Pentium III or equivalent or new.
Disk space: 80mb or more
RAM: 4GB or more
2.Software Requirement
Operating system: Windows (7 or more)
Web Browser: IE 10 or above, Mozilla FF or google chrome
Jupyter notebook with install numpy and pandas
Django framework with python install.
10
Operational feasibility means how the system works effectively and efficiently in order to create
greater performance.
11
Figure 3.3: Conceptual Class Diagram of College Recommendation System
3.1.4 Dynamic Modelling
Dynamic Modelling describes those aspect of the system that are concerned with time and
sequencing of the operations. It is used to specify and implement the control aspect of the
system. Dynamic model is represented graphically with the help of state diagrams. It is also
known as state modelling.
i. State Diagram
A state diagram is used to represent the condition of the system or part of the system at finite
instances of time. It’s a behavioral diagram and it represents the behavior using finite state
transitions.
12
Figure 3.4: State Diagram
13
Figure 3.5: Activity Diagram
14
3.2 System Design
3.2.1 Refinement of Classes and Objects
15
3.3 Algorithm Details
Sentiments analysis
Sentiment analysis is a technique through which you can analyze a piece of text to determine the
sentiment behind it. It combines machine learning and natural language processing (NLP) to
achieve this. Using basic Sentiment analysis, a program can understand whether the sentiment
behind a piece of text is positive, negative, or neutral.
For example, you can use sentiment analysis to analyze customer feedback. After collecting that
feedback through various mediums like Twitter and Facebook, you can run sentiment analysis
algorithms on those text snippets to understand your customers' attitude towards your product.
There are many types of approach for identifying whether the text is negative positive and
neutral.
Here, rule-based tokenization, parsing, and the lexicon technique are used. The strategy counts
how many positive and negative terms are present in the sample. If there are more positive words
than negative words, the emotion is positive; otherwise, it is the opposite.
16
Chapter 4: Implementation and Testing
4.1 Implementation
Physical system specifications are transformed into a functional and dependable solution at this
level. The system is developed in this location. The job is divided into modules or units and
actual coding is started as soon as the system design documents are received. Testing comes after
it. During this stage of the software development process, several tools are employed.
Tools Used:
● Python: High-level, general-purpose programming language designed for web development.
● VS Code: Source-code editor made for debugging, syntax highlighting and code refactoring.
● SQLite: Open-source, stand-alone, transaction relational database engine designed to be
embedded into an application.
● Draw.io: Diagram Making Tool
● Front-end: HTML, CSS, JavaScript
● Backend: Python with Django
17
4.2 Testing
In general, testing is finding out how Ill something works. In terms of human beings, testing tells
what level of knowledge or skill has been acquired. Testing is the process of evaluating the
capability of the system that checks if the system meets its requirements. After the website was
developed, it was tested using unit testing and system testing.
18
Table 4.1 Test-Case for login
Test Case
Description: This test is used to check the login functionality of college recommendation
system with correct username and password.
Enter valid
Credentials are As
2 username and “click” Pass
entered. expected
password,
19
Table 4.2: Test-Case for Bid Product
Test Case
Description: Test and verify the recommendation using old school name and location its
message to users.
Pre-conditions input field to enter school name and location must be loaded in the system and
user must be logged in.
Dependencies:
Test Actual Status
Step Test Steps Expected Result Notes
Data Result (Pass/Fail)
User already provide school
User must be
name and location directly As
1 logged in into “click” show the data and sentiments Pass
expected
the system. analysis
20
Table 4.3 Test-Case for payment
Test Case
Test Title: Check for Exam Form Test Execution date: 2022-06-21
Description: This test is used to get the admission form for the purpose of collecting data
and review.
Pre-conditions: User has to fill the admission form to get the 10% discount.
Dependencies:
Test Actual Status
Step Test Steps Expected Result Notes
Data Result (Pass/Fail)
Exam form Check the user provide
As
1 option is “click” feedback or not, if not user Pass
expected
clicked. take to the review form.
Review User submit the review from
As
2 form is same username that wont Pass
“submit” expected
filled. used for next time.
Exam form After getting the review, As
3 “Click” Pass
displayed exam form is displayed expected
21
4.2.2 Test Case for System testing
It is tested at the final stage as a whole by combining all the product modules after integration
testing. The primary aim of conducting this test is that it must fulfill the user requirement
specification. This testing does not depend on system implementations as well.
Login
Login form is
1 button is “Clicked” As Expected Pass
shown
clicked
View
Students Students details
2 “Clicked” As Excepted Pass
details and is shown
review
22
location matched or not
If user put
the old
User show the
school
details with
4 name and “Clicked” As Expected Pass
sentiments
location
output
same in
database.
Post-conditions:
User get the output sentiments of the college review and display in the list form.
23
Chapter-5 Conclusion and Future Recommendations
5.1 Conclusion
Hence, in our system, students can easily find out the decision by using this college
Recommendation system. After logged in to the system students can check the Recommend by
providing the old school’s name and location. This makes possible by providing review and
rating from old student’s study in college after his/her SEE. This system used sentiments analysis
algorithm to get the review sentiments of old students and listed the name of college in ranking
order.
5.2 Outcome
It is expected that all the requirement and functionality are satisfied in the system which can be
implemented in a proper way and the proposed system works well. We have mentioned that:
24
Advertisement of website
Review and rating
REFERENCES
[1]"domain object model", slideshare.net, 2019. [Online]. Available:
https://www.slideshare.net/inam15/domain-object-model. [Accessed: 02- Feb- 2022].
[2]"what is class diagram", visual-paradigm.com, 2022. [Online]. Available: https://www.visual-
paradigm.com/guide/uml-unified-modeling-language/what-is-class-diagram/. [Accessed: 02-
Feb- 2022].
https://www.ijert.org/college recommendationsystem#:~:text=This%20system%20is%20made
%20for,recommendation%20systems%20to%20obtain%20data.
https://www.ijert.org/research/college-recommendation-system-IJERTCONV5IS01169.pdf
https://www.researchgate.net/publication/322006324_A_user-
friendly_college_recommending_system_using_user-
profiling_and_matrix_factorization_technique
25