Student Performance Analyzer and Predictor

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 81

Student Performance

Analyzer and Predictor


By
Tessy Francis
Arya KR
Nancy Davis

Under Guidance

of
Prof. Sajay K R

Submitted to the School of Computer and Information Sciences In partial


fulfilment of the requirements for the degree of

Masters
Of
Computer Applications

Indira Gandhi National Open University


Maidan Garhi
New Delhi - 110068
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

PROFORMA FOR SUGGESTIONS OF MCS-044 PROJECT PROPOSAL

(Note: All entries of the proforma of suggestions should be filled in with appropriate and
complete information. Incomplete proforma of suggestions in any respect will be
summarily rejected.)

Enrolment No.: 195449707


Study Centre: IRS COMPUTERS 1417P
Regional Centre: COCHIN RC Code: 14
E-mail: tessy29francis@gmail.com
Telephone No.: 8848657631

1.Name and Address of the student : Tessy Francis , Chembukavu House, Chittilapilly p.o ,

Thrissur, 680551 2.Title of the Project : Student Performance Analyzer and Predictor

3.Name and Address of the Counsellor: SAJAY K R


PROGRAM IN CHARGE

IRS COMPUTERS AND COMMUNICATIONS

Ph.D. * M.Tech.* B.E*/B.Tech.* MCA M.Sc.*

4.Educational Qualification □ □ □ □□
of the Counsellor (*in Computer Science / IT only)
(Attach bio-data also)
5. Working / Teaching experience of the Counsellor**................................................................

6. Software used in the Project……………....…………………………………………………...

Signature of the Student Signature of the Counsellor

Date: ………………… Date: ……………………

Suggestions for improving the Project:

IGNOU MCA MINI PROJECT Page | 2


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

(Note: All entries of the proforma of suggestions should be filled in with appropriate and
complete information. Incomplete proforma of suggestions in any respect will be
summarily rejected.)

Enrolment No.: 195449714


Study Centre: IRS COMPUTERS 1417P
Regional Centre: COCHIN RC Code: 14
E-mail: Nancydavis@gmail.com
Telephone No.: 7306601104

1.Name and Address of the student : Nancy Davis, chittilappilly house, P O Tholur, Thrissur,

Pin 680552 2.Title of the Project : Student Performance Analyzer and Predictor

3.Name and Address of the Counsellor: SAJAY K R


PROGRAM IN CHARGE
IRS COMPUTERS AND COMMUNICATIONS

Ph.D. * M.Tech.* B.E*/B.Tech.* MCA M.Sc.*

4.Educational Qualification □ □ □ □□
of the Counsellor (*in Computer Science / IT only)

(Attach bio-data also)


5. Working / Teaching experience of the Counsellor**................................................................

6. Software used in the Project……………....…………………………………………………...

Signature of the Student Signature of the Counsellor

Date: ………………… Date: ……………………

Suggestions for improving the Project:

IGNOU MCA MINI PROJECT Page | 3


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

(Note: All entries of the proforma of suggestions should be filled in with appropriate and
complete information. Incomplete proforma of suggestions in any respect will be
summarily rejected.)

Enrolment No.: 195449556


Study Centre: IRS COMPUTERS 1417P
Regional Centre: COCHIN RC Code:14
E-mail: aryaamutha@gmail.com
Telephone No.: 7306990208

1.Name and Address of the student: Arya k r ,Kainoor House, Kizhakkumpattukara, Thrissur ,

680005 2.Title of the Project : Student Performance Analyzer and Predictor

3.Name and Address of the Counsellor: SAJAY K R


PROGRAM IN CHARGE

IRS COMPUTERS AND COMMUNICATIONS

Ph.D. * M.Tech.* B.E*/B.Tech.* MCA M.Sc.*

4.Educational Qualification □ □ □ □□
of the Counsellor (*in Computer Science / IT only)

(Attach bio-data also)


5. Working / Teaching experience of the Counsellor**................................................................

6. Software used in the Project……………....…………………………………………………...

Signature of the Student Signature of the Counsellor

Date: ………………… Date: ………………….

Suggestions for improving the Project:

IGNOU MCA MINI PROJECT Page | 4


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

ROLES AND RESPONSIBILITIES FORM

Name of the Project: Student Performance Analyzer and Predictor Date: 13/11/2021

Name of the Team *Role Tasks and Responsibilities


Member

1.Tessy Francis Role: Developer & Tester

Responsibilities:

Coding

Testing

Documentation

2.Arya KR Role: Developer & Tester

Responsibilities:

Coding

Testing

Documentation

3.Nancy Davis Role: Developer & Tester

Responsibilities:

Coding

Testing

Documentation

IGNOU MCA MINI PROJECT Page | 5


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

Name Signature
1.Tessy Francis ……………………………
2.Arya KR ……………………………
3.Nancy Davis ……………………………
Signature of the counsellor Date………………………

IGNOU MCA MINI PROJECT Page | 6


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

ABSTRACT

Student Performance Analysis System is an emerging field and is very crucial to schools and
universities in helping their students and professors. Most of the pre-existing methods are based
only on past academic performance of students. This system aims to develop models which can
predict the student’s performance and grades while keeping in mind other equally essential
personality factors like interests, attributes and opinions (IAO variables) which affect their
lifestyle. It uses various machine learning and deep learning techniques to predict the
performance of students, and basic exploratory data analysis to derive various correlations of
student’s performance with psychographic attributes.

The project aims to predict a student’s performance by analysing behavioural patterns and
existing grades. It helps us to identify the success factors and success blockers. It also helps us to
figure out what changes can be made by the student in his daily routine to improve his/her grades
and additional practices that can be implemented by the teacher to help him/her achieve their
educational goals. The project contains an Algorithm which analyses attributes like: existing
grades, absences, number of hours studied, TV time, siblings, etc. The Algorithm then predicts
an expected performance based on the attributes.

The project is based on Machine Learning and the algorithm used is Linear Regression. Linear
Regression Algorithm helps us to identify correlation between variables or attributes. The system
thus intends to provide a most efficient combination of attributes that help in the performance of
a student.

IGNOU MCA MINI PROJECT Page | 7


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

ACKNOWLEDGEMENT

We express our sincere gratitude to LORD ALMIGHTY for showing his choicest blessings
needed for our project.

We hereby express our deep sense of gratitude to our project Counsellor project guide Mr.Sanjay
KR for the effective guidance, timely suggestion ,support and encouragement in developing our
project.

Lastly, we also express our heartfelt gratitude and support of our family and friends who have
stood by us since the start of the project. The good wishes also given by all our well wishes have
contributed positively in not only this project but our overall development as better learned
students.

Team Members,

Miss.Tessy Francis

Miss.Arya KR

Miss.Nancy Davis

IGNOU MCA MINI PROJECT Page | 8


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

TABLE OF CONTENTS
1. INTRODUCTION ....…………………..……………………… 12
1.1 Background ..…………………….……………………... 13
1.2 Objectives ..……………………………………………... 13
1.3 Purpose, Scope and Applicability…………………..……. 13
1.3.1 Purpose and Scope……………………………….. 13
1.3.2 Applicability……………………………………… 14
1.4 Achievements ...…………………..……………………… 14
1.5 Organisation of Report...…………………..…………… 14
2. SURVEY OF TECHNOLOGIES………………………………. 15
3. REQUIREMENTS AND ANALYSIS………………………….. 17
3.1 Problem definition …………………………….………… 18
3.2 Requirement Specification ……………………………… 18
3.2.1 Functional Requirements ………………………... 18
3.2.2 Nonfunctional Requirements…………………….. 19
3.3 Planning and Scheduling………………………………… 19
3.4 Software and Hardware Requirements……………...…… 20
3.5 Preliminary Product Description………………………… 21
3.6 Conceptual models……………………………………….. 21
4. SYSTEM DESIGN……………………………………………… 25
4.1 Basic Modules……………………………………………. 26
4.2 Data Design…………………………………..…………… 27
4.2.1 Data Integrity and Constraints……………………. 27
4.3 Procedural Design…………………………………..……. 28
4.3.1 Data Structures ………………………………….... 28

IGNOU MCA MINI PROJECT Page | 9


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

4.3.2 Algorithm Designs and Logic Diagrams………...... 31


4.4 User interface design……………………………………… 35
4.5 Security Issues……………………………………………. 38
4.6 Test Cases Design………………………………………… 38
5. IMPLEMENTATION AND TESTING……………………….. 43
5.1 Implementation Approaches……………………………… 44
5.2 Coding Detail and Code Efficiency………………………. 44
5.3 Testing Approach………………………………………… 72
5.3.1 Unit Testing………………………………………. 72
5.3.2 Integrated Testing………………………………… 72
5.4 Modifications and Improvements…………………………. 73
6. RESULTS AND DISCUSSION……………………………….… 74
6.1 Test Report……………………………………………….. 75
6.2 User Documentation………………………………………. 76
7. CONCLUSION...………………………………………………… 77
7.1 Conclusion………………………………………………… 78
7.2 Limitations of the System………………………………… 78
7.3 Future Scope of the Project………………………………. 78
REFERENCES...………………………………………………………… 79

IGNOU MCA MINI PROJECT Page | 10


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

CHAPTER -1

INTRODUCTION

IGNOU MCA MINI PROJECT Page | 11


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

INTRODUCTION

1.1 Background

Student Performance Analyzer and predictor is a web application system combined with basic
Machine learning algorithms that makes it easier and systematic to monitor students' performance
and improve it. This project aims to predict a student’s performance based on input given by
teachers and students. The input given by teachers include a student’s academic marks,
attendance, failures, etc. The input given by students include his or her day-to-day routine
activities like the amount of time he spends daily to study or going out with friends, the time taken
to travel to his/her academic institution, etc. A dataset is then formed by combining the two inputs
of all the students. Machine learning algorithm known as Linear Regression is then applied to this
dataset and it then trains a model based on these values. With the model, we can input the
attributes of any particular student and predict his performance.

1.2 Objectives

Main Objective :

Analyse and predict student performance.

Sub Objective :

1. To derive various correlations between final grade and various other attributes. 2. Input data
from user.
3. Pass data to Machine Learning script.
4. Predict mark in upcoming examination

1.3. Purpose, Scope and Applicability

1.3.1 Purpose and Scope

Predicting students' performance is mostly helpful for the teachers and students to improve their
teaching and learning performance. Most of the existing or common systems analyze performance
IGNOU MCA MINI PROJECT Page | 12
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

based purely on academic activities viz. grades. But studies have found that a student’s day-to-day
routine activities also affect his educational performance as much as academic activities. Student
Performance Analyzer and predictor application helps us to figure out what changes can be made
by the student in his daily routine to improve his/her grades and additional practices that can be
implemented by the teacher to help him/her achieve their educational goals.

1.3.2 Applicability

➔ To predict the upcoming exam’s results with high accuracy.


➔ To check the feasibility of improvement
➔ To understand where the student is lacking
➔ Provide systematic approach to monitor student’s performance

1.4 Achievements

● Save cost: After the computerized system is implemented less human force will be required
to analyse student’s performance.

● Save time: Saves time compared to manual student’s performance analysis.

● Efficient: Predicted result is more efficient in comparison with manual guess.

1.5 Organisation of Report

The project aims to predict a student’s performance based on input given by Teachers and
Students. The input given by Teachers include a student’s academic marks, attendance, failures,
etc. The input given by Students include his or her day-to-day routine activities like the amount of
time he spends daily studying, the amount of time he spends going out with friends, the time
taken to travel to his/her academic institution, etc. A Dataset is then formed by combining the two
inputs of all the students. Machine Learning Algorithm Linear Regression is then applied this
Dataset and it then trains a model based on these values. With the model, we can input the
attributes of any particular student and predict his performance.

IGNOU MCA MINI PROJECT Page | 13


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

CHAPTER- 2

SURVEY OF TECHNOLOGIES

IGNOU MCA MINI PROJECT Page | 14


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

SURVEY OF TECHNOLOGIES
Front End

REACT
The project is done using REACT as front end. REACT is a free and open-source front -
end JavaScript library for building user interfaces or UI components.
React can be used as a base in the development of single-page or mobile applications . React is
only concerned with state management and rendering that state to the DOM . So creating react
applications usually requires the use of additional libraries for routing as well as certain client -
side functionality.

Back End

Python
Python is an integrated high -level general programming language.Python design philosophy
emphasizes code readability with its notable use of significant indention .Its language constructs
as well as its object oriented approach to help programmers write clear , logical code for small and
large scale projects.
Django makes it easier to build better web apps more quickly and with less code. Django is a
high-level python web framework that encourages rapid development and clean ,pragmatic design
.
PyCharm is an integrated development environment (IDE) used in computer programming
specially for the python language.it provides code analysis , a graphical debugger , an integrated
unit tester, integration with version control systems .

Database

SQLite
SQLite is a C- language library that implements a small, fast ,self contained , high reliability , full-
featured. SQLite is the most used database engine in the world .
The SQLite file format is stable , cross platform, and backwards compatible and the developers
pledge to keep it that way. SQLite source code is in the public domain and is free to everyone to
use for any purpose.

IGNOU MCA MINI PROJECT Page | 15


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

CHAPTER- 3

REQUIREMENTS AND ANALYSIS

IGNOU MCA MINI PROJECT Page | 16


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

REQUIREMENTS AND ANALYSIS

3.1 Problem Definition

Most of the existing or common systems analyze performance based purely on academic activities
viz. grades. But studies have found that a student’s day-to-day routine activities also affect his
educational performance as much as academic activities.

Our project aims to predict a student’s performance based on input given by teachers and students
by considering both academic and non academic factors.

3..2 Requirements Specification

3.2.1 Functional Requirements

Main Modules Are:

1. Student information

2. Performance and analysis

3. Display

Proposed system

An integrated application for popular games, coaching, sports equipment etc.: for better utilization
of digital resources in the field of sports.

Students Information Module


In this module, Attributes required by the machine learning module that is students information
such as marks, attendance, and other details are accepted from the user. Then these values are

IGNOU MCA MINI PROJECT Page | 17


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

passed from input module to machine learning module.

Performance and Analysis Module


In this module first we train our model using the data set.Then this is used to create a pickle file.
After this we test the attributes obtained from the input module against the model. After the testing
we will obtain a predicted value and this predicted value is passed to the output module.

Display Module
In this module predicted value and analysis is accepted from the machine learning module. These
predicted value and analysis graphs are displayed to the user.

3.2.2 Non Functional Requirements

▪ Performance

Performance is characterized by the amount of useful work accomplished by a computer system


compared to the time and resource used. This offers higher performance. It requires short response
time and high throughput. New users can register within seconds. It is user friendly.

▪ Reliability

Reliability is the ability of the system to deliver services as specified. This system performs
well without any errors or failures.

▪ Security

The software is well limited to authorized users only. One who is not registered cannot log in to
the site, to view or add data.

▪ Maintainability

In the case of failure, users will not be permitted to log in to the site. Everything can be stored
to its normal operable state within a timeframe. Serviceability and reparability is done.

▪ Portability

It is the degree to which software running on one platform can easily be converted to run
another platform. As this software is developed under this language, this attains high portability.
IGNOU MCA MINI PROJECT Page | 18
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

3.3 Planning and Scheduling

Gantt chart

Gantt charts mainly used to allocate resources to activities. The resources allocated to activities
include staff, hardware, and software. Gantt charts (named after its developer Henry Gantt) are
useful for resource planning. A Gantt chart is a special type of bar chart where each bar represents
an activity. The bars are drawn along a timeline. The length of each bar is proportional to the
duration of the time planned for the corresponding activity.
Gantt chart is a project scheduling technique. Progress can be represented easily in a Gantt chart,
by coloring each milestone when completed. The project will start in the month of August and end
after 4 months at the end of November.

IGNOU MCA MINI PROJECT Page | 19


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

3.4 Software and Hardware Requirements

Software requirement

Frond end : React


Back end : Python
Operating System: Ubuntu

Hardware requirement

Computer : IBM Compatible


Processor : Intel Dual Core
Memory : 2GB DDR RAM
Monitor : 17 ’’ LED
Drive : DVDRW

3.5 Preliminary Product Description

Student Performance Analyzer and predictor is a web application system combined with basic
Machine learning algorithms that makes it easier and systematic to monitor students' performance
and improve it. This project aims to predict a student’s performance based on input given by
teachers and students. The input given by teachers include a student’s academic marks,
attendance, failures, etc. The input given by students include his or her day-to-day routine
activities like the amount of time he spends daily to study or going out with friends, the time taken
to travel to his/her academic institution, etc. A dataset is then formed by combining the two inputs
of all the students. Machine learning algorithm known as Linear Regression is then applied to this
dataset and it then trains a model based on these values. With the model, we can input the
attributes of any particular student and predict his performance.

3.6 Conceptual Models


IGNOU MCA MINI PROJECT Page | 20
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

Data Flow Diagram

Level:0

Level:1

IGNOU MCA MINI PROJECT Page | 21


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

Level:2

IGNOU MCA MINI PROJECT Page | 22


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

ER Diagram

IGNOU MCA MINI PROJECT Page | 23


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

IGNOU MCA MINI PROJECT Page | 24


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

CHAPTER- 4
SYSTEM DESIGN

IGNOU MCA MINI PROJECT Page | 25


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

SYSTEM DESIGN

4.1 Basic Modules

4.1.1 Modular Design

There are 3 modules in the proposed system.

The main modules are

1.Students Information Module

2. Performance and Analysis Module

3.Display Module

1. Students Information Module

In this module, Attributes required by the machine learning module that is student information
such as marks, attendance, and other details are accepted from the user. Then these values are
passed from input module to machine learning module.

IGNOU MCA MINI PROJECT Page | 26


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

2. Performance and Analysis Module

In this module first we train our model using the data set.Then this is used to create a pickle file.
After this we test the attributes obtained from the input module against the model. After the testing
we will obtain a predicted value and this predicted value is passed to the output module.

3. Display Module

In this module predicted value and analysis is accepted from the machine learning module. These
predicted value and analysis graphs are displayed to the user.

4 .2 DATA DESIGN
4.2.1 Scheme Design

Data design is done based on ER diagrams and Data Dictionary. Data design may be done either
as a file-based

system or as a database management system (DBMS). In the file based approach, the data files are
custom designed for each application module. There is generally no sharing of data among various
application modules.

The database design is a logical development in the methods used by the computer to access and
manipulate data stored in the various parts of the computer system. Database is designed as an
integrated collection of data. The overall objective in the development of database technology has
been to treat data as organization resources and as an integrated while. The main objective of
databases is data integration, data integrity and data and independence.

A table is an object to store data in a database. When creating a table, the user must specify the
table name and name, data type, size of each column. It provides different constraints to specify a
primary or composite key to the table.

4.2.2 Data Integrity and Constraints

In computing, data integrity refers to maintaining the accuracy and consistency of data over its
entire life-cycle, and is an important feature of a database or RDBMS system. Data integrity
means that the data contained in the database is accurate and reliable. Data warehousing and
business intelligence in general demand the accuracy, validity and correctness of data despite
hardware failures, software bugs or human error. Data that has integrity is identically maintained
during any operation, such as transfer, storage or retrieval.

IGNOU MCA MINI PROJECT Page | 27


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

4.3 PROCEDURAL DESIGN

4.3.1 Data Structures

Non Academic Attributes

Sl No. Attribute Description Type

1 school Student’s school binary

2 sex Student’s sex Binary

3 age Student’s age Numeric

4 address Student’s home address Binary

5 famsize Family size Binary

6 Pstatus Parents cohabitation status Binary

7. Medu mother's education Numeric

8. Fedu father's education Numeric

9. Mjob mother's job Nominal

10. Fjob father's job Nominal

IGNOU MCA MINI PROJECT Page | 28


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

11. reason reason to choose this school Nominal

12. guardian student's guardian Nominal

13. traveltime home to school travel time Numeric

14. studytime weekly study time numeric

15. failures number of past class failures numeric

16. schoolsup extra educational support Binary

17. famsup family educational support


Binary

18. paid extra paid classes within the course


subject Binary

extra-curricular activities Binary


19. activities

20. nursery attended nursery school Binary

21. higher wants to take higher education Binary

22. internet Internet access at home Binary

23. famrel quality of family relationships Numeric

IGNOU MCA MINI PROJECT Page | 29


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

24. freetime free time after school Numeric

25. goout going out with friends Numeric

26. Dalc workday alcohol consumption Numeric

27. Walc weekend alcohol consumption Numeric

28. health current health status Numeric

29. absences number of school absences Numeric

Academic Attributes

Sl No. Attribute Description Type

30. G1 first period grade Numeric

31. G2 second period grade Numeric

32. G3 second period grade Numeric

IGNOU MCA MINI PROJECT Page | 30


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

4.3.2 Algorithms Design & Logic Diagrams

Algorithm

Step-1: START

Step-2: Create user interface

Step-3: Train an ML model with some data for prediction

Step-4: Test data received from UI with the trained model

Step-5: Get the prediction for students performance

Step-6: Analyse student grade with attribute and display analysis

Step-7: STOP

Flowchart

IGNOU MCA MINI PROJECT Page | 31


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

IGNOU MCA MINI PROJECT Page | 32


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

IGNOU MCA MINI PROJECT Page | 33


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

IGNOU MCA MINI PROJECT Page | 34


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

4.4 User Interface Design

IGNOU MCA MINI PROJECT Page | 35


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

IGNOU MCA MINI PROJECT Page | 36


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

IGNOU MCA MINI PROJECT Page | 37


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

4.5 Security Issues

The system security problem can be divided into four related issues: security, integrity, privacy
and confidentiality. They determine the file structure, data structure and access procedures.

System security refers to the technical innovations and procedures applied to the hardware and
operating systems to protect against deliberate or accidental damage from a defined threat. In
contrast, data security is the protection of data from loss, disclosure, modifications and
destruction.

System integrity refers to the proper functioning of programs, appropriate physical security
and safety against external threats such as eavesdropping and wiretapping. In comparison, data
integrity makes sure that it does not differ from others and how the organization can be protected
against unwelcome, unfair or excessive dissemination of information about it.

4.6 Test case design

IGNOU MCA MINI PROJECT Page | 38


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

USER

S.
No. Test Case ID Do Expected Result

Upload student details: New Student user details will be


loaded into the system.
1 QT1-001

Students login into the system.

Access Student Details form.

Enter the Student’s details like study time, tv


time, travelling time, etc.

Click on submit.

Upload student details: New Student user details will be


loaded into the system.
2 QT1-002

Teachers login into the system.

Access Student Details form.

Enter the Student’s details like student


grades, attendance, failures, etc.

Click on submit.

IGNOU MCA MINI PROJECT Page | 39


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

Analysis

S.
No. Test Case ID Do Expected Result

To analyze student details: View the analysis graph of the


student.
1 QT2-001

User login into the system.

Click on the analysis button from the option


menu.

IGNOU MCA MINI PROJECT Page | 40


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

Predictor

S. No. Test Case ID Do Expected Result

To Combine input data: Combined input data form of a


dataset.
1 QT3-001

User login into the system.

Enter the input data on web application.

Click on submit.

To Predict the student Performance: Pop messages will pop up with a


predicted mark.
2 QT3-002

User login into the system.

Enter the input data on the web application .

Click on the predictor button from the option


menu.

IGNOU MCA MINI PROJECT Page | 41


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

Result

S. No. Test Case ID Do Expected Result

To display the result: Result will generate in the table


format with student details.
1 QT4-001

User login into the system.

Click on result button from option menu.

IGNOU MCA MINI PROJECT Page | 42


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

CHAPTER- 5
IMPLEMENTATION AND TESTING

IGNOU MCA MINI PROJECT Page | 43


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

IMPLEMENTATION AND TESTING

5.1 IMPLÉMENTATION APPROACHES

Our project Student Performance Analyzer And Predictor works in Windows. STUDENT
PERFORMANCE ANALYZER AND PREDICTOR Chapter 4 searching facility IDE used for
developing our project is Pycharm. PyCharm is one of the most widely used IDEs for the Python
programming language. PyCharm is an integrated development environment (IDE) used in
computer programming, specifically for the Python language. It is developed by the Czech
company JetBrains. JetBrains has developed PyCharm as a cross-platform IDE for Python. In
addition to supporting versions 2.x and 3.x of Python, PyCharm is also compatible with Windows,
Linux, and macOS. At the same time, the tools and features provided by PyCharm help
programmers to write a variety of software applications in Python quickly and efficiently. The
developers can even customize the PyCharm UI according to their specific needs and preferences.
Also, they can extend the IDE by choosing from over 50 plug-ins to meet complex project
requirements. It also provides code analysis, a graphical debugger, an integrated unit tester,
integration with version control systems (VCSes), and supports web development with Django as
well as data science with Anaconda. PyCharm is cross-platform, with Windows, macOS and
Linux versions. The Community Edition is released under the Apache License, and there is also
Professional Edition with extra features – released under a proprietary license.

5.2 Coding Details and Coding Efficiency

LRA

main.py

i m p o rt numpy a s np

i m p o rt p a n d a s a s pd

f rom s k l e a r n i m p o rt l i n e a r m o d e l

i m p o rt s k l e a r n

f rom s k l e a r n . u t i l s i m p o rt s h u f f l e

i m p o rt m a t p l o t l i b . p y p l o t a s p l t

IGNOU MCA MINI PROJECT Page | 44


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

f rom m a t p l o t l i b i m p o rt s t y l e

i m p o rt p i c k l e

style.use(”ggplot”)

d a t a = pd . r e a d c s v ( ” s t u d e n t −mat . c s v ” , s e p = ” ; ” )

p r e d i c t = ”G3”

data=data[

[ ” G1 ” , ”G2 ” , ” a ge ” , ”Medu ” , ” Fedu ” , ” t r a v e l t i m e ” , ” s t u d y t i m e ” , ” f a i l u


r e s ” , ” f a m r e l ” , ” f r e e t i m e ” , ” g o o ut ” , ” h e a l t h ” ,

” a b s e n c e s ” , ”G3 ” ] ]

data=shuffle(data)#Optional−shufflethedata

x = np . a r r a y ( d a t a . d r o p ( [ p r e d i c t ] , 1 ) )

y = np . a r r a y ( d a t a [ p r e d i c t ] )

xtrain,xtest,ytrain,ytest=sklearn.modelselection.traintestspli
t(x,y,testsize=0.1)

# TRAIN MODEL MULTIPLE TIMES FOR BEST SCORE

best=0

forinrange(20):

xtrain,xtest,ytrain,ytest=sklearn.modelselection.traintestspli
t(x,y,testsize=0.1)

linear=linearmodel.LinearRegression()

linear.fit(xtrain,ytrain)

acc=linear.score(xtest,ytest)

p r i n t ( ” Acc u rac y : ” + s t r ( a c c ) )

IGNOU MCA MINI PROJECT Page | 45


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

ifacc>best:

best=acc

wit h open ( ” s t u d e n t g r a d e s . p i c k l e ” , ”wb ” ) a s f :

p i c k l e . dump ( l i n e a r , f )

# LOAD MODEL

p i c k l e i n = open ( ” s t u d e n t g r a d e s . p i c k l e ” , ” r b ” )

linear=pickle.load(picklein)

p r i n t (”−−−−−−−−−−−−−−−−−−−−−−−−−”)

p r i n t ( ’ C o e f f i c i e n t : \n ’ , l i n e a r . c o e f )

p r i n t ( ’ I n t e r c e p t : \n ’ , l i n e a r . i n t e r c e p t )

p r i n t (”−−−−−−−−−−−−−−−−−−−−−−−−−”)

predicted=linear.predict(xtest)

forxinrange(len(predicted)):

print(predicted[x],xtest[x],ytest[x])

# D rawing and p l o t t i n g model

plot=”studytime”

p l t . s c a t t e r ( d a t a [ p l o t ] , d a t a [ ” G3 ” ] )

plt.legend(loc=4)

plt.xlabel(plot)

p l t . y l a b e l ( ” F i n a l G rade ” )

p l t . s a v e f i g ( ’ a n a l y s i s s t u d y t i m e . png ’ )

p l t . show ( )
IGNOU MCA MINI PROJECT Page | 46
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

plot=”failures”

p l t . s c a t t e r ( d a t a [ p l o t ] , d a t a [ ” G3 ” ] )

plt.legend(loc=4)

plt.xlabel(plot)

p l t . y l a b e l ( ” F i n a l G rade ” )

p l t . s a v e f i g ( ’ a n a l y s i s f a i l u r e s . png ’ )

p l t . show ( )

plot=”famrel”

p l t . s c a t t e r ( d a t a [ p l o t ] , d a t a [ ” G3 ” ] )

plt.legend(loc=4)

plt.xlabel(plot)

p l t . y l a b e l ( ” F i n a l G rade ” )

p l t . s a v e f i g ( ’ a n a l y s i s f a m r e l . png ’ )

p l t . show ( )

plot=”absences”

p l t . s c a t t e r ( d a t a [ p l o t ] , d a t a [ ” G3 ” ] )

plt.legend(loc=4)

plt.xlabel(plot)

p l t . y l a b e l ( ” F i n a l G rade ” )

p l t . s a v e f i g ( ’ a n a l y s i s a b s e n c e s . png ’ )

p l t . show ( )

SPAP

IGNOU MCA MINI PROJECT Page | 47


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

admin . py

f rom dj a n g o . c o n t r i b i m p o rt admin

f rom . m o del s i m p o rt P r e d i c t i o n R e s u l t s

# R e g i s t e r y o u r m o del s h e r e .

admin . s i t e . r e g i s t e r ( P r e d i c t i o n R e s u l t s )

a p p s . py

f rom dj a n g o . a p p s i m p o rt AppCon fig

c l a s s P r e d i c t C o n f i g ( AppCon fig ) :

name = ’ p r e d i c t ’

m o del s . py

f rom dj a n g o . db i m p o rt m o del s

# C r e a t e y o u r m o del s h e r e .

c l a s s P r e d i c t i o n R e s u l t s ( m o del s . Model ) :

r n o = m o del s . I n t e g e r F i e l d ( u ni q u e =T r ue )

g r a d e 1 = m o del s . F l o a t F i e l d ( )

g r a d e 2 = m o del s . F l o a t F i e l d ( )

a ge = m o del s . I n t e g e r F i e l d ( )

m ot h e r e d u = m o del s . I n t e g e r F i e l d ( )

f a t h e r e d u = m o del s . I n t e g e r F i e l d ( )

t r a v e l t i m e = m o del s . I n t e g e r F i e l d ( )

s t u d y t i m e = m o del s . I n t e g e r F i e l d ( )

f a i l u r e s = m o del s . I n t e g e r F i e l d ( )

IGNOU MCA MINI PROJECT Page | 48


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

f a m r e l = m o del s . I n t e g e r F i e l d ( )

f r e e t i m e = m o del s . I n t e g e r F i e l d ( )

g o o ut = m o del s . I n t e g e r F i e l d ( )

h e a l t h = m o del s . I n t e g e r F i e l d ( )

a b s e n c e s = m o del s . F l o a t F i e l d ( )

g r a d e 3 = m o del s . F l o a t F i e l d ( )

defstr(self):

returnself.grade3

u r l s . py

f rom dj a n g o . u r l s i m p o rt p at h

f rom . i m p o rt vi ew s

app name = ’ p r e d i c t ’

urlpatterns=[

p at h ( ’ ’ , vi ew s . p r e d i c t , name = ’ p r e d i c t ’ ) ,

p at h ( ’ p r e d i c t ’ , vi ew s . p r e d i c t c h a n g e s , name = ’ s u b m i t p r e d i c t i o n ’ ) ,

p at h ( ’ r e s u l t s ’ , vi ew s . v i e w r e s u l t s , name = ’ r e s u l t s ’ ) ,

p at h ( ’ a n a l y s i s ’ , vi ew s . v i e w a n a l y s i s , name = ’ a n a l y s i s ’ ) ,

vi ew s . py

f rom dj a n g o . s h o r t c u t s i m p o rt r e n d e r

f rom dj a n g o . h t t p i m p o rt J s o nR e s p o n s e

i m p o rt p a n d a s a s pd

IGNOU MCA MINI PROJECT Page | 49


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

f rom . m o del s i m p o rt P r e d i c t i o n R e s u l t s

defpredict(request):

r e t u r n r e n d e r ( r e q u e s t , ’ p r e d i c t . html ’ )

defpredictchanges(request):

i f r e q u e s t . POST . g e t ( ’ a c t i o n ’ ) == ’ p o st ’ :

# R e c ei v e d a t a f rom c l i e n t

r n o = i n t ( r e q u e s t . POST . g e t ( ’ rno ’ ) )

G1 = f l o a t ( r e q u e s t . POST . g e t ( ’ G1 ’ ) )

G2 = f l o a t ( r e q u e s t . POST . g e t ( ’ G2 ’ ) )

a ge = i n t ( r e q u e s t . POST . g e t ( ’ age ’ ) )

Medu = i n t ( r e q u e s t . POST . g e t ( ’Medu ’ ) )

Fedu = i n t ( r e q u e s t . POST . g e t ( ’ Fedu ’ ) )

t r a v e l t i m e = i n t ( r e q u e s t . POST . g e t ( ’ t r a v e l t i m e ’ ) )

s t u d y t i m e = i n t ( r e q u e s t . POST . g e t ( ’ st u d yti m e ’ ) )

f a i l u r e s = i n t ( r e q u e s t . POST . g e t ( ’ f a i l u r e s ’ ) )

f a m r e l = i n t ( r e q u e s t . POST . g e t ( ’ f am r el ’ ) )

f r e e t i m e = i n t ( r e q u e s t . POST . g e t ( ’ f r e e t i m e ’ ) )

g o o ut = i n t ( r e q u e s t . POST . g e t ( ’ g o o ut ’ ) )

h e a l t h = i n t ( r e q u e s t . POST . g e t ( ’ h e a l t h ’ ) )

a b s e n c e s = f l o a t ( r e q u e s t . POST . g e t ( ’ a b s e n c e s ’ ) )

# U n pi c kl e model

model = pd . r e a d p i c k l e ( ”C: \ U s e r s \ De s kt o p \mcas5\ M i n i P r o j e c t \

IGNOU MCA MINI PROJECT Page | 50


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

SPAP\LRA\ s t u d e n t g r a d e s . p i c k l e ” )

# Make p r e d i c t i o n

r e s u l t = model . p r e d i c t (

[ [ G1 , G2 , age , Medu , Fedu , t r a v e l t i m e , st u d yti m e , f a i l u r e s ,

f am r el , f r e e t i m e , g o o ut , h e a l t h , a b s e n c e s ] ] )

classification=result[0]

#PredictionResults.objects.all().delete()

P r e d i c t i o n R e s u l t s . o b j e c t s . c r e a t e ( r n o = rno , g r a d e 1 =G1 ,

g r a d e 2 =G2 , a ge =age , m ot h e r e d u =Medu , f a t h e r e d u =Fedu ,

t r a v e l t i m e = t r a v e l t i m e , s t u d y t i m e = st u d yti m e ,

f a i l u r e s = f a i l u r e s , f a m r e l = f am r el , f r e e t i m e = f r e e t i m e ,

g o o ut = g o o ut , h e a l t h = h e a l t h , a b s e n c e s = a b s e n c e s ,

grade3=classification)

r e t u r n J s o nR e s p o n s e (

{ ’G1 ’ : G1 , ’G2 ’ : G2 , ’ age ’ : age , ’Medu ’ : Medu ,

’ Fedu ’ : Fedu , ’ t r a v e l t i m e ’ : t r a v e l t i m e ,

’ st u d yti m e ’ : st u d yti m e , ’ f a i l u r e s ’ : f a i l u r e s ,

’ f am r el ’ : f am r el , ’ f r e e t i m e ’ : f r e e t i m e ,

’ g o o ut ’ : g o o ut , ’ h e a l t h ’ : h e a l t h , ’ a b s e n c e s ’ : a b s e n c e s ,

’G3 ’ : c l a s s i f i c a t i o n } ,

safe=False)

defviewresults(request):

IGNOU MCA MINI PROJECT Page | 51


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

# S u bmit p r e d i c t i o n and show a l l

d a t a = {” d a t a s e t ” : P r e d i c t i o n R e s u l t s . o b j e c t s . a l l ( ) }

r e t u r n r e n d e r ( r e q u e s t , ” r e s u l t s . html ” , d a t a )

defviewanalysis(request):

r e t u r n r e n d e r ( r e q u e s t , ’ a n a l y s i s . html ’ )

b a s e . html

<! d o ct y p e html>

<html l a n g =” en”>

<head>

<!−− R e q ui r e d meta t a g s −−>

<meta c h a r s e t =” ut f −8”>

<meta name=” vi e w p o r t ” c o n t e n t =” wi dt h = d e vi c e − wi dt h , i n i t i a l − s c

a l e =1 ,

s h ri n k −t o − f i t =no”>

<!−− B o o t s t r a p CSS −−>

<l i n k r e l =” s t y l e s h e e t ” h r e f =” h t t p s : / / s t a c k p a t h . b o o t s t r a p c d n . com /

bootstrap/4.4.1/css/

b o o t s t r a p . min . c s s ”

i n t e g r i t y =” sha384 −Vkoo8x4CGsO3+Hhxv8T /

Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh ” c r o s s o r i g i n =

” anonymous”>
IGNOU MCA MINI PROJECT Page | 52
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<s c r i p t s r c =” h t t p s : / / a j a x . g o o g l e a p i s . com / a j a x / l i b s / j q u e r y / 3 . 4 . 1 /

j q u e r y . min . j s ”></ s c r i p t >

< t i t l e >SPAP</ t i t l e >

</ head>

<body>

<nav c l a s s =” n a v b a r na v ba r −expand − l g na v ba r − l i g h t bg − l i g h t ”>

<b u t t o n c l a s s =” na v ba r − t o g g l e r ” t y p e =” b u t t o n ” d at a − t o g g l e =” c

o l l a p s e ” d at a − t a r g e t =”# n a v b a r S u p p o r t e d C o n t e n t ”

a r i a − c o n t r o l s =” n a v b a r S u p p o r t e d C o n t e n t ” a r i a − e x pa n de d =”

false”

a r i a − l a b e l =” T o g gle n a v i g a t i o n ”>

<s p a n c l a s s =” na v ba r − t o g g l e r − i c o n ”></ span>

</ b utt o n >

<di v c l a s s =” c o l l a p s e na v ba r − c o l l a p s e ” i d =” n a v b a r S u p p o r t e d

C o n t e n t ”>

<u l c l a s s =” na v ba r − nav mr− a ut o ”>

< l i c l a s s =” nav − it em ”>

<a c l a s s =” nav − l i n k ” h r e f = ”/ a n a l y s i s ”>A n al y si s </a>

</ l i >

< l i c l a s s =” nav − it em ”>

IGNOU MCA MINI PROJECT Page | 53


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<a c l a s s =” nav − l i n k ” h r e f =”/”> P r e d i c t i o n <s p a n c l a s s =

” s r − o nl y ”>( c u r r e n t ) </ span ></a>

</ l i >

< l i c l a s s =” nav − it em ”>

<a c l a s s =” nav − l i n k ” h r e f = ”/ r e s u l t s ”>R e s u l t s </a>

</ l i >

</ ul>

</ di v>

</ nav>

{% bl o c k main %}

{% e n d bl o c k %}

<s c r i p t s r c =” h t t p s : / / c d n j s . c l o u d f l a r e . com / a j a x / l i b s / p o p p e r . j s / 1 .
12.9/

umd / p o p p e r . min . j s ”

i n t e g r i t y =” sha384 −ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K /

ScQsAP7hUibX39j7 fakFPskvXusv fa0b4Q ”

c r o s s o r i g i n =” anonymous”></ s c r i p t >

<s c r i p t s r c =” h t t p s : / / maxcdn . b o o t s t r a p c d n . com / b o o t s t r a p / 4 . 0 . 0 / j s /

b o o t s t r a p . min . j s ”

i n t e g r i t y =” sha384 − JZR6Spejh4U02d8jOt6vLEH fe /

JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl”

IGNOU MCA MINI PROJECT Page | 54


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

c r o s s o r i g i n =” anonymous”></ s c r i p t >

</ body>

</ html>

p r e d i c t . html

{% e x t e n d s ” b a s e . html ” %}

{% bl o c k main %}

<!−− Modal −−>

<di v c l a s s =” modal f a d e ” i d =” exampleModal ” t a b i n d e x =” −1” r o l e =” d i a l

o g ” a r i a − l a b e l l e d b y =” e xam pleM o dalLa bel ”

a r i a − hi d d e n =” t r u e ”>

<di v c l a s s =” modal − d i a l o g ” r o l e =” document”>

<di v c l a s s =” modal − c o n t e n t ”>

<di v c l a s s =” modal − h e a d e r ”>

<h5 c l a s s =” modal − t i t l e ” i d =” e xam pleM o dalLa bel”>

P r e d i c t i o n R e s u l t s </ h5>

<b u t t o n t y p e =” b u t t o n ” c l a s s =” c l o s e ” d at a − d i s m i s s =” modal ”

a r i a − l a b e l =” Cl o s e ”>

<s p a n a r i a − hi d d e n =” t r u e ”>&t i m e s ; </ span>

</ b utt o n >

</ di v>
IGNOU MCA MINI PROJECT Page | 55
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<di v c l a s s =” modal −body”>

<h5>P r e d i c t i o n I n p u t : </ h5>

<di v>Mark 1 : <s p a n i d =” s p a n m a r k 1 ”></ span ></ di v>

<di v>Mark 2 : <s p a n i d =” s p a n m a r k 2 ”></ span ></ di v>

<di v>Age : <s p a n i d =” s p a n a g e ”></ span ></ di v>

<di v>Mother ’ s E d u c ati o n : <s p a n i d =” span Medu”></ span ></ di v>

<di v>F at h e r ’ s E d u c ati o n : <s p a n i d =” s p a n F e d u ”></ span ></ di v>

<di v>T r a v e l Time : <s p a n i d =” s p a n t r a v e l t i m e ”></ span ></ di v>

<di v>St u d y Time : <s p a n i d =” s p a n s t u d y t i m e ”></ span ></ di v>

<di v>F a i l u r e s : <s p a n i d =” s p a n f a i l u r e s ”></ span ></ di v>

<di v>Q u a l i t y o f Famil y R e l a t i o n s h i p s : <s p a n i d =” s p a n f a m r e l ”></ span


></ di v>

<di v>F r e e Time : <s p a n i d =” s p a n f r e e t i m e ”></ span ></ di v>

<di v>F r e e Time : <s p a n i d =” s p a n g o o u t ”></ span ></ di v>

<di v>H e alt h : <s p a n i d =” s p a n h e a l t h ”></ span ></ di v>

<di v>A b se nce s : <s p a n i d =” s p a n a b s e n c e s ”></ span ></ di v>

<h5 c l a s s =” pt −3”> P r e d i c t e d Mark : </ h5>

<di v i d =” p r e d i c t i o n ”></ di v>

</ di v>

<di v c l a s s =” modal − f o o t e r ”>

<b u t t o n t y p e =” b u t t o n ” c l a s s =” bt n bt n − s e c o n d a r y ” d at a − d i s m i s

s =” modal”>Cl o se </ b utt o n >

IGNOU MCA MINI PROJECT Page | 56


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<a c l a s s =” bt n bt n − p rim a r y ” h r e f = ”/ r e s u l t s ” r o l e =” b u t t o n ”>View R

e s u l t s </a>

</ di v>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” c o n t a i n e r pt −5” s t y l e =” t e x t − a l i g n : c e n t e r ”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<h1>S t u d e n t P e r f o rm a n c e A n al y z e r and P r e d i c t o r </ h1>

</ di v>

</ di v>

<fo rm a c t i o n =”” i d =” p o st − fo rm”>

{% c s r f t o k e n %}

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row mt−5”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t r n o ”>R oll No. </ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

IGNOU MCA MINI PROJECT Page | 57


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t r n o ” r e q u i r

ed>

</ di v>

<di v c l a s s =” c ol −md”></ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p ut m a r k 1 ”>Mark 1</ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p ut m a r k 1 ” r e q

uired>

</ di v>

<di v c l a s s =” c ol −md”>

<span>ma rks s c o r e d i n f i r s t s e r i e s ( f rom 0 t o 20 ) </ span>

</ di v>

</ di v>

</ di v>

IGNOU MCA MINI PROJECT Page | 58


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p ut m a r k 2 ”>Mark 2</ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p ut m a r k 2 ” r e q

uired>

</ di v>

<di v c l a s s =” c ol −md”>

<span>ma rks s c o r e d i n s e c o n d s e r i e s ( f rom 0 t o 20 ) </ span>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t a g e ”>Age</ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

IGNOU MCA MINI PROJECT Page | 59


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t a g e ” r e q u i r

ed>

</ di v>

<di v c l a s s =” c ol −md”>

<span>s t u d e n t ’ s a ge ( from 15 t o 22 ) </ span>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p ut M e d u ”>Mother ’ s E d u c ati o n </ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p ut M e d u ” r e q u

ired>

</ di v>

<di v c l a s s =” c ol −md”>

<span >(0 − none , 1 − p rim a r y e d u c a t i o n ( 4 t h g r a d e ) , 2 − 5 t h t o 9 t h g r a

d e , 3 − s e c o n d a r y e d u c a t i o n o r 4 − h i g h e r e d u c a t i o n ) </ span>

</ di v>
IGNOU MCA MINI PROJECT Page | 60
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t F e d u ”>F at h e r ’ s E d u c ati o n </ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t F e d u ” r e q u

ired>

</ di v>

<di v c l a s s =” c ol −md”>

<span >(0 − none , 1 − p rim a r y e d u c a t i o n ( 4 t h g r a d e ) , 2 − 5 t h t o 9 t h g r a

d e , 3 − s e c o n d a r y e d u c a t i o n o r 4 − h i g h e r e d u c a t i o n ) </ span>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

IGNOU MCA MINI PROJECT Page | 61


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<l a b e l f o r =” i n p u t t r a v e l t i m e ”>T r a v e l Time</ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t t r a v e l t i m e

”required>

</ di v>

<di v c l a s s =” c ol −md”>

<span>tim e t a k e n t o r e a c h c o l l e g e ( 1 − <15 min . , 2 − 15 t o 30 min . , 3 − 30

min . t o 1 hour , o r 4 − >1 h o u r ) </ span>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t s t u d y t i m e ”>St u d y Time</ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t s t u d y t i m e ”

required>

</ di v>
IGNOU MCA MINI PROJECT Page | 62
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<di v c l a s s =” c ol −md”>

<span>wee kl y s t u d y tim e ( 1 − <2 h o u r s , 2 − 2 t o 5 h o u r s , 3 − 5 t o 10 h o u r

s , o r 4 − >10 h o u r s ) </ span>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t f a i l u r e s ”> F a i l u r e s </ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t f a i l u r e s ” r e

quired>

</ di v>

<di v c l a s s =” c ol −md”>

<span>number o f f a i l u r e s i n p a s t ( n i f 1<=n<3, e l s e 4 ) </ span>

</ di v>

</ di v>

</ di v>

IGNOU MCA MINI PROJECT Page | 63


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t f a m r e l ”>Q u a l i t y o f Famil y R e l a t i o n s h i p s </ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t f a m r e l ” r e q

uired>

</ di v>

<di v c l a s s =” c ol −md”>

<span >( f rom 1 − v e r y bad t o 5 − e x c e l l e n t ) </ span>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t f r e e t i m e ”>F r e e Time</ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

IGNOU MCA MINI PROJECT Page | 64


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t f r e e t i m e ” r

equired>

</ di v>

<di v c l a s s =” c ol −md”>

<span>f r e e tim e a f t e r c o l l e g e ( f rom 1 − v e r y low t o 5 − v e r y hi g h ) </

span>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t g o o u t ”>Going o ut wit h F ri e n d s </ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t g o o u t ” r e q

uired>

</ di v>

<di v c l a s s =” c ol −md”>

<span >( f rom 1 − v e r y low t o 5 − v e r y hi g h ) </ span>

IGNOU MCA MINI PROJECT Page | 65


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t h e a l t h ”>H e alt h </ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t h e a l t h ” r e q

uired>

</ di v>

<di v c l a s s =” c ol −md”>

<span>c u r r e n t h e a l t h s t a t u s ( f rom 1 − v e r y bad t o 5 − v e r y good ) </


span>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

IGNOU MCA MINI PROJECT Page | 66


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<di v c l a s s =” c ol −md”>

<l a b e l f o r =” i n p u t a b s e n c e s ”>Absences </ l a b e l >

</ di v>

<di v c l a s s =” c ol −md”>

<i n p u t t y p e =” number ” c l a s s =” form − c o n t r o l ” i d =” i n p u t a b s e n c e s ”

required>

</ di v>

<di v c l a s s =” c ol −md”>

<span>number o f c o l l e g e a b s e n c e s ( f rom 0 t o 93 ) </ span>

</ di v>

</ di v>

</ di v>

<di v c l a s s =” form − g r o u p”>

<di v c l a s s =” row”>

<di v c l a s s =” c ol −md”></ di v>

<di v c l a s s =” c ol −md”>

<b u t t o n t y p e =” s u bmit ” v a l u e =” S u bmit ” c l a s s =” bt n bt n − p rim a r y ” d

at a − t o g g l e =” modal ”

d at a − t a r g e t =”# exampleModal”> P r e d i c t

</ b utt o n >

IGNOU MCA MINI PROJECT Page | 67


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

</ di v>

<di v c l a s s =” c ol −md”></ di v>

</ di v>

</ di v>

</ form>

</ di v>

<s c r i p t >

$ ( document ) . on ( ’ s u bmit ’ , ’# p o st − form ’ , f u n c t i o n ( e ) {

e.preventDefault();

$ . a j a x ({

t y p e : ’POST ’ ,

u r l : ’{% u r l ” p r e d i c t : s u b m i t p r e d i c t i o n ” %} ’ ,

data:{

rno:$(’#inputrno’).val(),

G1 : $ ( ’ # i n p ut m a r k 1 ’ ) . v a l ( ) ,

G2 : $ ( ’ # i n p ut m a r k 2 ’ ) . v a l ( ) ,

a ge : $ ( ’ # i n p u t a g e ’ ) . v a l ( ) ,

Medu : $ ( ’ # i n p ut Me d u ’ ) . v a l ( ) ,

Fedu : $ ( ’ # i n p ut F e d u ’ ) . v a l ( ) ,

traveltime:$(’#inputtraveltime’).val(),

studytime:$(’#inputstudytime’).val(),

failures:$(’#inputfailures’).val(),
IGNOU MCA MINI PROJECT Page | 68
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

famrel:$(’#inputfamrel’).val(),

freetime:$(’#inputfreetime’).val(),

g o o ut : $ ( ’ # i n p u t g o o u t ’ ) . v a l ( ) ,

health:$(’#inputhealth’).val(),

absences:$(’#inputabsences’).val(),

c s r f m i d d l e w a r e t o k e n : $ ( ’ i n p u t [ name= c s r f m i d d l e w a r e t o k e n ] ’ ) . v a
l(),

a c t i o n : ’ p o st ’

},

success:function(json){

document . f o rm s [ ” p o st − fo rm ” ] . r e s e t ( ) ;

document . g et El em e ntB y I d ( ” s p a n m a r k 1 ” ) . innerHTML = j s o n [ ’ G1 ’ ]

document . g et El em e ntB y I d ( ” s p a n m a r k 2 ” ) . innerHTML = j s o n [ ’ G2 ’ ]

document . g et El em e ntB y I d ( ” s p a n a g e ” ) . innerHTML = j s o n [ ’ age ’ ]

document . g et El em e ntB y I d ( ” span Medu ” ) . innerHTML = j s o n [ ’Medu ’ ]

document . g et El em e ntB y I d ( ” s p a n F e d u ” ) . innerHTML = j s o n [ ’ Fedu ’ ]

document . g et El em e ntB y I d ( ” s p a n t r a v e l t i m e ” ) . innerHTML = j s o n [ ’ t r a v e l


time’]

document . g et El em e ntB y I d ( ” s p a n s t u d y t i m e ” ) . innerHTML = j s o n [ ’ st u d yti


me’]

document . g et El em e ntB y I d ( ” s p a n f a i l u r e s ” ) . innerHTML = j s o n [ ’ f a i l u r e s ’


]

document . g et El em e ntB y I d ( ” s p a n f a m r e l ” ) . innerHTML = j s o n [ ’ f am r el ’ ]

document . g et El em e ntB y I d ( ” s p a n f r e e t i m e ” ) . innerHTML = j s o n [ ’ f r e e t i m


IGNOU MCA MINI PROJECT Page | 69
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

e’]

document . g et El em e ntB y I d ( ” s p a n g o o u t ” ) . innerHTML = j s o n [ ’ g o o ut ’ ]

document . g et El em e ntB y I d ( ” s p a n h e a l t h ” ) . innerHTML = j s o n [ ’ h e a l t h ’ ]

document . g et El em e ntB y I d ( ” s p a n a b s e n c e s ” ) . innerHTML = j s o n [ ’ a b s e n c e


s’]

document . g et El em e ntB y I d ( ” p r e d i c t i o n ” ) . innerHTML = j s o n [ ’ G3 ’ ]

},

e r r o r : f u n c t i o n ( xh r , e r rm s g , e r r ) {

});

})

</ s c r i p t >

{% e n d bl o c k %}

r e s u l t s . html

{% e x t e n d s ” b a s e . html ” %}

{% bl o c k main %}

<di v c l a s s =” c o n t a i n e r pt −5”>

<di v c l a s s =” row”>

<h1>P r e d i c t i o n R e s u l t s </ h1>

<t a b l e c l a s s =” t a b l e ”>

<t h e a d >

<t r >

<t h s c o p e =” c o l ”>R oll No. </ t h>


IGNOU MCA MINI PROJECT Page | 70
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<t h s c o p e =” c o l ”>Mark 1</ t h>

<t h s c o p e =” c o l ”>Mark 2</ t h>

<t h s c o p e =” c o l ”>Age</ t h>

<t h s c o p e =” c o l ”>Mother ’ s E d u c ati o n </ t h>

<t h s c o p e =” c o l ”>F at h e r ’ s E d u c ati o n </ t h>

<t h s c o p e =” c o l ”>St u d y Time</ t h>

<t h s c o p e =” c o l ”>T r a v e l Time</ t h>

<t h s c o p e =” c o l ”> F a i l u r e s </ t h>

<t h s c o p e =” c o l ”>Q u a l i t y o f Famil y R e l a t i o n s h i p s </ t h>

<t h s c o p e =” c o l ”>F r e e Time</ t h>

<t h s c o p e =” c o l ”>Going o ut wit h F ri e n d s </ t h>

<t h s c o p e =” c o l ”>H e alt h </ t h>

<t h s c o p e =” c o l ”>Absences </ t h>

<t h s c o p e =” c o l ”> P r e d i c t e d Mark</ t h>

</ t r >

</ t h e a d >

<t b o d y>

{% f o r d a t a i n d a t a s e t %}

<t r >

<t h s c o p e =” row”>{{ d a t a . r n o }}</ t h>

<t d >{{ d a t a . g r a d e 1 }}</ t d>

<t d >{{ d a t a . g r a d e 2 }}</ t d>

IGNOU MCA MINI PROJECT Page | 71


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<t d >{{ d a t a . a ge }}</ t d>

<t d >{{ d a t a . m ot h e r e d u }}</ t d>

<t d >{{ d a t a . f a t h e r e d u }}</ t d>

<t d >{{ d a t a . t r a v e l t i m e }}</ t d>

<t d >{{ d a t a . s t u d y t i m e }}</ t d>

<t d >{{ d a t a . f a i l u r e s }}</ t d>

<t d >{{ d a t a . f a m r e l }}</ t d>

<t d >{{ d a t a . f r e e t i m e }}</ t d>

<t d >{{ d a t a . g o o ut }}</ t d>

<t d >{{ d a t a . h e a l t h }}</ t d>

<t d >{{ d a t a . a b s e n c e s }}</ t d>

<t d >{{ d a t a . g r a d e 3 | f l o a t f o r m a t : 2 }}</ t d>

</ t r >

{% e n d f o r %}

</ t b o d y>

</ t a b l e >

</ di v>

</ di v>

{% e n d bl o c k %}

a n a l y s i s . html

{% e x t e n d s ” b a s e . html ” %}

{% l o a d s t a t i c %}

IGNOU MCA MINI PROJECT Page | 72


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

{% bl o c k main %}

<di v c l a s s =” c o n t a i n e r ”>

<di v c l a s s =” row”>

<di v c l a s s =” c o l ”>

<img s r c =”{% s t a t i c ’ a n a l y s i s s t u d y t i m e . png ’ %}” s t y l e =”max− wi dt h

: 100%”>

</ di v>

<di v c l a s s =” c o l ”>

<img s r c =”{% s t a t i c ’ a n a l y s i s f a i l u r e s . png ’ %}” s t y l e =”max− wi dt h :

100%”>

</ di v>

</ di v>

<di v c l a s s =” row”>

<di v c l a s s =” c o l ”>

<img s r c =”{% s t a t i c ’ a n a l y s i s f a m r e l . png ’ %}” s t y l e =”max− wi dth :

100%”>

</ di v>

<di v c l a s s =” c o l ”

<img s r c =”{% s t a t i c ’ a n a l y s i s f a m r e l . png ’ %}” s t y l e =”max− wi dt h :

100%”>

</ di v>

<di v c l a s s =” c o l ”>
IGNOU MCA MINI PROJECT Page | 73
STUDENT PERFORMANCE ANALYZER AND PREDICTOR

<img s r c =”{% s t a t i c ’ a n a l y s i s a b s e n c e s . png ’ %}” s t y l e =”max− wi dt h :

100%”>

</ di v>

</ di v>

</ di v>

{% e n d bl o c k %}

5.3 TESTING APPROACHES

5.3.1 UNIT TESTING

In unit testing, unit testing focuses verification efforts on the smallest unit of software
design, the module. This is also known as “module testing” . The modules are tested separately.
This testing is carried out during the programming stage itself. In this testing step, each module is
found to be working satisfactorily as regard to the expected output from the module.

5.3.2 INTEGRATED TESTING

Integration testing is used to develop an incremental strategy that will limit the
complexity of interactions among components as they are added to the File keeping system,
developing an integration system schedule that will make the modules available when needed. In
this test, groups of the program modules are tested together to determine their interface properly.
Two types of integration testing are:

Top down Integration : This method is an incremental approach to the construction of the
program structure. Modules are integrated by moving downwards through the control hierarchy,
beginning with the main program module. The module subordinates to the main program module
is incorporated into the structure in either the depth first manner.

Bottom –up Integration : This method begins the construction and testing the modules at the
lowest level in the program structure. Since the modules from the bottom up, processing required
for modules subordinate to a given level is always available and the need for the stubs is
eliminated.

IGNOU MCA MINI PROJECT Page | 74


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

5.4 MODIFICATIONS AND IMPROVEMENT


This System is mainly used to predict a student’s performance by analysing behavioural patterns
and existing grades. . We can use a more advanced version of this paper, we could incorporate
Artificial Intelligence along with Machine Learning to predict the career of a student instead of
only predicting the upcoming exam results.

IGNOU MCA MINI PROJECT Page | 75


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

CHAPTER- 6
RESULT AND DISCUSSION

IGNOU MCA MINI PROJECT Page | 76


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

RESULT AND DISCUSSION


6.1 TEST REPORTS

Function Purpose of set of test Test case ID No of test cases run Number of Test
cases per area cases successful

Upload To input data QT1-001 4 100%

Submission The saving of values to QT1-002 6 100%


database

Combine QT1-003 10 100%


input data Combines input data
received from web
applications to form a
dataset.

Clustering QT3-001 12 100%


Classified into groups

Regression QT3-002 12 100%


Finds correlation
between attributes)

Predict Optimized combination QT3-003 15 100%


of Attributes

View Display output QT3-004 2 100%

Close Close the form QT3-005 2 100%

IGNOU MCA MINI PROJECT Page | 77


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

6.2 USER DOCUMENTATION


Safety Instructions

1. Should input proper data, unless this may lead to incorrect output

2. Make sure to input values only in the scale

3. Please ensure you are having good internet connection

User Manual:

This system predicts a student’s performance based on input given by Teachers and Students.

Provide Student’s information:

Input student details from both Teacher and Student end.Then these values are passed from input
module to machine learning module. After that it will test the attributes obtained from the input
module against the model. Post testing, we will obtain a predicted value and this predicted value is
passed to the output module.

Display:

Predicted value and analysis is accepted from the machine learning module. These predicted
value and analysis graphs are displayed to the user.

IGNOU MCA MINI PROJECT Page | 78


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

CHAPTER- 7
CONCLUSIONS

IGNOU MCA MINI PROJECT Page | 79


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

CONCLUSIONS
7.1 Conclusion

In this project, we analysed a student’s performance by analysing their behavioural patterns and
academic results. It helped us to predict the upcoming exam’s results with high accuracy. We used
the Linear Regression algorithm where we found a line that best fits the data points available on
the plot, so that we can use it to predict output values for given inputs. It helped us to provide the
most efficient combination of attributes that affect the performance of a student. Performance
evaluation of students is essential to check the feasibility of improvement. Regular evaluation not
only improves the performance of the student but also it helps in understanding where the student
is lacking. Existing systems mostly consider only the academic attributes but studies have found
that nonacademic attributes have equal importance in a student’s performance. The obtained
results showed that this is a promising system for predicting and analysing students' performance
which will help in their academic results.

7.2 Limitations of the system


System should be more secure. Any network problem leads to system hang. Adding authentication
functions to the system can make it more efficient.

7.3 Future scope of the project


This system will proceed for future work with researchers proceeding to investigate for the most
optimized set of attributes for getting better results. In an advanced version of this paper, we could
incorporate Artificial Intelligence along with Machine Learning to predict the career of a student
instead of only predicting the upcoming exam results. This would be a more realistic approach to
counselling since it takes into account both personality and aptitude, which are responsible for
career decisions. It’s also possible to use better plotting methods to visualize the predicted results
as we used matplotlib which is a basic plotting library using only bars,lines,pies etc. There are
better alternatives for matplotlib that provide a variety of visualization patterns, like Seaborn,
Bokeh etc.

IGNOU MCA MINI PROJECT Page | 80


STUDENT PERFORMANCE ANALYZER AND PREDICTOR

REFERENCES

[1.] Pauziah Mohd Arsad, Norlida Buniyamin and Jamalul-lail Ab Manan, ”A Neural Network
Students’ Performance Prediction Model (NNSPPM)”, 2013 IEEE International Conference on
Smart Instrumentation Measurement and Applications (ICSIMA).

[2.] Mohan M G Midhun, Siju K Augustin and V S Kumari Roshni, ”A BigData Approach for
Classification and Prediction of Student Result Using MapReduce”, 2015 IEEE Recent Advances
in Intelligent Computational Systems (RAICS), pp. 145-150, 2015.

[3.] Madhav S. Vyas and Reshma Gulwani, ”Predicting Student’s Performance using CART
approach in Data Science”, 2017 International conference of Electronics Communication and
Aerospace Technology (ICECA), pp. 58-61, 2017.

[4.] Huda Al-Shehri, Amani Al-Qarni, Leena Al-Saati, Arwa Batoaq, Haifa Badukhen, Saleh
Alrashed, et al., ”Student Performance Prediction Using Support Vector Machine and K-Nearest
Neighbors”, 2017 IEEE 30th Canadian Conference on Electrical and Computer Engineering
(CCECE), 2017.

IGNOU MCA MINI PROJECT Page | 81

You might also like