DBMS Report
DBMS Report
BACHELOR OF ENGINEERING IN
COMPUTER SCIENCE AND ENGINEERING
by
Dakshath K M. Nikhil K.
(01JST16CS027) (01JST16CS061)
S Anudeep. Samarth P.
(01JST16CS087) (01JST16CS090)
Dr. Manimala S.
Assistant Professor,
Dept.of CS & E,
1
DECLARATION
We Dakshath, Nikhil, Anudeep, Samarth students of 5th Semester B.E ,Computer Sci- ence &
Engineering at JSS Science and Technology University, Mysuru hereby declare that this group
activity was carried out by our group and this report was prepared by us as a part of the
course work CS510- Database Management Systems under the guidance of Prof. Dr.
Manimala S.
2
Abstract
This report specifies the various processes and techniques used in gathering requirements,
designing, implementing and testing for the project on School management system. The
problems regarding the current system in the school were analyzed and noted. This project
aims to solve some of those problems and thus, add more value to the current system. The
requirements were gathered from all the stakeholders and based on that we created a
requirements models and designed the software based on the based. The project was
implemented in the form of a website using Django (python).
Using the various resources and tools we gathered along the way, we implemented the
school ERP system using some features that solve the current problems in the system such
as a provision to edit the attendance and marks before locking it at the end. The software
was also tested using the various testing methods and results were positive.
Thus, the results can be integrated in the current ERP system to improve its working and
solve some of the existing problems.
The most important things in this project is Sql Injection, we implement here prevent of Sql
injection. First of all we encrypted the password, because if any hacker use Sql injection and
become success at any chance he won’t able to see the password. Secoundly we secure the
user page, so that it’s the first option to use sql injection.
Acknowledgment
First, we would like to thank our honorable teacher for Database System Design course.
We would also like to thank our friends who were our backbone and helped us in collecting
the requirements for our project.
At last we would like to thank all the other people who were involved directly or indirectly
in collecting the requirements.
Contents
1 Introduction 6
1.1 Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Definitions, Acronyms, and Abbreviations ................. 7
1.5 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.6 Overview and Restriction . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2 Overall Description 9
2.1 Product Perspective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Product Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 User Classes and Characteristics . . . . . . . . . . . . . . . . . . . . . . . 9
2.4 Operating Environment............................................................................................10
3 Requirements 11
3.1 Expected requirement: Student and staff information............................................11
3.2 Normal requirement: Attendance and marks entry.................................................11
3.3 Exciting requirement: Communication among students and teachers....................11
5 Non-functional requirements 13
5.1 Safety requirements..................................................................................................13
5.2 Security requirements...............................................................................................13
5.3 Software Quality Attributes......................................................................................13
6 System Design 14
6.1 Student......................................................................................................................14
6.2 Teacher......................................................................................................................14
6.3 Administrator............................................................................................................15
6.4 Use Case Diagram.....................................................................................................16
6.5 Class Diagram............................................................................................................17
6.6 Entity Relationship Diagram......................................................................................18
7 Implementation details 19
7.1 Architectural model..................................................................................................19
7.2 Mathematical model.................................................................................................21
8 Modules in the system 23
8.1 Student . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
8.2 Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
8.2.1 Homepage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
8.2.2 Attendance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
8.2.3 Attendance Detail .......................... 23
8.2.4 Marks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
8.2.5 Timetable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.3 Teacher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.3.1 Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.3.2 Homepage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.3.3 Attendance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.3.4 Enter Attendance . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.3.5 Edit Attendance ........................... 25
8.3.6 Extra Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
8.3.7 Student Attendance . . . . . . . . . . . . . . . . . . . . . . . . . . 25
8.3.8 Student Attendance Details . . . . . . . . . . . . . . . . . . . . . 25
8.3.9 Marks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
8.3.10 Enter Marks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
8.3.11 Edit Marks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
8.3.12 Student Marks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
8.3.13 Timetable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
8.3.14 Free teachers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
8.3.15 Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
8.4 Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.1 Identification
The software system being considered for development is referred to as School ERP Sys- tem.
The customer providing specifications for the system are prof.Manimala, prof.Divakar and
students, Department of CSE SJCE. The ultimate customer, or end-user, of the system will be
the teachers and the HoDs of each department in SJCE, Students and Administrators. This is a
new project effort, so the version under development is version 1.0.
1.2 Purpose
The purpose is to design software for school database which contains up to date or accu-
rate information of the school. That should improve efficiency and flexibility of school
record management and to provide a common and or simple platform for everyone to ac-
cess the student’s information. School Automation System consists of different modules
such as student, faculty, admin etc. Our main purpose is to create a software which will
manage the working of these different modules. The interconnectivity among modules
reduces the time to perform different operational task.
1.3 Scope
School management is becoming a very essential component in education in this modern
day age. With the help of School Automation System we can gather all the useful
information needed to the management in few clicks. The School ERP system now
computerizes all the details that are maintained manually. Once the details are fed into the
system or computer there is no need for various persons to deal with separate sections.
Only a person is enough to maintain all the reports and records. The security can also be
given as per the user requirement.
• Department The educational sub bodies of the school, which can offer sev- eral
Programmes and Courses. Each department is managed by a HoD (Head of the
Department)
• CIE Continuous Internal Evaluation, series of examinations con- ducted throughout the
semester to assess the academic per- formance of the student. CIE conducted in the
form of events (Usually 5). Finally, CIE is reduced to a total of 50 marks
• SEE Semester End Examination, conducted at the end of each semester to asses the
academic performance of the student. Conducted for 100 marks and reduced to 50
marks.
1.5 References
• Software Engineering-A Practitioners approach by Roger S Pressman
• Fundamentals of database systems by Ramez Elmarsi and Shamkant Navathe
1.6 Overview and Restriction
This document is for limited release only to personnel working on the project and the
project mentors and reviewers.
Chapter 2 of this document describes the system under development from a holistic point
of view. Functions, characteristics, constraints, assumptions, dependencies, and overall
requirements are defined from the system-level perspective.
Chapter 3 of this document describes the interfaces of the system being developed. They
impose guidelines on the design of the product being developed.
Chapter 4 of this document describes the Functional Requirements of the system being
developed. Functional Requirements are categorized on the basis of System Features. They
are enumerated and described to a degree sufficient for a knowledgeable designer or coder
to begin crafting an architectural solution to the proposed system.
Chapter 5 of this document describes the Non Functional Requirements of the sys- tem
being developed. They are critical for the working for the system. Designer and Imple-
menters should make sure that all the Non Functional Requirements are satisfied.
Appendix A covers the Glossary, which defines some abbreviations and terms used in
document, which are not covered in Introduction.
Appendix B includes all reference models such as Schema Diagram. Designers can refer
Appendix B and craft the software accordingly.
2 Overall Description
2.1 Product Perspective
ERP means the techniques and concepts for integrated management of business as a whole,
from the viewpoint of effective use of management resources to improve the ef- ficiency of
enterprise management. A fully integrated web-based ERP will capture and create accurate,
consistent and timely relevant data, and assist in intelligent business decision-making. The
primary purpose of E-school is to provide mechanisms for au- tomated processing and
management of the entire institution. It reduces data error, ensures that information is
managed efficiently and is always up-to-date. Complete stu- dent histories for all years, can
easily be searched, viewed and reported on press of button.
It is made after extensive study of all the departments like student, faculty, etc of col- leges
and is provided with the extract of everything a school requires for their database handling,
department management and student/staff management. The security issue within ERP has
been there for a long time, but most of the solutions are based on the as- sumption that an
ERP system is a closed environment. Higher education institutions are persisting in the IS
era by adopting and implementing ERP system.The need to evaluate their benefits and
impacts on organizations and individuals are increasingly essential.
• The teachers will be able to apply for various types of leave directly through the system.
• The students will be able to Communicate and provide feedback to their teachers.
• The students will have access to a forum page where they are communicate will each
other.
• The administrator will be able to view and update information such as departments,
classes, teachers, students, courses.
Functional requirements
• Each user shall be able to view information in the database based on their user class.
• The administrator shall be able to view all the information in the database.
Functional requirements
• Teachers shall be able to view, update and edit the attendance and marks of the
students, part of their class.
• Teacher shall be able to take extra classes, switch classes with other teachers.
Functional requirements
• Students shall be able to communicate with their teachers by sends personal mes-
sages.
• Students shall be able to communicate with other students through a forum section.
4 External Interface Requirements
4.1 User Interfaces
The User interface is made using Bootstrap. Firstly, there will be a simple login page
separate for students and teachers. Each student and teacher will have a unique interface.
There will be a fixed sidebar with links to all the modules. The teachers will be able to view
their respective students and update their attendance and marks using an effortless
interface.
• Operating System: We have chosen Windows operating system for its best support
and user-friendliness.
• Django: We have chosen to use Django for the back-end of the website as Django is a
simple python framework and is suitable for beginners.
• Database: We are using SQLite database, which comes as default with Django.
Correctness: The information about attendance and marks must be correct to not feed
wrong information to the users.
portability: The users access the ERP from various platforms such as desktops and mobile
phones. The webapp must be portable to all platforms and the user experience must be
optimal.
6 System Design
Various Design concepts and processes were applied to this project. Following concepts like
separation of concerns, the software is divided into individual modules that are functionally
independent and incorporates information hiding. The software is divided into 3 modules
which are students, teachers and administrators. We shall look at each module in detail.
6.1 Student
Each student belongs to a class identified by semester and section. Each class belongs to a
department and are assigned a set of courses. Therefore, these courses are common to all
students of that class. The students are given a unique username and password to login.
Each of them will have a different view. These views are described below.
• Student information
Each student can view only their own personal information. This includes their
personal details like name, phone no, address etc. Also, they can view the courses
they are enrolled in and the attendance, marks of each of those.
• Attendance information
Attendance for each course will be displayed. This includes the number of attended
classes and the attendance percentage. If the attendance percentage if below a
specified threshold, say 75%, It will be marked in red otherwise it be in green. There
will also be a day wise attendance view for each course which shows the date and
status. This will be presented in a calender format.
• Marks information
There will be 5 events and 1 semester end examination for each course. The marks for
each of these will be provided in the ERP system.
6.2 Teacher
Each teacher belongs to a department and are assigned to classes with a course. Teachers
will also have a username and password to login. The different views for teachers are
described below.
• Information
The teachers will have access to information regarding the courses and classes they
are assigned to. Details of the courses include the credits, the syllabus plan. Details of
the class include the department, semester, section and the list of students in
each class. The teacher will also have access to information of students who belong to
the same class as as the teacher.
• Attendance
The teacher has the ability to add and also edit the attendance of each student. For
entering the attendance, they will be given the list of students in each class and they
can enter the attendance of the whole class on a day to day basis. There will be two
radio buttons next to each student name, one for present and the other for absent.
There will also be an option for extra classes. Teachers can edit the attendance of each
student either for each student individually or for the whole class.
• Marks
The teacher can enter the marks for the 5 events and 1 SEE for each course they are
assigned. They also have the ability to edit the marks in case of any changes. Reports
such as the report card including all the marks and CGPA of a student can be
generated.
6.3 Administrator
The administrator will have access to all the information in the different tables in the
database. They will access to all the tables in a list form. They will be able to add a entry in
any table and also edit them. The design of the view for the admin will provide a modular
interface so that querying the tables will be optimized. They will be provided with search
and filter features so that they can access data efficiently.
6.4 Use Case Diagram
A use case diagram at its simplest is a representation of a user’s interaction with the system
that shows the relationship between the user and the different use cases in which the user
is involved. A use case diagram can identify the different types of users of a system and
the different use cases and will often be accompanied by other types of diagrams as well.
The use cases are represented by either circles or ellipses.
By defining the entities, their attributes, and showing the relationships between them,
an ER diagram illustrates the logical structure of databases. ER diagrams are used to sketch
out the design of a database.
The architecture comprises of various modules as given in the figure. There are 3 major
categories in which the whole architecture is divided. These are administrator, staff and
student. The architecture is designed such a way that it is self explanatory. The admin roles
are user management, staff management, student management, staff attendance. Staff and
admin perform some common functions like news management, leave management, time
table management, exam management.
The role of staff includes student attendance entering, student examination man-
agement, time table management, leave application management, and put on news on e-
notice board. While the roles of students are few in number and includes their complete
Figure 4: architecture
profile viewing, view their attendance, give feedback to their respective faculties, view
notice and view academic time table.
Any Information System needs to communicate with external entities, human users or other
computers. Presentation layer allows these entities to interact with the system; it can also
be implemented as a GUI interface and can be referred to as the client of the IS.
Application layer do more than information delivery, they perform data processing (Busi-
ness Logic and calculation) behind the results being delivered. This tier is often referred as
1.Services
2.Business rules
3.Business logic
4.Servers
The database layer is implemented using a Database Management System which in our case is
MySql.
A change from one state to another when initiated by a triggering event or condition; this is
called a transition. A particular FSM is defined by a list of its states, and the triggering
condition for each transition.
M= (Q, Σ, δ, q0, F)
Q:q0,q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11
E: 1, 2, 3...16
q0: Homepage
F: Homepage
8.1 Student
8.2 Login
Each student in the school is assigned a unique username and password by the admin-
istrator. The username is the same as their USN and so is the password. They may change it
later according to their wish.
8.2.1 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 20 for
3 internal assessments, 2 events. 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.
8.2.2 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 per-
centage 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.
8.2.4 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 3 internal assessments with marks obtained out of a total of 20, 2 events such as
project, assignment, quiz etc., with marks out of 20. Lastly, one semester end exam with
marks out of 100.
8.2.5 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.
8.3 Teacher
8.3.1 Login
Each teacher in the school is assigned a unique username and password by the adminis-
trator. The username is their teacher ID and the same for password. The teacher may
change the password later.
8.3.2 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.
8.3.3 Attendance
There is a list of all the class assigned to teacher. So, for each class there are 3 actions
available. They are,
8.3.9 Marks
On this page, the list of classes assigned to the teacher are displayed along with two actions
for each class. These actions are,
8.3.13 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.
8.3.15 Reports
The last page for the teachers is used to generate reports for each class. The report spec-
ifies 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, 3 internals and 2 events. 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.
8.4 Administrator
The administrator is responsible for adding and maintaining all the departments, stu- dents,
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 get a specific
record based on name or id. Also, it can filter the record based on department, class etc.
9 Screenshots of the implemented system
Title of the project as School ERP System 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 school ERP provides appropriate in- formation 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 school system.
The fundamental problem in maintaining and managing the work by the administra- tor 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 applica- tion 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 accu- rate results. The storage
facility will ease the job of the operator.
This project is successfully implemented with all the features and modules of the school
management system as per requirements.
11 References
1. Elmasri and Navathe: Fundamentals of Database Systems, 7th Edition, Pearson
Education, 2016.
2. Ian Sommerville: Software Engineering, 10th edition, Person Education Ltd, 2015.
3. Roger S Pressman: Software Engineering- A Practitioners approach,8th edition,
McGraw-Hill Publication, 2015.
4. https://en.wikipedia.org/wiki/Requirements-engineering
5. https://web.cs.dal.ca/ hawkey/3130/srs-template-ieee.doc
6. http://www.ntu.edu.sg/home/cfcavallaro/Reports/Report%20writing.htmTop
7. https://en.wikipedia.org/wiki/Class diagram
8. https://www.djangoproject.com/
9. https://getbootstrap.com/
10. https://www.tutorialspoint.com/
11. https://creately.com/
12. https://www.overleaf.com/project