0% found this document useful (0 votes)
635 views63 pages

Danish Project Report

The document is a project report submitted by Mohammad Danish Haseen to the Chhatrapati Shahu Ji Maharaj University for the degree of Bachelor of Computer Application. The project aims to develop a Student Information System under the supervision of Mrs. Ankita Gupta at PSIT College of Higher Education in Kanpur for the academic year 2020-2021. The report includes an introduction to the project, objectives, modules, hardware and software requirements, front-end and back-end descriptions, feasibility study, software development life cycle, data flow diagrams, database design, coding implementation, and screenshots of the project.

Uploaded by

Yash Trivedi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
635 views63 pages

Danish Project Report

The document is a project report submitted by Mohammad Danish Haseen to the Chhatrapati Shahu Ji Maharaj University for the degree of Bachelor of Computer Application. The project aims to develop a Student Information System under the supervision of Mrs. Ankita Gupta at PSIT College of Higher Education in Kanpur for the academic year 2020-2021. The report includes an introduction to the project, objectives, modules, hardware and software requirements, front-end and back-end descriptions, feasibility study, software development life cycle, data flow diagrams, database design, coding implementation, and screenshots of the project.

Uploaded by

Yash Trivedi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 63

Chhatrapati Shahu Ji Maharaj

University
Project Report
on
[STUDENT INFORMATION SYSTEM]

Submitted in Partial Fulfillment of the Requirements for


the Degree of
Bachelors of Computer Application
By:
[MOHAMMAD DANISH HASEEN]
[0202299]

Under the Supervision of


[Mrs. ANKITA GUPTA ]

PSIT College of Higher Education


Kanpur-Agra-Delhi National Highway – 2, Bhauti, Kanpur
(2020-2021)
Certificate
This is to certify that project entitled E-Commerce portal submitted for partial
fulfilment of the degree of BCA under the department of Bachelor of Computer
Application to through PSIT College of Higher Education, Kanpur, done by Mr.
MOHAMMAD DANISH HASEEN, Roll No. 0202299 is an authentic work
carried out by him under my guidance. The matter embodied in this project work
has not been submitted earlier for award of any degree or diploma to the best of my
knowledge and belief.

Internal Examiner/Guide External


Examiner

Head of Department
Declaration
I hereby declare that the project entitled “ Student Information System”
submitted for the Bachelor of Computer Application degree is my original work and
the project has not formed the basis for the award of any other degree of the
university or other institute of higher learning, except where due acknowledgment
has been made.

Signature of the student:

Mohammad Danish Haseen

0202299

BCA

PSIT College of Higher Education,Kanpur


Acknowledgement
I would like to express my special thanks of gratitude to my teacher Mrs.
ANKITA GUPTA as well as HOD Mr. Santosh Kumar Sharma who gave me
the opportunity to do this wonderful project on the topic Student Portal
Management which also helped me in doing a lot of research and I came to know
about so many new things. I am thankful to them.

Secondly, I would also thank my Parents and Friends who helped me a lot in
finalizing this project within the limited time frame.
Abstract
The Student Portal Management is a platform where students will sign up to create
their account on the portal so that they can find their records related to their
academics by signing in-like their attendance percentage,time table,academics
marks and more.

With this help they can easily access their account by signing in
wherever they are.The students can find their latest information daily.
Table of Contents:
S.No Title Page
1.1 Introduction 6-7
1.2 Existing System 7-8
1.3 Problems in Existing System 8
1.4 Proposed System 9-10
1.5 Objective of the Project -
2.1 Modules & Description of the Modules 12-13
2.2 Hardware & Software Requirements 14
2.3 Front end & Back end Description 14-25
3.1 Feasibility Study 25-28
3.2 Software Development Life Cycle 28-29
3.3 Data Flow Diagram 29-33
4.1 ER Diagram(Database Schema Design) 33
4.2 Normalization 33-35
4.3 Screen/Snapshots of the project 35-42
4.4 Coding Implementation References 42-67
Introduction
The “Student Portal Management” has been developed to provide the facility to
know the status of their academics like their attendeance update.This platform will
provide option for faculty also to make some changes related to the student records.

Any platform whether it is big or small,have some challenges to


overcome.Here the records of students have been managed.This system is designed
for both students and faculty.
Existing System
Existing system of system of project management is manual. Project coordinator or
guide gives task for student manually. Student complete the work which is given by
coordinator or guide and submits manually, in this system all work is done by
manually so it can take more time to complete project related work. Project
coordinator or guide requires remembering in mind when student completed the
work so it is difficult for Project coordinator or guide which student completed the
task and when. In the existing system does not help users to get right information at
right time and user cannot manage project development easily to achieve the main
goal.

Limitation of Existing System:

1. It is time consuming.
2. Right information is not retreived at right time.
3. Any updates to the data by team members or the project coordinator or guide
cannot see immediately by the rest of the team.
4. All work is done manually.

Problems in Existing System


Educational institutions are burdened by cumbersome paperwork and manual processes, and they
find it difficult to maintain records on attendance, fees, admissions, transport, etc., and track the
information they need. Using student portal Management System, automate academic processes to
save time and reduce staff workload.
Proposed System
Without a Student information System, managing and maintaining the details of the
student is a tedious job for any organization. Student Information system will store
all the details of the students including their background information, educational
qualifications, personal details and all the information related to their resume.

Objective of the Project


The main objective of the Student Management System is to manage the details of
Profiles, Cources, Logins, Exams, Fees. It manages all the information about Profiles,

Student, Fees, Profiles.


Modules & description of Modules
Functional Requirements:
The functional requirements specify relationship between the inputs and outputs. All
the operations to be performed on the input data to obtain output are to be specified.
This includes specifying the validity checks on the input and output data, parameters
affected by the operations and the other operations, which must be used to transform
the inputs into outputs. Functional requirements specify the behaviors of the system
for valid input and output.

Modules:

• Admin Module
• Student Module
• Department Module
• Course Module

Admin Module:
This module provides administrator related functionality like from this module
Admin can add student related information, like their personal details, exam
calendar,result, and all the important information.

Student Module:
In Student module, the profile of Student, their personal details like name,
dob ,gender ,class, rollno , etc..And their academic details. It will be operated by the
database means the information provided by user at registration time will be shown.

Department Module:
In department module, information about various department in Institute is store.
Admin can Store and update the data .Students can only view.

Course Module:
A course module represents each of the activities and resources found in a course.

Hardware & Software Requirements


Software:
A set of instructions that drives computer to do stipulated tasks is called a program.
Software instructions are programmed in a computer language, translated into
machine language, and executed by computer.

• Operating System:Windows 8 & 10  Software:


• Operating System:Windows 10
• Front -End:HTML,CSS
• Back-End:PHP,MySQL

Hardware:
The term hardware refers to mechanical device that makes up computer. Computer
hardware consists of interconnected electronic devices that we can use to control
computer ‘s operation, input and output. Examples of hardware are CPU, keyboard,
mouse, hard disk, etc.

• Processor:Intel Core i3
• Disk Space:1TB
• Keyboard:Normal or Multimedia
• Mouse:Compatible mouse
• Monitor:LED

Front end & Back end Description


HTML:
HTML stands for Hypertext Markup Language which used to define the structure of
web page. To understand "HTML" from front to back, let's look at each word that
makes up the abbreviation:

HTML tutorial or HTML 5 tutorial provides basic and advanced concepts of HTML. Our HTML
tutorial is developed for beginners and professionals. In our tutorial, every topic is given step-by-
step so that you can learn it in a very easy way. If you are new in learning HTML, then you can
learn HTML from basic to a professional level and after learning HTML with CSS and JavaScript
you will be able to create your own interactive and dynamic website. But Now We will focus on
HTML only in this tutorial.
The major points of HTML are given below:

o HTML stands for HyperText Markup Language.


o HTML is used to create web pages and web applications. o HTML is widely used
language on the web. o We can create a static website by HTML only. o Technically,
HTML is a Markup language rather than a programming language.

HTML Example with HTML Editor


In this tutorial, you will get a lot of HTML examples, at least one example for each topic with
explanation. You can also edit and run these examples, with our online HTML editor. Learning
HTML is fun, and it's very easy to learn.

50.7M

1K

Exception Handling in Java - Javatpoint

1. <!DOCTYPE>
2. <html>
3. <head>
4. <title>Web page title</title>
5. </head>
6. <body>
7. <h1>Write Your First Heading</h1>
8. <p>Write Your First Paragraph.</p>
9. </body>
10. </html>

Hypertext: text (often with embeds such as images, too) that is organized in order
to connect related items.

Markup: a style guide for typesetting anything to be printed in hard copy or soft
copy format.

Language: : a language that a computer system understands and uses to interpret


command.

The first version of HTML was written by Tim Berners-Lee in 1993. Since then,
there have been many different versions of HTML. The most widely used version
throughout the 2000's was HTML 4.01, which became an official standard in
December 1999.

PHP:
The term PHP is an acronym for PHP: Hypertext Preprocessor. PHP is a server-side
scripting language designed specifically for web development. It is open-source
which means it is free to download and use. It is very simple to learn and use. The
files have the extension “.php”.

Rasmus Lerdorf inspired the first version of PHP and participating in the later
versions. It is an interpreted language and it does not require a compiler.

PHP is an open-source, interpreted, and object-oriented scripting language that can be executed at
the server-side. PHP is well suited for web development. Therefore, it is used to develop web
applications (an application that executes on the server and generates the dynamic page.).

PHP was created by Rasmus Lerdorf in 1994 but appeared in the market in 1995. PHP 7.4.0 is the
latest version of PHP, which was released on 28 November. Some important points need to be
noticed about PHP are as followed:

48.8M

957

C++ vs Java

o PHP stands for Hypertext Preprocessor. o PHP is an interpreted


language, i.e., there is no need for compilation. o PHP is faster than
other scripting languages, for example, ASP and JSP.
o PHP is a server-side scripting language, which is used to manage the
dynamic content of the website.
o PHP can be embedded into HTML. o PHP is an object-oriented language.
o PHP is an open-source scripting language. o PHP is simple and
easy to learn language.

Why use PHP


PHP is a server-side scripting language, which is used to design the dynamic web applications

with MySQL database. o It handles dynamic content, database as well as session tracking for the website.
o You can create sessions in PHP. o It can access cookies variable and also set cookies. o It helps to encrypt

the data and apply validation. o PHP supports several protocols such as HTTP, POP3, SNMP, LDAP,
IMAP, and many more. o Using PHP language, you can control the user to access some pages of your

website.

o As PHP is easy to install and set up, this is the main reason why PHP is the best language to learn.
o PHP can handle the forms, such as - collect the data from users using forms, save it into the
database, and return useful information to the user. For example - Registration form.

PHP Features
PHP is very popular language because of its simplicity and open source. There are some important
features of PHP given below:

Performance:

PHP script is executed much faster than those scripts which are written in other languages such as
JSP and ASP. PHP uses its own memory, so the server workload and loading time is automatically
reduced, which results in faster processing speed and better performance.

Open Source:

PHP source code and software are freely available on the web. You can develop all the versions of
PHP according to your requirement without paying any cost. All its components are free to
download and use.

Familiarity with syntax:

PHP has easily understandable syntax. Programmers are comfortable coding with it.

Embedded:

PHP code can be easily embedded within HTML tags and script.

Platform Independent:

PHP is available for WINDOWS, MAC, LINUX & UNIX operating system. A PHP application
developed in one OS can be easily executed in other OS also.

Database Support:

PHP supports all the leading databases such as MySQL, SQLite, ODBC, etc.

Error Reporting -

PHP has predefined error reporting constants to generate an error notice or warning at runtime.
E.g., E_ERROR, E_WARNING, E_STRICT, E_PARSE.

Loosely Typed Language:


PHP allows us to use a variable without declaring its datatype. It will be taken automatically at the
time of execution based on the type of data it contains on its value.

Web servers Support:

PHP is compatible with almost all local servers used today like Apache, Netscape, Microsoft
IIS, etc.

Security:

PHP is a secure language to develop the website. It consists of multiple layers of security to
prevent threads and malicious attacks.

Control:

Different programming languages require long script or code, whereas PHP can do the same work
in a few lines of code. It has maximum control over the websites like you can make changes easily
whenever you want.

A Helpful PHP Community:

It has a large community of developers who regularly updates documentation, tutorials, online
help, and FAQs. Learning PHP from the communities is one of the significant benefits.

Web Development
PHP is widely used in web development nowadays. PHP can develop dynamic websites easily.

CSS:
Cascading Style Sheets, fondly referred to as CSS, is a simple design language
intended to simplify the process of making web pages presentable.

CSS handles the look and feel part of a web page. Using CSS, you can control the
color of the text, the style of fonts, the spacing between paragraphs, how columns
are sized and laid out, what background images or colors are used, layout designs,
variations in display for different devices and screen sizes as well as a variety of
other effects.

CSS tutorial or CSS 3 tutorial provides basic and advanced concepts of CSS technology. Our CSS
tutorial is developed for beginners and professionals. The major points of CSS are given below:

o CSS stands for Cascading Style Sheet. o CSS is used to design HTML
tags. o CSS is a widely used language on the web.
o HTML, CSS and JavaScript are used for web designing. It helps the web
designers to apply style on HTML tags.

CSS Example with CSS Editor


In this tutorial, you will get a lot of CSS examples, you can edit and run these examples with our
online CSS editor tool.

1. <!DOCTYPE>
2. <html>
3. <head>
4. <style>
5. h1{
6. color:white;
7. background-color:red;
8. padding:5px;
9. }
10. p{
11. color:blue;
12. }
13. </style>
14. </head>
15. <body>
16. <h1>Write Your First CSS Example</h1>
17. <p>This is Paragraph.</p>
18. </body>
19. </html>

JavaScript:
htweight, cross-platform, and interpreted scripting language. It is well- known for
the development of web pages, many non-browser environments also use it.
JavaScript can be used for client side developments as well aa server side
developments.

It was created in 1995 by Brendan Eich while he was an engineer at Netscape. It


was originally going to be named Live Script but was renamed.

JavaScript contains a standard library of objects, like Array, Date, and Math, and a
core set of language elements like operators, control structures, and statements.
JavaScript (js) is a light-weight object-oriented programming language which is used by several
websites for scripting the webpages. It is an interpreted, full-fledged programming language that
enables dynamic interactivity on websites when applied to an HTML document. It was introduced
in the year 1995 for adding programs to the webpages in the Netscape Navigator browser. Since
then, it has been adopted by all other graphical web browsers. With JavaScript, users can build
modern web applications to interact directly without reloading the page every time. The traditional
website uses js to provide several forms of interactivity and simplicity.

49.6M

1.1K

Features of Java - Javatpoint

Although, JavaScript has no connectivity with Java programming language. The name was
suggested and provided in the times when Java was gaining popularity in the market. In addition
to web browsers, databases such as CouchDB and MongoDB uses JavaScript as their scripting and
query language.

Features of JavaScript
There are following features of JavaScript:

1. All popular web browsers support JavaScript as they provide built-in execution environments.
2. JavaScript follows the syntax and structure of the C programming language. Thus, it is a structured
programming language.
3. JavaScript is a weakly typed language, where certain types are implicitly cast (depending on the
operation).
4. JavaScript is an object-oriented programming language that uses prototypes rather than using
classes for inheritance.
5. It is a light-weighted and interpreted language.
6. It is a case-sensitive language.
7. JavaScript is supportable in several operating systems including, Windows, macOS, etc.
8. It provides good control to the users over the web browsers.

History of JavaScript
In 1993, Mosaic, the first popular web browser, came into existence. In the year 1994, Netscape
was founded by Marc Andreessen. He realized that the web needed to become more dynamic.
Thus, a 'glue language' was believed to be provided to HTML to make web designing easy for
designers and part-time programmers. Consequently, in 1995, the company recruited Brendan
Eich intending to implement and embed Scheme programming language to the browser. But,
before Brendan could start, the company merged with Sun Microsystems for adding Java into its
Navigator so that it could compete with Microsoft over the web technologies and platforms. Now,
two languages were there: Java and the scripting language. Further, Netscape decided to give a
similar name to the scripting language as Java's. It led to 'Javascript'. Finally, in May 1995, Marc
Andreessen coined the first code of Javascript named 'Mocha'. Later, the marketing team replaced
the name with 'LiveScript'. But, due to trademark reasons and certain other reasons, in December
1995, the language was finally renamed to 'JavaScript'. From then, JavaScript came into existence.

Application of JavaScript
JavaScript is used to create interactive websites. It is mainly used for:

o Client-side validation, o Dynamic drop-down menus, o Displaying date and time, o


Displaying pop-up windows and dialog boxes (like an alert dialog box, confirm dialog box and
prompt dialog box), o Displaying clocks etc.

JavaScript Example
1. <script>
2. document.write("Hello JavaScript by JavaScript");
3. </script>

MySQL:
MySQL is an open-source relational database management system that works on
many platforms. It provides multi-user access to support many storage engines and
is backed by Oracle.It also allows implementing a database in computer systems,
managing users, database integrity testing, and backup creation.

MySQL is compliant with the ANSI SQL standard. It was first released in 1995. It is
developed, distributed, and supported by Oracle Corporation. It is named after
cofounder Monty Widenius's daughter.

SQL is a short-form of the structured query language, and it is pronounced as S-Q-L or sometimes
as See-Quell.

This database language is mainly designed for maintaining the data in relational database
management systems. It is a special tool used by data professionals for handling structured data
(data which is stored in the form of tables). It is also designed for stream processing in RDSMS.

You can easily create and manipulate the database, access and modify the table rows and columns,
etc. This query language became the standard of ANSI in the year of 1986 and ISO in the year of
1987.

If you want to get a job in the field of data science, then it is the most important query language to
learn. Big enterprises like Facebook, Instagram, and LinkedIn, use SQL for storing the data in the
back-end.
Why SQL?
Nowadays, SQL is widely used in data science and analytics. Following are the reasons which
explain why it is widely used:

o The basic use of SQL for data professionals and SQL users is to insert, update, and delete the data
from the relational database.
o SQL allows the data professionals and users to retrieve the data from the relational database
management systems.
o It also helps them to describe the structured data.
o It allows SQL users to create, drop, and manipulate the database and its tables. o It also helps in

creating the view, stored procedure, and functions in the relational database. o It allows you to

define the data and modify that stored data in the relational database.

o It also allows SQL users to set the permissions or constraints on table columns, views, and stored
procedures.

History of SQL
"A Relational Model of Data for Large Shared Data Banks" was a paper which was published by
the great computer scientist "E.F. Codd" in 1970.

The IBM researchers Raymond Boyce and Donald Chamberlin originally developed the SEQUEL
(Structured English Query Language) after learning from the paper given by E.F. Codd. They both
developed the SQL at the San Jose Research laboratory of IBM Corporation in 1970.

At the end of the 1970s, relational software Inc. developed their own first SQL using the concepts
of E.F. Codd, Raymond Boyce, and Donald Chamberlin. This SQL was totally based on RDBMS.
Relational Software Inc., which is now known as Oracle Corporation, introduced the Oracle V2 in
June 1979, which is the first implementation of SQL language. This Oracle V2 version operates
on VAX computers.

Process of SQL
When we are executing the command of SQL on any Relational database management system,
then the system automatically finds the best routine to carry out our request, and the SQL engine
determines how to interpret that particular command.

Structured Query Language contains the following four components in its process:

o Query Dispatcher o
Optimization Engines
o Classic Query Engine o
SQL Query Engine,
etc.

A classic query engine allows data professionals and users to maintain non-SQL queries. The
architecture of SQL is shown in the following diagram:

Some SQL Commands


The SQL commands help in creating and managing the database. The most common SQL
commands which are highly used are mentioned below:

1. CREATE command
2. UPDATE command
3. DELETE command
4. SELECT command 5. DROP command
6. INSERT command

CREATE Command
This command helps in creating the new database, new table, table view, and other objects of the
database.

UPDATE Command
This command helps in updating or changing the stored data in the database.

DELETE Command
This command helps in removing or erasing the saved records from the database tables. It erases
single or multiple tuples from the tables of the database.

SELECT Command
This command helps in accessing the single or multiple rows from one or multiple tables of the
database. We can also use this command with the WHERE clause.

DROP Command
This command helps in deleting the entire table, table view, and other objects from the database.

INSERT Command
This command helps in inserting the data or records into the database tables. We can easily insert
the records in single as well as multiple rows of the table.
Feasibility Study
After doing the project E-Commerce Portal, study and analyzing all the existing and
required functionalities of the system, the next task is to do feasibilityfor the project.
All project are feasible given unlimited resources and in finite times.

Feasibility study include consideration of all the possible ways to provide a solution
to the given problem. The proposed solution should satisfy all the user requirements
and should be flexible enough so that future changes can be easily done based on
the future upcoming requirements. Before getting started on your implementation,
take a step back to figure out if your company can make the software project a
success. Below, we detail the requirements and benefits of performing a feasibility
study.

Types of Feasibility Study:


• Technical feasibility
• Economic Feasibility
• Legal Feasibility
• Operational Feasibility
• Scheduling Feasibility
• Behavioral Feasibility

Technical Feasibility:
Technical feasibility canters on the existing manual system of the test management
process and to what extent it can support the system. According to feasibility
analysis procedure the technical feasibility of the system is analyzed and the
technical requirements such as software facilities, procedure, inputs are identified. It
is also one of the important phases of the system development activities. The system
offers greater levels of user friendliness combined with greater processing speed.
Therefore, the cost of maintenance can be reduced. Since, processing speed is very
high and the work is reduced in the maintenance point of view management
convince that the project is operationally feasible.

Economic Feasibility:
Economic analysis is most frequently used for evaluation of the effectiveness of the
system. More commonly known as cost/benefit analysis the procedure is to
determine the benefit and saving that are expected from system and compare them
with costs, decisions is made to design and implement the system. This part of
feasibility study gives the top management the economic justification for the new
system. This is an important input to the management the management, because
very often the top management does not like to get confounded by the various
technicalities that bound to be associated with a project of this kind. A simple
economic analysis that gives the actual comparison of costs and benefits is much
more meaningful in such cases. In the system, the organization is most satisfied by
economic feasibility. Because, if the organization implements this system, it need
not require any additional hardware resources as well as it will be saving lot of time.

Legal Feasibility:
This assessment investigates whether any aspect of the proposed project conflicts
with legal requirements like zoning laws, data protection acts or social media laws.
Let’s say an organization wants to construct a new office building in a specific
location. A feasibility study might reveal the organization’s ideal location isn’t
zoned for that type of business.

Operational Feasibility:
This assessment involves undertaking a study to analyze and determine whether—
and how well—the organization’s needs can be met by completing the project.

Operational feasibility studies also examine how a project plan satisfies the
requirements identified in the requirements analysis phase of system development.

Scheduling Feasibility:
This assessment is the most important for project success; after all, a project will fail
if not completed on time. In scheduling feasibility, an organization estimates how
much time the project will take to complete.

Behavioral Feasibility:
People are inherently resistant to change and computer has been known to facilitate
changes. An estimate should be made of how strong the user is likely to move
towards the development of computerized system. These are various levels of users
in order to ensure proper authentication and authorization and security of sensitive
data of the organization.

There are some points those are important:

• Identifying new ideas in our project


• Provide valuable information
• Identifying the constraints and problems
• Enhance the success rate

Software Development Life Cycle


The SDLC process provides Information Technology (IT) project managers with the
tools to help ensure successful implementation of systems or applications that
satisfy strategic and business objectives. SDLC documentation provides a
mechanism to ensure that executive leadership, functional managers, and users sign-
off on the requirements and implementation of the system.

The process provides management with the capability to design, develop, and
implement an intended system and ensure that its completed on time delivery and
within budget. The software development life cycle process includes multiple
phases from the project viability determined in the Concept / Initiation Phase
through the Project Closure / Maintenance Phase of the completed system or
application.

Software Development Process Model:


Currently various models are used in the SDLC process. These models include, but
are not limited to;

• Waterfall
• Agile
• Prototyping
• Iterative and Incremental
• Rapid Application Development(RAD)
• Big Bang

The best-known and oldest is called the waterfall model.

Data Flow Diagram


A design specification describes the detailed operation and attributes of a system
and is used as the basis of the design concept. With small designs, developing a
clear and concise design specification is a relatively straightforward task. However,
as designs become more complex, with increased functionality and more customer
requirements, then the task of writing a design specification becomes more
complex.

Design Specifications describe how a system performs the requirements outlined in


the Functional Requirements. Depending on the system, this can include
instructions on testing specific requirements, configuration settings, or review of
functions or code. All requirements outlined in the functional specification should
be addressed; linking requirements between the functional requirements and design
specification is performed.
Different Levels in Data Flow Diagram:
In Software engineering DFD (data flow diagram) can be drawn to represent the
system of different levels of abstraction. Higher level DFDs are partitioned into low
levels-hacking more information and functional elements. Levels in DFD are
numbered 0, 1, 2 or beyond. Here, we will see mainly 3 levels in data flow diagram,
which are: 0-level DFD, 1-level DFD, and 2-level DFD.

0-Level DFD:
The 0 level dfd known as context level data flow diagram. The context level data flow diagram (dfd) is
describe the whole system. The (o) level dfd describe the all user modules who run the system. Below
context level data flow diagram of Student management system project shows the one Admin user can
operate the system. Admin do all activities after login to system.

Data Flow – Data flow are pipelines through the packets of information flow.

Process : A Process or task performed by the system.

Entity : Entity are object of the system. A source or destination data of a system.

Data Store : A place where data to be stored.

0 Level DFD for student


management system project

It is also known as context diagram. It’s designed to be an abstraction view,


showing the system as a single process with its relationship to external entities. It
represents the entire system as single bubble with input and output data indicated by
incoming/outgoing arrows.
1-Level DFD:
The Admin side DFD describe the functionality of Admin. Admin is a responsible person who run the
project. After login to system admin can first Add Course Detail and Teacher Detail and then add
student detail by course wise. and admin can manage student reports and fees payment detail.

In 1-level DFD, context diagram is decomposed into multiple bubbles/processes.in


this level we highlight the main functions of the system and breakdown the
highlevel process of 0-level DFD into subprocesses.

2-Level DFD:
2-level DFD goes one step deeper into parts of 1-level DFD. It can be used to plan
or record the specific/necessary detail about the system’s functioning.

Types of DFD:
Logical DFD:

Logical data flow diagram mainly focuses on the system process. It illustrates how
data flows in the system. Logical DFD is used in various organizations for the
smooth running of system. Like in a Banking software system, it is used to describe
how data is moved from one entity to another.

Physical DFD:

Physical data flow diagram shows how the data flow is actually implemented in the
system. Physical DFD is more specific and closer to implementation.

Importance of Data Flow Diagram:


Data flow diagram is a simple formalism to represent the flow of data in the system.
It allows a simple set of intuitive concepts and rules. It is an elegant technique that
is useful to represent the results of structured analysis of software problem as well
as to represent the flow of documents in an organization. A data flow diagram
(DFD) is a significant modelling technique for analyzing and SHOPPING STORE
26 constructing information processes.

Components of Data Flow Diagram:

• Entities:
An external entity can represent a human, system or subsystem. It is where certain data comes from
or goes to. It is external to the system we study, in terms of the business process. For this reason,
people used to draw external entities on the edge of a diagram.

• Process:
A process is a business activity or function where the manipulation and transformation of data
take place. A process can be decomposed to a finer level of details, for representing how data is
being processed within the process.

• Data Flow:
A data flow represents the flow of information, with its direction represented by an arrowhead
that shows at the end(s) of flow connector.

• Data Store:
A data store represents the storage of persistent data required and/or produced by the process.
Here are some examples of data stores: membership forms, database tables, etc.

Normalization
o Normalization is the process of organizing the data in the database.
o Normalization is used to minimize the redundancy from a relation or set of relations. It is
also used to eliminate undesirable characteristics like Insertion, Update, and Deletion
Anomalies. o Normalization divides the larger table into smaller and links them using
relationships.
o The normal form is used to reduce redundancy from the database table.

Why do we need Normalization?

The main reason for normalizing the relations is removing these anomalies. Failure to eliminate
anomalies leads to data redundancy and can cause data integrity and other problems as the database
grows. Normalization consists of a series of guidelines that helps to guide you in creating a good
database structure.

Advantages of Normalization:
o Normalization helps to minimize data redundancy.
o Greater overall database organization. o Data consistency within the database. o Much
more flexible database design. o Enforces the concept of relational integrity.

Disadvantages of Normalization:
o You cannot start building the database before knowing what the user needs.
o The performance degrades when normalizing the relations to higher normal forms, i.e.,
4NF, 5NF. o It is very time-consuming and difficult to normalize relations of a higher
degree. o Careless decomposition may lead to a bad database design, leading to serious
problems.

Types of Normalization:

1 Normal Form(NF):

o A relation will be 1NF if it contains an atomic value.


o It states that an attribute of a table cannot hold multiple values. It must hold only single-
valued attribute. o First normal form disallows the multi-valued attribute, composite
attribute, and their combinations.

Example: Relation EMPLOYEE is not in 1NF because of multi-valued attribute EMP_PHONE.

2 Normal Form(2NF):

o In the 2NF, relational must be in 1NF.


o In the second normal form, all non-key attributes are fully functional dependent on the
primary key

Example: Let's assume, a school can store the data of teachers and the subjects they teach. In a
school, a teacher can teach more than one subect.

3 Normal Form(3NF):
o A relation will be in 3NF if it is in 2NF and not contain any transitive partial dependency.
o 3NF is used to reduce the data duplication. It is also used to achieve the data integrity. o If
there is no transitive dependency for non-prime attributes, then the relation must be in third
normal form.

A relation is in third normal form if it holds atleast one of the following conditions for every non-
trivial function dependency X → Y.
1. X is a super key.
2. Y is a prime attribute, i.e., each element of Y is part of some candidate key.

ER Diagram
An Entity–relationship model (ER model) describes the structure of a database with
the help of a diagram, which is known as Entity Relationship Diagram (ER
Diagram). An ER model is a design or blueprint of a database that can later be
implemented as a database. The main components of E-R model are: entity set and
relationship set. An ER diagram shows the relationship among entity sets. An entity
set is a group of similar entities and these entities can have attributes. In terms of
DBMS, an entity is a table or attribute of a table in database, so by showing
relationship among tables and their attributes, ER diagram shows the complete
logical structure of a database.

ER Diagrams are most often used to design or debug relational databases in the
fields of software engineering, business information systems, education and
research. Also known as ERDs or ER Models, they use a defined set of symbols
such as rectangles, diamonds, ovals and connecting lines to depict the
interconnectedness of entities, relationships and their attributes.

Components of ER Diagram:

• Entity:
An entity is an object or component of data. An entity is represented as rectangle in an ER diagram.
A definable thing—such as a person, object, concept or event that can have data stored about it.
Think of entities as nouns. Examples: a customer, student, car or product.

• Weak Entity:
An entity that cannot be uniquely identified by its own attributes and relies on the relationship with
other entity is called weak entity. The weak entity is represented by a double rectangle. For example
– a bank account cannot be uniquely identified without knowing the bank to which the account
belongs, so, bank account is a weak entity.

• Attribute:
An attribute describes the property of an entity. An attribute is represented as Oval in an ER
diagram.

• Key Attribute:
Akey attribute can uniquely identify an entity from an entity set.

• Composite Attribute:
An attribute that is a combination of other attributes is known as composite attribute.

• Multivalued Attribute:
n attribute that can hold multiple values is known as multivalued attribute. It is represented with
double ovals in an ER Diagram.

• Derived Attribute:
Aderived attribute is one whose value is dynamic and derived from another attribute. It is
represented by dashed oval in an ER Diagram.

• Relatioship:
Arelationship is represented by diamond shape in ER diagram, it shows the relationship among
entities. There are four types of relationships:
• One to One:
When a single instance of an entity is associated with a single instance of anotherentity then it is
called one to one relationship.
• One to Many:
When a single instance of an entity is associated with more than one instancesof another entity then
it is called one to many relationships.
• Many to One:
When more than one instances of an entity is associated with a single instance ofanother entity then
it is called many to one relationship.
• Many to Many:
When more than one instances of an entity is associated with more than oneinstances of another
entity then it is called many to many relationship.

• Total Participation:
ATotal participation of an entity set represents that each entity in entity setmust have at least one
relationship in a relationship set. Each entity in the entity set must participate in the relationship.

• Partial Participation:
The entity in the entity set may or may NOT participate in the relationship.
login.php

<!DOCTYPE html>

<html>

<head>

<title>Login Page</title>

<link rel="stylesheet" type="text/css" href="bootstrap-


4.4.1/css/bootstrap.min.css">
<script type="text/javascript"
src="bootstrap4.4.1/js/juqery_latest.js"></script>

<script type="text/javascript" src="bootstrap-


4.4.1/js/bootstrap.min.js"></script>

</head>

<body>

<center><br><br>

<h3>Student Management System</h3><br>

<form action="" method="POST">

<input type="submit" name="admin_login" value="Admin


Login" required>

<input type="submit" name="student_login" value="Student Login"


required>

</form>

<?php

if(isset($_POST['admin_login'])){

header("Location: admin_login.php"); }

if(isset($_POST['student_login'])){

header("Location: student_login.php");

?>

</center>

</body>
</html>

Admin_login

<!DOCTYPE html>

<html>

<head>

<title>Admin Login</title>

<link rel="stylesheet" type="text/css" href="bootstrap-


4.4.1/css/bootstrap.min.css">

<script type="text/javascript"
src="bootstrap4.4.1/js/juqery_latest.js"></script>

<script type="text/javascript" src="bootstrap-


4.4.1/js/bootstrap.min.js"></script>

</head>

<body>

<center><br><br>

<h3>Admin LogIn Page</h3><br>

<form action="" method="post">

Email ID: <input type="text" name="email"


required><br><br>

Password: <input type="password" name="password"


required><br><br>

<input type="submit" name="submit" value="LogIn">

</form><br>
<?php

session_start();

if(isset($_POST['submit'])){

$connection =
mysqli_connect("localhost","root","");

$db = mysqli_select_db($connection,"sms");

$query = "select * from login where email =


'$_POST[email]'";

$query_run = mysqli_query($connection,$query);

while ($row = mysqli_fetch_assoc($query_run)) {

if($row['email'] == $_POST['email']){

if($row['password'] ==
$_POST['password']){

$_SESSION['name'] =
$row['name'];

$_SESSION['email'] =
$row['email'];

header("Location:
admin_dashboard.php");

else{

?>

<span>Wrong Password
!!</span>

<?php
}

?>

</center>

</body>

</html>

Admin_dashboard

<!DOCTYPE html>

<html>

<head>

<title>Admin Dashboard</title>

<link rel="stylesheet" type="text/css" href="bootstrap-


4.4.1/css/bootstrap.min.css">

<script type="text/javascript"
src="bootstrap4.4.1/js/juqery_latest.js"></script>

<script type="text/javascript" src="bootstrap-


4.4.1/js/bootstrap.min.js"></script>

<style type="text/css">

#header{

height: 10%;
width: 100%;

top: 2%;

background-color:

black; position: fixed;

color: white;

#left_side{

height: 75%;

width: 15%;

top: 10%; position: fixed;

#right_side{

height: 75%;

width: 80%;

background-color: whitesmoke;

position: fixed; left:

17%; top: 21%;

color: red;

border: solid 1px black;

#top_span{

top: 15%;
width: 80%;

left: 17%;

position: fixed;

#td{

border: 1px solid black;

padding-left: 2px; text-

align: left;

width: 200px;

</style>

<?php

session_start();

$name = "";

$connection = mysqli_connect("localhost","root","");

$db = mysqli_select_db($connection,"sms");

?>

</head>

<body>

<div id="header"><br>

<center>Student Management System


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Email: <?php echo
$_SESSION['email'];?>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Name:<?php echo $_SESSION['name'];?>

<a href="logout.php">Logout</a>

</center>

</div>

<span id="top_span"><marquee>Note:- This portal is open till 31


March 2020...Plz edit your information, if wrong.</marquee></span>

<div id="left_side">

<br><br><br>

<form action="" method="post">

<table>

<tr>

<td>

<input type="submit"
name="search_student" value="Search Student">

</td>

</tr>

<tr>

<td>

<input type="submit"
name="edit_student" value="Edit Student">

</td>

</tr>

<tr>
<td>

<input type="submit" name="add_new_student" value="Add New


Student">

</td>

</tr>

<tr>

<td>

<input type="submit" name="delete_student" value="Delete Student">

</td>

</tr>

<tr>

<td>

<input type="submit" name="show


teacher" value="Show Teachers">

</td>

</tr>

</table>

</form>

</div>

<div id="right_side"><br><br>

<div id="demo">

<!-- #Code for search student---Start-->

<?php
if(isset($_POST['search_student']))

?>

<center>

<form action="" method="post">

&nbsp;&nbsp;<b>Enter Roll
No:</b>&nbsp;&nbsp; <input type="text" name="roll_no">

<input type="submit"
name="search_by_roll_no_for_search" value="Search">

</form><br><br>

<h4><b><u>Student's
details</u></b></h4><br><br>

</center>

<?php

if(isset($_POST['search_by_roll_no_for_search']))

$query = "select * from students where roll_no = '$_POST[roll_no]'";

$query_run =
mysqli_query($connection,$query);

while ($row =
mysqli_fetch_assoc($query_run))

?>
<table>

<tr>

<td>

<b>Roll No:</b>

</td>

<td>

<input type="text" value="<?php echo $row['roll_no']?>" disabled>

</td>

</tr>

<tr>

<td>

<b>Name:</b>

</td>

<td>

<input type="text"
value="<?php echo $row['name']?>" disabled>

</td>

</tr>

<tr>

<td>

<b>Father's
Name:</b>

</td>
<td>

<input type="text"
value="<?php echo $row['father_name']?>" disabled>

</td>

</tr>

<tr>

<td>

<b>Class:</b>

</td>

<td>

<input type="text"
value="<?php echo $row['class']?>" disabled>

</td>

</tr>

<tr>

<td>

<b>Mobile:</b>

</td>

<td>

<input type="text"
value="<?php echo $row['mobile']?>" disabled>

</td>

</tr>
<tr>

<td>

<b>Email:</b>

</td>

<td>

<input type="text"
value="<?php echo $row['email']?>" disabled>

</td>

</tr>

<tr>

<td>

<b>Password:</b>

</td>

<td>

<input
type="password" value="<?php echo $row['password']?>" disabled>

</td>

</tr>

<tr>

<td>

<b>Remark:</b>

</td>

<td>
<textarea rows="3" cols="40" disabled><?php echo $row['remark']?
></textarea>

</td>

</tr>

</table>

<?php

?>

<!-- #Code for edit student details---Start-->

<?php

if(isset($_POST['edit_student']))

?>

<center>

<form action="" method="post">

&nbsp;&nbsp;<b>Enter Roll
No:</b>&nbsp;&nbsp; <input type="text" name="roll_no">

<input type="submit"
name="search_by_roll_no_for_edit" value="Search">

</form><br><br>

<h4><b><u>Student's
details</u></b></h4><br><br>

</center>
<?php

if(isset($_POST['search_by_roll_no_for_edit']))

$query = "select * from students where roll_no =


$_POST[roll_no]";

$query_run = mysqli_query($connection,$query);

while ($row = mysqli_fetch_assoc($query_run))

?>

<form action="admin_edit_student.php"
method="post">

<table>

<tr>

<td>

<b>Roll No:</b>

</td>

<td>

<input type="text"
name="roll_no" value="<?php echo $row['roll_no']?>">

</td>

</tr>

<tr>
<td>

<b>Name:</b>

</td>

<td>

<input type="text" name="name" value="<?php echo $row['name']?


>">

</td>

</tr>

<tr>

<td>

<b>Father's Name:</b> </td>

<td>

<input type="text"
name="father_name" value="<?php echo $row['father_name']?>">

</td>

</tr>

<tr>

<td>

<b>Class:</b>

</td>

<td>

<input type="text"
name="class" value="<?php echo $row['class']?>">
</td>

</tr>

<tr>

<td>

<b>Mobile:</b>

</td>

<td>

<input type="text"
name="mobile" value="<?php echo $row['mobile']?>">

</td>

</tr>

<tr>

<td>

<b>Email:</b>

</td>

<td>

<input type="text"
name="email" value="<?php echo $row['email']?>">

</td>

</tr>

<tr>

<td>

<b>Password:</b>
</td>

<td>

<input type="password" name="password" value="<?php echo


$row['password']?>">

</td>

</tr>

<tr>

<td>

<b>Remark:</b>

</td>

<td>

<textarea rows="3"
cols="40" name="remark"><?php echo $row['remark']?></textarea>

</td>

</tr><br>

<tr>

<td></td>

<td>

<input type="submit"
name="edit" value="Save">

</td>

</tr>

</table>

</form>
<?php

?>

<!-- #Code for Delete student details---Start-->

<?php

if(isset($_POST['delete_student']))

?>

<center>

<form action="delete_student.php"
method="post">

&nbsp;&nbsp;<b>Enter Roll
No:</b>&nbsp;&nbsp; <input type="text" name="roll_no">

<input type="submit"
name="search_by_roll_no_for_delete" value="Delete">

</form><br><br>

</center>

<?php

?>

<?php

if(isset($_POST['add_new_student'])){
?>

<center><h4>Fill the given


details</h4></center>

<form action="add_student.php"
method="post">

<table>

<tr>

<td>

<b>Roll No:</b>

</td>

<td>

<input type="text"
name="roll_no" required>
</td>

</tr>

<tr>

<td>

<b>Name:</b>

</td>

<td>
<input type="text"
name="name" required>

</td>

</tr>
<tr>

<td>

<b>Father's Name:</b>

</td>

<td>
<input type="text"
name="father_name" required>

</td>

</tr>

<tr>

<td>

<b>Class:</b>
</td>
<td>
<input type="text"
name="class" required>

</td>

</tr>

<tr>

<td>

<b>Mobile:</b>

</td>

<td>
name="mobile" required> <input type="text"

</td>

</tr>

<tr>

<td>

<b>Email:</b>

</td>

<td>
<input type="text"
name="email" required>

</td>

</tr>

<tr>

<td>

<b>Password:</b>

</td>

<td>

<input type="password"
name="password" required>

</td>

</tr>

<tr>

<td>
<b>Remark:</b>

</td>

<td>

<textarea rows="3"
cols="40" placeholder="Optional" name="remark"></textarea>

</td>

</tr>

<tr>

<td></td>

<td><br><input type="submit"
name="add" value="Add Student"></td>

</tr>

</table>

</form>

<?php

?>

<?php

if(isset($_POST['show_teacher']))

?>

<center>

<h5>Teacher's Details</h5>
<table>
<tr>
<td
id="td"><b>ID</b></td>
<td
id="td"><b>Name</b></td>
<td
id="td"><b>Mobile</b></td>
<td
id="td"><b>Courses</b></td>
<td id="td"><b>View
Detail</b></td>

</tr>
</table>

</center>

<?php

$query = "select * from teachers";

$query_run =
mysqli_query($connection,$query);

while ($row =
mysqli_fetch_assoc($query_run))

?>

<center>

<table style="border-collapse:
collapse;border: 1px solid black;">

<tr>
<td id="td"><?php echo
$row['t_id']?></td>

<td id="td"><?php echo


$row['name']?></td>

<td id="td"><?php echo


$row['mobile']?></td>

<td id="td"><?php echo


$row['courses']?></td>

<td id="td"><a
href="#">View</a></td>

</tr>

</table>

</center>

<?php

?>

</div>

</div>

</body> </html> logout.php <?php

session_unset();

session_destroy();

header("Location: login.php");

?>
References:
 www.w3schools.com
 www.coursera.org
www.javatpoint.com

You might also like