You are on page 1of 53

ERP System for Educational

Institutions using Django


A PROJECT REPORT SUBMITTED IN PARTIAL FULLFILLMENT
OF THE REQUIREMENTS FOR THE DEGREE OF

BACHELOR OF TECHNOLOGY

BY

MOHD GHAZI RAZA

(18BTCS007HY)

UNDER THE GUIDANCE OF

Dr. Syed Imtiyaz Hassan

(Associate Professor, Department of CS&IT, MANUU)

School of Computer Science and Information Technology

MAULANA AZAD NATIONAL URDU UNIVERSITY


Gachibowli, Hyderabad-500032
Certificate
This is to certify that project report entitled “ERP System for Educational
Institutions” submitted by MOHD GHAZI RAZA bearing Roll Number
18BTCS007HY in partial fulfilment of the requirement for the award of B.Tech.
(Bachelor of Technology) Degree during year 2018-2022 at the Department of
Computer Science and Information Technology, MANUU is an authentic
work carried out by him under our guidance and supervision.
The result presented in this report have been verified and are found to be
satisfactory. The result embodied in this dissertation have not been submitted to
any other university of Institute for the award of any other degree or diploma.

_____________________
(MOHD GHAZI RAZA)

Student Name & Signature

______________ ______________

Internal Guide Head


Department of CS&IT

_________________
External Examiner
ii
Department of CS&IT
CANDIDATE’S DECLARATION

I hereby declare that the project work presented in this report entitled “ERP
System for Educational Institutions” toward the partial fulfilment of the
requirement for the award of the degree of Bachelor of Technology (B.Tech.)
submitted in the Department of CS&IT, Maulana Azad National Urdu University,
Hyderabad, Telangana, India is an authentic record of my own work carried out
under the guidance of Dr. Syed Imtiyaz Hassan (Associate Professor,
Department of CS&IT, MANUU, Hyderabad).

I have not submitted the matter embodied in this project report for the award
of any other degree or diploma to any other University or Institute.

Date: ______________ _________________


Place: MANUU, Hyderabad MOHD GHAZI RAZA

iii
Department of CS&IT
ACKNOWLEDGEMENT

I express my gratitude towards Dr. Abdul Wahid (Professor & Dean, School of
Technology, MANUU), Dr. Syed Imtiyaz Hassan (Project Supervisor and Head, Department
of CS&IT, MANUU) and Ms. Geeta Pattun (Coordinator and Assistant Professor,
Department of CS&IT, MANUU) for consistently providing me with the required guidance to
help me in the timely and successful completion of this project report.

I am deeply indebted to Dr. Syed Imtiyaz Hassan (Project Supervisor and Head,
Department of CS&IT, MANUU) for the valuable suggestions and support. In spite of his
extremely busy schedules in the Department, He was always available to share with me his
deep insight, wide knowledge and extensive experience.

I sincerely thank Dean, School of Technology and Head, Department of Computer


Science & Information Technology for giving sufficient guidance for completion the project
in time.

I express my whole hearted gratitude to Honourable Vice Chancellor Dr. Syed Ainul
Hasan, for providing the excellent environment for carrying through our academic schedules
and project with ease.

I would like to thank all my friends and especially my classmates for all the thoughtful and
mind stimulating discussion we had, which prompted us to think beyond the obvious. I have
enjoyed their company so much during my stay at MANUU.

MOHD GHAZI RAZA

(18BTCS007HY)

iv
Department of CS&IT
ABSTRACT

The numerous procedures and methods utilised in gathering requirements,


planning, executing, and testing the project on the college management system
are detailed in this report. The issues with the college's present system were
examined and acknowledged. This project seeks to address some of those issues
in order to improve the present system. All of the stakeholders' needs were
gathered, and we used that information to develop a requirements model on which
to base the design of the programme.
Using Django (Python), the project was carried out as a website. We created the
college ERP system utilising several features that address the system's present
issues, such as a provision to change attendance and grades before locking it at
the conclusion, using the many resources and tools we collected along the route.
The programme was also examined using a variety of testing techniques, and the
outcomes were promising.
As a consequence, the outcomes may be incorporated into the present ERP system
to enhance functionality and address specific issues.

v
Department of CS&IT
Table of Contents
COVER PAGE ...................................................................................................... I
CERTIFICATE .................................................................................................... II
CANDIDATE’S DECLARATION .................................................................... III
ACKNOWLEDGEMENT .................................................................................. IV
ABSTRACT ........................................................................................................ V
LIST OF FIGURES ......................................................................................... VIII
LIST OF ABBREVIATIONS & ACRONYMS ................................................ IX
INTRODUCTION ................................................................................................ 2
1.1 INTRODUCTION........................................................................................................................................ 2
1.2 OBJECTIVE ................................................................................................................................................ 2
1.3 EXISTING SYSTEM......................................................................................................................................... 3
1.4 PROPOSED SYSTEM ....................................................................................................................................... 3

FEASIBILITY STUDY........................................................................................ 5
2.1 TECHNICAL FEASIBILITY............................................................................................................................... 5
2.2 OPERATIONAL FEASIBILITY .......................................................................................................................... 5
2.3 ECONOMICAL FEASIBILITY ........................................................................................................................... 6

PROBLEM ANALYSIS AND RELATED WORK ............................................ 8


3.1 LITERATURE SURVEY ................................................................................................................................... 8
3.2 EXISTING SYSTEM/PROBLEM ........................................................................................................................ 8
3.3 PROPOSED SYSTEM/SOLUTION ...................................................................................................................... 8
3.4 METHODOLOGY: MODULES/METHODS/PHASES ............................................................................................ 8
3.4.1 Student .............................................................................................................................................. 9
3.4.2 Teacher ........................................................................................................................................... 10
3.4.3 Administrator.................................................................................................................................. 13
3.5 SYSTEM REQUIREMENTS ..................................................................................................................... 13

SYSTEM DESIGN ............................................................................................. 16


4.1 ARCHITECTURAL DESIGN ........................................................................................................................... 16
4.1.1 Central data .................................................................................................................................... 17
4.1.2 Data accessors ............................................................................................................................... 17
4.1.3 Interface ......................................................................................................................................... 17
4.2 OVERALL BLOCK DIAGRAM......................................................................................................................... 17
4.3 FLOW CHART .............................................................................................................................................. 18
......................................................................................................................................................................... 18
4.4 DATA FLOW DIAGRAMS/UML ..................................................................................................................... 19
vi
Department of CS&IT
SYSTEM IMPLEMENTATION........................................................................ 24
5.1 TECHNOLOGY USED.................................................................................................................................... 24
5.3 INSTALLATION AND EXECUTION GUIDELINES .............................................................................................. 27
5.4INPUT/OUTPUT SCREEN SNAP SHOTS ........................................................................................................... 27

TESTING ............................................................................................................ 37
6.1 TESTING METHODS...................................................................................................................................... 37
6.1.1 White Box Testing ........................................................................................................................... 37
......................................................................................................................................................................... 38
6.1.2 Black Box Testing ........................................................................................................................... 38
6.1.3 Acceptance Testing ......................................................................................................................... 39
6.2 RESULTS OF TESTING .................................................................................................................................. 40

CONCLUSION AND FUTURE WORK ........................................................... 42


REFERENCES ................................................................................................. 43

vii
Department of CS&IT
List of Figures

Figure Number Description


4.1.1 Data Centric architecture style
4.2.1 Block diagram of architecture
4.3.1 Flowchart
4.4.1 Level-0 DFD
4.4.2 Level-1 DFD
4.4.3 Use Case Diagram
4.4.4 Class Diagram
4.4.5 ER Diagram
5.4.1 Login Page with admin credentials
5.4.2 Admin Homepage with admin credentials
5.4.3 Page to add teacher
5.4.4 Page to add student
5.4.5 Dashboard of a student
5.4.6 Attendance module for student
5.4.7 Marks module for student
5.4.8 Time table module for student
5.4.9 Dashboard of a teacher
5.4.10 Attendance module for teacher
5.4.11 Attendance module for teacher
5.4.12 Attendance module for teacher
5.4.13 Marks module for teacher
5.4.14 Marks module for teacher
5.4.15 Time table module for teacher
5.4.16 Report Generation module for teacher
6.1.1.1 Testing Result

viii
Department of CS&IT
List of Abbreviations & Acronyms

ERP Enterprise Resource Planning


ERM Enterprise Resource Management
DAPP Decentralized Application
GUI Graphical User Interface
MVP Minimum Viable Product
SDLC Software Development Life Cycle
GA General Availability
HTML Hypertext Markup Language
CSS Cascading Style Sheet
DFD Data Flow Diagram
UI User Interface
CLI Command Line Interface
API Application Programming Interface
DEX Decentralized Exchanges
UML Unified Modelling Language
RPC Remote Procedure Call
UMV User Model View
MVC Model View Controller
WebApp Web Application
HTTP Hyper Text Transfer Protocol

ix
Department of CS&IT
CHAPTER 1

INTRODUCTION
CHAPTER 1

INTRODUCTION

1.1 INTRODUCTION

The goal of the College Information Management System is to provide any


organization's administrator access to change and discover a student's personal
information while also enabling the student to update his profile. Additionally, it
will make it easier to maintain all of the students' details, including their name,
address, phone number, and date of birth. Therefore, all of a student's information
will be accessible in a matter of seconds. Overall, it will make the job of the
administration and the student in any company simpler. [1]
This project's major goal is to demonstrate the demands of the College
Information Management System project and is meant to assist any business in
maintaining and managing personal data. It is an extensive undertaking that was
created from the bottom up to meet the demands of universities as they mentor
their students. The everyday activities in the college environment are connected
by this integrated information management system, from attendance control to
methods of communication between students and professors. This minimises data
inaccuracy and guarantees that all of the college's information is constantly
current. It offers a lone source of data repository for all reporting requirements
and process efficiency. It is intuitive and features a straightforward user interface.
This ensures that the users spend less time in learning the system and hence,
increase their productivity. Efficient security features provide data privacy and
hence, increase their productivity.

1.2 OBJECTIVE
• To study and review the current or existing system.
• To find the problem and issues of the existing system.
• To design the model of the proposed system (College Information
Management System)
• To develop and implement the College Information Management System.

2
Department of CS&IT
1.3 Existing System
The existing system allows the admin to create new entries for new students and
classes but the process is not streamlined. The features are not actively
implementable and the system is not dynamic. The attendance is to be taken
offline and then uploaded. The lack of features includes the above discussed
things but are not limited to these.

1.4 Proposed System


This project's major goal is to demonstrate the demands of the College
Information Management System project and is meant to assist any business in
maintaining and managing personal data. It is an extensive undertaking that was
created from the bottom up to meet the demands of universities as they mentor
their students. The everyday activities in the college environment are connected
by this integrated information management system, from attendance control to
methods of communication between students and professors. This minimises data
inaccuracy and guarantees that all of the college's information is constantly
current. It offers a lone source of data repository for all reporting requirements
and process efficiency.

3
Department of CS&IT
CHAPTER 2

FEASIBILITY
STUDY

4
Department of CS&IT
CHAPTER 2

FEASIBILITY STUDY

The major goal of the feasibility study is to determine if it is technically,


operationally, and economically feasible to add new modules and fix existing
systems. [2] If given endless time and infinite resources, all systems are possible.
There are aspects in the feasibility study portion of the preliminary investigation:
• Technical Feasibility
• Operational Feasibility
• Economic Feasibility

2.1 Technical Feasibility


The technical issue raised during the feasibility stage of investigation includes the
following:
• Does the necessary technology exist to do what is suggested?
• Do the proposed equipment have the technical capacity to hold the data
required to use the new system?
• Will the proposed system provide best Security of Patient data?
• Can the system be upgraded if developed?
• Is there technical guarantee of accuracy, reliability, ease of access and data
security?

2.2 Operational Feasibility

User-friendly

This application is basically made for the purpose of making the management of
information related to the workings of a college easy and efficient.

Reliability

Students as well as teachers will be able to track their profiles and can know all
the important things related to their role in the college with respect to every class
they study in or teach.
5
Department of CS&IT
Security

This web application is developed by using Django framework which is a


highly secure web applications development framework

Portability

This web application is portable because we can run it on any platform or


device like Windows and Linux and on mobile devices also.

Availability

This web application will be always available because it will be hosted on an


always live server host, it is nearly impossible to hack the system, and there will
be no 404 error.

Maintainability

This web application uses the 2-tier architecture. The 1st tier is the GUI which
has been developed with HTML, CSS and JS, which is said to be front-end and
the 2nd tier is Django which is used in back-end.

2.3 Economical Feasibility

Once hosted, it will keep working for the rest of its life cycle. There are no
maintenance costs except the domain cost.

6
Department of CS&IT
CHAPTER 3

PROBLEM
ANALYSIS AND
RELATED WORK

7
Department of CS&IT
CHAPTER 3

PROBLEM ANALYSIS AND RELATED WORK

3.1 Literature Survey


For literature review books, research papers, Indian journals and international
journals were reviewed as per the list given at the end of the chapter. Literature
was also sought in digital database and by using search engines such as google
on internet by typing key words such as Enterprise Resource Management,
College Information Management System, use case of ERP Systems etc.

3.2 Existing System/Problem


The existing system allows the admin to create new entries for new students and
classes but the process is not streamlined. The features are not actively
implementable and the system is not dynamic. The attendance is to be taken
offline and then uploaded. The lack of features includes the above discussed
things but are not limited to these.

3.3 Proposed System/Solution


This project's major goal is to demonstrate the demands of the College
Information Management System project and is meant to assist any business in
maintaining and managing personal data. It is an extensive undertaking that was
created from the bottom up to meet the demands of universities as they mentor
their students. The everyday activities in the college environment are connected
by this integrated information management system, from attendance control to
methods of communication between students and professors. This minimises data
inaccuracy and guarantees that all of the college's information is constantly
current. It offers a lone source of data repository for all reporting requirements
and process efficiency.

3.4 Methodology: Modules/Methods/Phases


The college ERP system has three main user classes. These include the students,
teachers and administrator. This section will explain in detail all the features and
the working of those for each user class.

8
Department of CS&IT
3.4.1 Student
3.4.1.1 Login
Each student in the college is assigned a unique username and password by the
administrator. The username is the same as their Enrolment Number and so is the
password. They may change it later according to their wish.

3.4.1.2 Homepage
After successful login, the student is presented a homepage with their main
sections, attendance, marks and timetable. In the attendance section the student
can view their attendance status which includes the total classes, attended classes
and the attendance percentage for each of their courses. In the marks section, the
student can view the marks for each of their courses out of 30 for 2 internal
assessments. Also, the semester end examination for 100 marks.
Lastly, the timetable provides the classes assigned to that student and day and
time of each in a tabular form.

3.4.1.3 Attendance
On the attendance page, there is a list of courses that is dependent on each student.
For each course, the course id and name are display along with the attended
classes, total classes and the attendance percentage for that particular course. If
the attendance percentage is below 75 for any course, it is displayed in red
denoting shortage of attendance, otherwise it is green. If there is any shortage, it
specifies the number of classes to attend to make up for it. If you click on each
course, it takes you to the attendance detail page.

3.4.1.4 Attendance Detail


This page displays more details for the attendance in each course. For each the
course, there is a list of classes conducted and each is marked with the date, day
and whether the student was present or absent on that particular date.

3.4.1.5 Marks
The Marks page is a table with an entry for each of their courses. The course id
and name are specified along the marks obtained in each of the tests and exams.
The tests include 2 internal assessments with marks obtained out of a total of 30.
Lastly, one semester end exam with marks out of 100.

9
Department of CS&IT
3.4.1.6 Timetable
This page is a table which lists the day and timings of each of the classes assigned
to the student. The row headers are the days of the week and the column headers
are the time slots. So, for each day, it specifies the classes in the time slots. The
timetable is generated automatically from the assign table, which is a table
containing the information of all the teachers assigned to a class with a course
and the timings the classes.

3.4.2 Teacher
3.4.2 Login
Each teacher in the college is assigned a unique username and password by the
administrator. The username is their teacher ID and the same for password. The
teacher may change the password later.

3.4.2.1 Homepage
After successful login, the student is presented a homepage with their main
sections, attendance, marks, timetable and reports. In the attendance section, the
teacher can enter the attendance of their respective students for the days on which
classes were conducted. There is a provision to enter extra classes and view/edit
the attendance of each individual student. In the marks section, the teacher may
enter the marks for 3 internals, 2 events and 1 SEE for each student. They can
also edit each of the entered marks. The timetable provides the classes assigned
to the teacher with the day and timings in a tabular form. Lastly, the teacher can
generate reports for each of their assigned class.

3.4.2.2 Attendance
There is a list of all the class assigned to teacher. So, for each class there are 3
actions available. They are:

3.4.2.3 Enter Attendance


On this page, the classes scheduled or conducted is listed in the form of a list.
Initially, all the scheduled classes will be listed from the start of the semester to
the current date. Thus, if there is class scheduled for today, it will automatically
appear on top of the list. If the attendance of any day is not marked it will be red,
otherwise green if marked.

10
Department of CS&IT
Classes can also be cancelled which will make that date as yellow. While entering
the attendance, the list of students in that class is listed and there are two options
next to each. These options are in the form of a radio button for present and
absent. All the buttons are initially marked as present and the teacher just needs
to change for the absent students.

3.4.2.4 Edit Attendance


After entering attendance, the teacher can also edit it. It is similar to screen for
entering attendance, only the entered attendance is saved and display. The teacher
can change the appropriate attendance and save it.

3.4.2.5 Extra Class


If a teacher has taken a class other than at the scheduled timings, they may enter
the attendance for that as well. While entering the extra class, the teacher just
needs to specify the date it was conducted and enter the attendance of each of the
students. After submitting extra class, it will appear in the list of conducted
classes and thus, it can be edited.

3.4.2.6 Student Attendance


For each assigned class, the teacher can view the attendance status of the list of
students. The number of attended classes, total number of classes conducted and
the attendance percentage is displayed. If the attendance percentage of any of the
students is below 75, it will be displayed in red. Thus, the teacher may easily find
the list of students not eligible to take a test.

3.4.2.7 Student Attendance Details


The teacher can view the attendance detail of all their assigned students
individually. That is, for all the conducted classes, it will display whether that
student was present or absent. The teacher can also edit the attendance of each
student individually by changing the attendance status for each conducted class.

3.4.2.8 Marks
On this page, the list of classes assigned to the teacher are displayed along with
two actions for each class. These actions are,

11
Department of CS&IT
3.4.2.9 Enter Marks
On this page, the teacher can enter the marks for internal assessments and one
semester end exam. Initially all of them are marked red to denote that the marks
have not been entered yet. Once the marks for a test is entered, it turns green.
While entering the marks for a particular test, the list of students in that class is
listed and marks can be entered for all of them and submitted. Once, the marks
are submitted, the students can view their respective marks. Incase if there is a
need to change the marks of any student, it is possible to edit the marks.

3.4.2.10 Edit Marks


Marks for a test can be edited. While editing, the list of students in that class is
displayed along with already entered marks. The marks to be updated can be
changed and submitted. The students can view this change immediately.

3.4.2.11 Student Marks


For each assigned class, the teacher has access to the list of students and the marks
they obtained in all the tests. This is displayed in a tabular form.

3.4.2.12 Timetable
This page is a table which lists the day and timings of each of the classes assigned
to the teacher. The row headers are the days of the week and the column headers
are the time slots. So, for each day, it specifies the classes in the time slots. The
timetable is generated automatically from the assign table, which is a table
containing the information of all the teachers assigned to a class with a course
and the timings the classes.

3.4.2.13 Free teachers


For each entry in the table, the list of free teachers can be generated. Free teachers
are the teachers who assigned to the class and are free for that time slot on that
day. This is very useful for the teachers particularly when they are on leave as it
helps them find a suitable replacement are that class.

12
Department of CS&IT
3.4.2.14 Reports
The last page for the teachers is used to generate reports for each class. The report
specifies the list of students in that class and their respective CIE and attendance
percentage. CIE is the average of the marks obtained from the tests, 2 internals.
The CIE is out of 50 and the students with CIE below 25 are marked in red and
are not eligible to write the semester end exam. Also, the attendance percentage
is displayed with students below 75% marked in red.

3.4.3 Administrator
The administrator is responsible for adding and maintaining all the departments,
students, teachers, classes and courses. All this data is stored in the database in
their respective tables. The admin is also responsible for adding and maintaining
the list of teachers assigned to class with a course and the timings. This
information is stored in the Assign table. The admin also has access to the marks
and attendance of each student and can modify them.
There are several features in place to ensure that querying the database is quick
and efficient for the administrator. As the database has the potential to become
huge, there is a search feature for every table including student, teacher etc. The
search has got a specific record based on name or id. Also, it can filter the record
based on department, class etc.

3.5 System Requirements


Operating System : Windows 11
IDE : PyCharm
Framework : Django
Package Manager : Pip
Database : SQLite

Hardware Requirements
Processor : Intel Core-i5 x64 based CPU
Storage : 100MB
RAM : 8GB

13
Department of CS&IT
Front End
Front-end is made with Bootstrap.

Back End
Back-end is made with Django and different libraries of Python.

Libraries used in Back-end


• asgiref
• Django
• djangorestframework
• djoser
• pytz
• sqlparse

14
Department of CS&IT
CHAPTER 4

SYSTEM DESIGN

15
Department of CS&IT
CHAPTER 4

SYSTEM DESIGN

System design is the process of art defining the architecture, component modules,
interfaces and data for a system to satisfy specified requirements. One could see
it as the application of system theory to product development.

4.1 Architectural Design


The ERP software requires the architectural design to represent the design of the
software. Here we define a collection of hardware and software components and
their interfaces to establish the framework for the development of this software.
In the college ERP software, the database stores the data of all the students and
faculties and the stored data is updated, added, deleted or modified. So, it exhibits
the data centric architectural style. [1]
In this architecture different components communicate with the shared data
repository. The components access a shared data structure and are relatively
independent. The components are:

Fig. 4.1.1 Data Centric architectural style

16
Department of CS&IT
4.1.1 Central data
Also known as data store or data repository, which is responsible for providing
permanent data storage. It represents the current state. It stores the information of
students, attendance of students and faculties of each day, salary of all the
faculties etc.
4.1.2 Data accessors
Data accessors one of the components, they are also called as clients. A data
accessor operates on the central data store, perform computations, and might put
back the results. Which includes students, faculties and administrator. Students
requests to access the data from the repository and gets the request serviced.
Faculty members modify the data in the repository. Administrator can add or
delete the clients. [3]
4.1.3 Interface
Interface is the connecting component between data repository and clients’ client
interact with the data through the web server. The operation of one client does
not depend on the others. They are independent of each other. This data-centred
architecture will promote integrability. This means that the existing components
can be changed and new client components can be added to the architecture
without the permission or concern of other clients. Addition of removal of
students and faculties can be done without the permission of other students and
faculties. [4]

4.2 Overall block diagram

Fig. 4.2.1 Block Diagram of Architecture

17
Department of CS&IT
4.3 Flow chart

Fig. 4.3.1 Flow Chart

18
Department of CS&IT
4.4 Data flow diagrams/UML

Fig. 4.4.1 Level-0 DFD

Fig. 4.4.2 Level-1 DFD

19
Department of CS&IT
Fig. 4.4.3 Use Case Diagram

20
Department of CS&IT
Fig. 4.4.4 Class Diagram

21
Department of CS&IT
Fig. 4.4.5 ER Diagram

22
Department of CS&IT
CHAPTER 5

SYSTEM
IMPLEMENTATION

23
Department of CS&IT
CHAPTER 5

SYSTEM IMPLEMENTATION

5.1 Technology Used


• Python
• Django
• HTML
• CSS
• JavaScript
• Bootstrap
• PyCharm
• Google Chrome

Python
Python is a high-level, interpreted, general-purpose programming language. Its
design philosophy emphasizes code readability with the use of significant
indentation.
Python is dynamically-typed and garbage-collected. It supports multiple
programming paradigms, including structured (particularly procedural), object-
oriented and functional programming. It is often described as a "batteries
included" language due to its comprehensive standard library. [5]

Django
Django is a free and open-source, Python-based web framework that follows the
model–template–views (MTV) architectural pattern. It is maintained by the
Django Software Foundation (DSF), an independent organization established in
the US as a 501 non-profit.
Django's primary goal is to ease the creation of complex, database-driven
websites. The framework emphasizes reusability and "pluggability" of
components, less code, low coupling, rapid development, and the principle of
don't repeat yourself. Python is used throughout, even for settings, files, and data
models. Django also provides an optional administrative create, read, update and

24
Department of CS&IT
delete interface that is generated dynamically through introspection and
configured via admin models. [6]

HTML
HTML stands for Hyper Text Markup Language, which is the most widely used
language on Web to develop web pages. HTML was created by Berners-Lee in
late 1991 but "HTML 2.0" was the first standard HTML specification which was
published in 1995. HTML 4.01 was a major version of HTML and it was
published in late 1999. Though HTML 4.01 version is widely used but currently
we are having HTML-5 version which is an extension to HTML 4.01, and this
version was published in 2012.
Originally, HTML was developed with the intent of defining the structure of
documents like headings, paragraphs, lists, and so forth to facilitate the sharing
of scientific information between researchers. Now, HTML is being widely used
to format web pages with the help of different tags available in HTML language.
[7]

CSS
Cascading Style Sheets (CSS) is a style sheet language used for describing the
presentation of a document written in a markup language such as HTML or XML
(including XML dialects such as SVG, MathML or XHTML). CSS is a
cornerstone technology of the World Wide Web, alongside HTML and
JavaScript.
CSS is designed to enable the separation of presentation and content, including
layout, colours, and fonts. This separation can improve content accessibility;
provide more flexibility and control in the specification of presentation
characteristics; enable multiple web pages to share formatting by specifying the
relevant CSS in a separate .css file, which reduces complexity and repetition in
the structural content; and enable the .css file to be cached to improve the page
load speed between the pages that share the file and its formatting. [8]

JavaScript
JavaScript often abbreviated JS, is a programming language that is one of the core
technologies of the World Wide Web, alongside HTML and CSS. As of 2022,
98% of websites use JavaScript on the client side for web page behaviour, often
25
Department of CS&IT
incorporating third-party libraries. All major web browsers have a dedicated
JavaScript engine to execute the code on users' devices.
JavaScript is a high-level, often just-in-time compiled language that conforms to
the ECMAScript standard. It has dynamic typing, prototype-based object-
orientation, and first-class functions. It is multi-paradigm, supporting event-
driven, functional, and imperative programming styles. It has application
programming interfaces (APIs) for working with text, dates, regular expressions,
standard data structures, and the Document Object Model (DOM). [9]

Bootstrap
Bootstrap is an HTML, CSS & JS Library that focuses on simplifying the
development of informative web pages (as opposed to web apps). The primary
purpose of adding it to a web project is to apply Bootstrap's choices of colour,
size, font and layout to that project. As such, the primary factor is whether the
developers in charge find those choices to their liking. Once added to a project,
Bootstrap provides basic style definitions for all HTML elements. The result is a
uniform appearance for prose, tables and form elements across web browsers. In
addition, developers can take advantage of CSS classes defined in Bootstrap to
further customize the appearance of their contents. For example, Bootstrap has
provisioned for light- and dark-coloured tables, page headings, more prominent
pull quotes, and text with a highlight. [10]

PyCharm
PyCharm is a dedicated Python Integrated Development Environment (IDE)
providing a wide range of essential tools for Python developers, tightly integrated
to create a convenient environment for productive Python, web, and data science
development. [11]

Google Chrome
Google Chrome is a cross-platform web browser developed by Google. It was
first released in 2008 for Microsoft Windows, built with free software
components from Apple WebKit and Mozilla Firefox. It was later ported to
Linux, macOS, iOS, and Android, where it is the default browser. The browser is
also the main component of Chrome OS, where it serves as the platform for web
applications. We used it to preview the web application that we created. [12]

26
Department of CS&IT
5.3 Installation and execution guidelines
To run the application, we need to have Python version 3 and above installed on
our system. Besides Python, we also need a package manager, in this case Pip in
our system. The package manager will install the required libraries on our system
which are mentioned in the requirements.txt file.
After setting up the requirements, launch the command prompt or bash terminal
and run the project with the command
py manage.py runserver

It is recommended to set up a virtual environment first and then run the project
inside it so that the required libraries do not clutter up anything elses.
The run command will launch the homepage of the Django project in the default
web browser. The page is launched with the address http://127.0.0.1:8000/.
If the web application has been hosted in any online server, then only required
step to run the project is to enter the web address into the web browser of our
choice and it will run without any problem.

5.4Input/output Screen snap Shots

Fig. 5.4.1 Login page with admin credentials

27
Department of CS&IT
Fig. 5.4.2 Admin homepage with administrator controls

Fig. 5.4.3 Page to add teacher

28
Department of CS&IT
5.4.4 Page to add student

Fig. 5.4.5 Dashboard of a student

29
Department of CS&IT
Fig. 5.4.6 Attendance module for student

Fig. 5.4.7 Marks module for student

30
Department of CS&IT
Fig. 5.4.8 Time-table module for student

Fig. 5.4.9 Dashboard of a teacher

31
Department of CS&IT
Fig. 5.4.10 Attendance module for teacher

Fig. 5.4.11 Attendance module for teacher

32
Department of CS&IT
Fig. 5.4.12 Attendance module for teacher

Fig. 5.4.13 Marks module for teacher

33
Department of CS&IT
Fig. 5.4.14 Marks module for teacher

Fig. 5.4.15 Time-table module for teacher

34
Department of CS&IT
Fig. 5.4.16 Report generation module for teacher

35
Department of CS&IT
CHAPTER 6

Testing

36
Department of CS&IT
CHAPTER 6

TESTING

The completion of a system will be achieved only after it has been thoroughly
tested. Though this gives a feel the project is completed, there cannot be any
project without going through this stage. Hence in this stage it is decided whether
the project can undergo the real time environment execution without any break
downs, therefore a package can be rejected even at this stage. [1]

6.1 Testing methods


Software testing methods are traditionally divided into black box testing and
white box testing. These two approaches are used to describe the point of view
that a test engineer takes when designing test cases.
6.1.1 White Box Testing
White box testing, by contrast to black box testing, is when the tester has access
to the internal data structures and algorithms (and the code that implement these).
White box testing methods can also be used to evaluate the completeness of a test
suite that was created with black box testing methods. This allows the software
team to examine parts of a system that are rarely tested and ensures that the most
important function points have been tested.
This project is implemented using python with the Django framework. The code
consists of models and views which can be tested. Models define the tables stored
in SQL and the relationship between the different tables using foreign keys. A
view function, or “view” for short, is simply a Python function that takes a web
request and returns a web response. This response can be the HTML contents of
a Web page, or a redirect, or a 404 error, or an XML document, or an image, etc.
Python also provides a file called test.py where we can write unit tests for the
models and views. This is very useful as it automates the testing and we no longer
have to manually test every page after there were any changes. The python code
is pasted below and each test is explained using comments in the code.

37
Department of CS&IT
Fig. 6.1.1.1 Testing Result

6.1.2 Black Box Testing


Black box testing treats the software as a ”black box,” without any knowledge of
internal implementation. Black box testing methods include: equivalence
partitioning, boundary value analysis, all-pairs testing, fuzz testing, model-based
testing, traceability matrix, exploratory testing and specification-based testing.
We performed black box testing on the teacher page to make sure every page was
working as desired. We took into consideration various test cases and noted down
the results. Below we have recorded various test cases and their respective results
Test Case: 1
Request the attendance page for a teacher with no assigned classes. The web page
loaded with message “Teacher has no classes assigned”.
Test Case: 2
Request the attendance page for a teacher with 1 assigned class.
The web page displayed the assigned class and options to enter attendance and
view the students
Test Case: 3
Request to enter the attendance for an assigned class with one test student.

38
Department of CS&IT
The web page displays the student with his/her details and an option to mark
present or absent. On marking absent, it can be viewed by the student.
Test Case: 4
Request to edit the attendance for an assigned class with one test student.
The student is listed with his/her details and is initially marked as absent from the
previous test.
On marking present, the attendance for that student and can be viewed by the
student.
Test Case: 5
Request to enter the marks for an assigned class with one student
Initially, a list of tests is displays such as internals 1, SEE etc. On selecting one
of internals 1, the teacher can enter the marks for the student out of 20. On
submitting, the status for that test turns green denoting that it has been
successfully entered.
Test Case: 6
Request to edit the marks for an assigned class with one student for each class,
there is a list of tests such as internals 1, SEE etc. As the marks for internals 1
was already entered in the previous test, it is marked green and there is an option
to edit. When editing, the marks already stored is displayed and appropriate
changes can be made and saved.
Test Case: 7
Request to view the student information for an assigned class with no students
The requested page is display with no content and a message stating “This class
has no students assigned”
Test Case: 8
Request to view the student information for an assigned class with 1 student.
The web page is the form of a table with entries for student name, USN and their
attendance percentage, marks in each test including 3 internals, 2 events and 1
SEE. IF the attendance status is below 75%, it is marked in red.
6.1.3 Acceptance Testing
Acceptance testing performed by the customer is known as user acceptance
testing (UAT). Since our project is on college management system, the teachers

39
Department of CS&IT
are a key stakeholder. Hence, it was important to allow the teachers to test the
software and get their approval as they intend to use the software the most.

6.2 Results of testing


After applying various testing methods such as black box testing, white box
testing and acceptance testing, we can conclude that the testing for the software
is completed. To summarize the testing phase, white box testing is done using the
inbuilt feature of Django to apply unit tests to all the components in the software.
After any changes to the software, we can run the tests on the software
automatically and thus we can find and eliminate any bugs or errors in the system
easily instead of performing rigorous manual testing after every change.
In black box testing, we testing all the components and system as a whole. Several
test cases were considered and extensive tests were conducted. The results of
these tests were positive and any errors were fixed during the testing phase.
For acceptance testing, we gave a demonstration of the software to our teacher,
who is a key stake-holder. After several tests and questions, she was content with
results of the tests and software.

40
Department of CS&IT
CHAPTER 7

Conclusion & Future


Work

41
Department of CS&IT
CHAPTER 7

Conclusion and Future Work

By using Existing System accessing information from files is a difficult task and
there is no quick and easy way to keep the records of students and staff. Lack of
automation is also there in the Existing System. The aim of Our System is to
reduce the workload and to save significant staff time.
Tittle of the project as ERP System for Educational Institutions is the system that
deals with the issues related to a particular institution. It is the very useful to the
student as well as the faculties to easy access to finding the details. The college
ERP provides appropriate information to users based on their profiles and role in
the system. This project is designed keeping in view the day-to-day problems
faced by a college system.
The fundamental problem in maintaining and managing the work by the
administrator is hence overcome. Prior to this it was a bit difficult for maintaining
the time table and also keeping track of the daily schedule. But by developing this
web-based application the administrator can enjoy the task, doing it ease and also
by saving the valuable time. The amount of time consumption is reduced and also
the manual calculations are omitted, the reports can be obtained regularly and
also whenever on demand by the user. The effective utilization of the work, by
proper sharing it and by providing the accurate results. The storage facility will
ease the job of the operator. Thus, the system developed will be helpful to the
administrator by easing his/her task.
This System provide the automate admissions no manual processing is required.
This is a paperless work. It can be monitored and controlled remotely. It reduces
the man power required. It provides accurate information always. All years
together gathered information can be saved and can be accessed at any time. The
data which is stored in the repository helps in taking intelligent decisions by the
management providing the accurate results. The storage facility will ease the job
of the operator. Thus, the system developed will be helpful to the administrator
by easing his/her task providing the accurate results. The storage facility will ease
the job of the operator.
This project is successfully implemented with all the features and modules of the
college management system as per requirements.

42
Department of CS&IT
References

[1 "ERP Architecture Design," CourseHero, [Online]. Available:


] https://www.coursehero.com/file/p4e3vmqc/Functional-requirements-Each-
user-shall-be-able-to-view-information-in-the.

[2 S. R. Ahamad, "Studying the Feasibility and Importance of Software


] Testing: An Analysis," Research Gate, 2009.

[3 R. Chauhan, "ERM Systems and their prevalence," Scribd, 2018.


]

[4 "Software Engineering | Architectural Design," 2021. [Online]. Available:


] https://www.geeksforgeeks.org/software-engineering-architectural-design/.

[5 "Python (programming language)," Wikipedia, [Online]. Available:


] https://en.wikipedia.org/wiki/Python_(programming_language).

[6 "Django (web framework)," Wikipedia, [Online]. Available:


] https://en.wikipedia.org/wiki/Django_(web_framework).

[7 "HTML Tutorial," Tutorials Point, [Online]. Available:


] https://www.tutorialspoint.com/html/index.htm#:~:text=HTML%20stands%
20for%20Hyper%20Text,was%20published%20in%20late%201999..

[8 "CSS," Wikipedia, [Online]. Available: https://en.wikipedia.org/wiki/CSS.


]

[9 "JavaScript," Wikipedia, [Online]. Available:


] https://en.wikipedia.org/wiki/JavaScript.

[1 "Bootstrap (front-end framework)," Wikipedia, [Online]. Available:


0] https://en.wikipedia.org/wiki/Bootstrap_(front-end_framework).

[1 "PyCharm," JetBrains, [Online]. Available:


1] https://www.jetbrains.com/help/pycharm/quick-start-guide.html.

[1 "Google Chrome," Wikipedia, [Online]. Available:


2] https://en.wikipedia.org/wiki/Google_Chrome.

[1 F. LastName, Title, Chicago: McGraw Hill, 2002.


3]

43
Department of CS&IT
44
Department of CS&IT

You might also like