School - MGMT - System NEW VI SEM
School - MGMT - System NEW VI SEM
2 Introduction
Requirement Specifications
6 Analysis
Identification Of Need
Project Category
DFDs
E-R Diagram
Feasibility Study
Data Dictionary
7 Designs
No. Of Modules
Module
1
8 Input and Output Screens
9 Coding
10 Testing
12 Limitations Of Project
14 Bibliography
2
TITLE OF THE PROJECT
“SCHOOL
MANAGEMENT
SYSTEM”
3
INTRODUCTION
4
INTRODUCTION
Fed up with struggling with a system, which seems to add to your workload,
which doesn't work the way your school does? Do you want a scalable
computerized system with plenty of timesaving features that help to get jobs
done accurately and quickly? Do you want professional-looking reports and
correspondence? .........Then look at School Management System.
The appearance of your student records says a lot about the quality of your
school. Other educators and registrars make judgments based on student records
that can permanently affect a student's life. SMS capabilities include the basics
such as fee structure ,faculty ,notice.
You operate a quality program—NOW you can be sure your records
communicate that quality. Here realizes the need for an effective school
management system and that is exactly what we are striving for!
The School Management System (SMS) will replace the paper-based data
collection and information exchange system among the various departments of a
particular school. The School Management System provides an innovative
solution for Today’s school record-keeping challenges. This school management
software will give you room to handle your responsibilities whether you’re just
starting or are an experienced professional.
5
OBJECTIVES
6
OBJECTIVES
School management is the embodiment of a spirit and of an ideal. School
management should enable different limbs of the school organism ―to function
harmoniously in happy coordination blending themselves into a composite
personality like the different rivulets which join together.
7
TOOLS/HARDWARE
& SOFTWARE
REQUIREMENT
SPECIFICATION
8
Hardware Requirements
Software Requirements
9
ROLES AND
RESPONSIBILITY
10
Roles and responsibility
YASH TESTING
11
ANALYSIS
12
IDENTIFICATION OF NEED
MANUAL SYSTEM: The manual system of data entry and report generation
was very slow and susceptible to human errors leading to loss of valid time and
memory.
13
PROPOSED SYSTEM: A computer based management system for monitoring
of different activity like Notice,Fee structure,Faculties in view of user
requirement. The existing system which was manual and keeping the records in
flat files was to be computerized. The proposed system can be divided into
following parts:
LOGIN MODULE :-
This module will maintain the login details.
HOME MODULE :-
This module will handle the details of School.
NOTICE MODULE :-
This module will handle the Notice Board.
FACULTY MODULE :-
This will maintain the datails of all the faculties.
14
ADVANATGES OF THE PROPOSED SYSTEM: -
The advantages of proposed system can be summarized as below:-
2) The response time information retrieval will reduced to negligible and the
processing time require for retrieving, the desired information from
different table is less.
3) Reports can be generated quickly for effective decision making and up- to-
date information is available and answers to queries are also provided
instantly.
In the proposed system the techniques used were interviews, record inspection
and observation interviewing techniques can be used to collect the information
from individuals or from groups. The presence of experienced analyst in fact
finding group is a boon experience from previous studied can help in
investigation of area that would otherwise go unnoticed by an in experienced
analyst. Having the expertise background to know what question to ask or which
aspect of problem to investigation the process of requirement analysis becomes
fruitful.
15
PREELIMINARY INVESTIGATION:
The data that the analysts collect during preliminary investigations are gathered
through three primary methods: reviewing organization documents, on-site
observations, conducting interviews.
A) CONDUCTING INTERVIEWS: Interviews techniques can be used to
collect the information from the individual or group to find out the problem
of existing system or to extract new ideas thoughts regarding the purposed
system during the development of this system a number of interviews were
conducted know about the company policies.
B) REVIEWING ORGANISATION DOCUMENTS: Existing system
procedure manual illustrate the format and function of various aspects of
existing system.
C) ON SITE OBSERVATION: This information gathering approach gets as
close as possible to real system under study in the natural work
environments vital information regarding the existing was gathered through
this approach.
16
PROJECT
CATEGORY
17
DATA FLOW DIAGRAM
Context Flow(0 level) diagram
REPORT
NOTICE
LOGIN
SCHOOL
MANAGEMENT
SYSTEM
FEE DETAIL
FACULTY
18
Level 1 Diagram.
REGISTATION
INVALID
LOGIN LOGIN
ID &PASSWORD LOGIN
PROCE
USER!
PROCESS
NOTICE NOTICE
NOTICE
NOTICE
FEE DETAIL
FEE DETAIL FEE
DETAIL
19
FACULTY FACULTY FACULTY
REPORT REPORT
REPORT
20
ER DAIGRAM
User_id Password
Quality
Policy s
Our
Mission
Administrator
Faculty
Report
Notice
Id
DOB
Name
About
us Fee Detail
Gender
Total
class
Tuition
Annual
Sports
Exam
21
FEASIBILITY STUDY
An initial investigation culminates in a proposal that determines whether an
alternative system is feasible or not. Proposal summarizing the study of the
system is presented to the user for reviews. When approved this proposal
initiates feasibility study that meets the system performance requirement and
the objectives.
To test the feasibility of this project, following aspects are studied in detail so
that there should not be any resistance from the personnel of the user
organization.
22
DATA DICTIONORY
TABLE USED
23
Table Name:-Fee
Table Name:Faculty;
Id String Unique
24
DESIGNS
25
No. of modules
LOGIN MODULE
HOME MODULE
Used to maintain the details like about us,quality policy and our mission.
NOTICE
FEE STRUCTURE
FACULTY
26
PROCESS LOGIC OF EACH MODULE
LOGIN MODULE :-
USER AUTHENTICATION.
USER REGISTRATION.
NOTICE MODULE :-
NOTICE
FEE STRUCTURE
FACULTY MODULE :-
FACULTY
27
INPUT AND OUTPUT
SCREENS
28
LOGIN
29
REGISTER
30
HOME
31
NOTICE
32
FEE STRUCTURE
33
FACULTY
34
HOME PAGE (REPORT)
NOTICE(REPORT)
35
FEE STRUCTURE (REPORT)
FACULTY (REPORT)
36
CODING
LOGIN PAGE
import java.awt.Color;
import java.sql.*;
import javax.swing.JOptionPane;
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(1380, 800));
setPreferredSize(new java.awt.Dimension(1380, 800));
getContentPane().setLayout(null);
37
pnlLogin.setBackground(new java.awt.Color(180, 60,180,60));
lblLogin.setFont(new java.awt.Font("Jokerman", 3, 36)); // NOI18N
lblLogin.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblLogin.setText("LOGIN FORM");
jPass.setText("jPasswordField1");
jPass.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jPassActionPerformed(evt);
}
});
38
jButton1.setBorder(null);
jButton1.setFocusPainted(false);
jButton1.setFocusable(false);
jButton1.setRequestFocusEnabled(false);
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
.addGroup(pnlLoginLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 160,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(pnlLoginLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 200,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 200,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 122,
Short.MAX_VALUE)
.addGroup(pnlLoginLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addComponent(lbl, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPass, javax.swing.GroupLayout.DEFAULT_SIZE, 200,
Short.MAX_VALUE)
.addComponent(txtuser, javax.swing.GroupLayout.DEFAULT_SIZE, 200,
Short.MAX_VALUE)
.addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 160,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(58, 58, 58))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
pnlLoginLayout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 130,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 128,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
39
pnlLoginLayout.setVerticalGroup(
pnlLoginLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(pnlLoginLayout.createSequentialGroup()
.addComponent(lblLogin, javax.swing.GroupLayout.PREFERRED_SIZE, 80,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(39, 39, 39)
.addGroup(pnlLoginLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtuser, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(33, 33, 33)
.addGroup(pnlLoginLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jPass, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addComponent(lbl, javax.swing.GroupLayout.PREFERRED_SIZE, 32,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addGroup(pnlLoginLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 50,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 50,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(54, 54, 54)
.addGroup(pnlLoginLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 27,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(32, 32, 32))
);
getContentPane().add(pnlLogin);
pnlLogin.setBounds(370, 180, 630, 470);
lblPhoto.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/full-hd-
background-wallpaper-download.jpg"))); // NOI18N
getContentPane().add(lblPhoto);
lblPhoto.setBounds(0, 0, 1380, 800);
pack();
}// </editor-fold>
40
}
if((usernm.equalsIgnoreCase(sname))&& (pass.equalsIgnoreCase(spass)))
{
JOptionPane.showMessageDialog(this,"Welcome! you are a valid user");
new Home().setVisible(true);
this.dispose();
}
else
{
/* lbl.setText("Username & Password Not Matched");
lbl.setForeground(Color.red);*/
JOptionPane.showMessageDialog(this,"Oops! Id password not matched");
txtuser.setForeground(Color.magenta);
jPass.setForeground(Color.magenta);
}
41
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
//</editor-fold>
42
REGISTER PAGE
import java.sql.*;
import javax.swing.JOptionPane;
/**
* Creates new form SMS
*/
public Register() {
initComponents();
try{
//Class.forName("com.mysql.jdbc.Driver");
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/SMSDB","root","");
st=con.createStatement();
}
catch(ClassNotFoundException | SQLException e) {
System.out.println(e.getMessage());
}
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
43
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(1380, 800));
setPreferredSize(new java.awt.Dimension(1380, 800));
getContentPane().setLayout(null);
44
jpass2.setText("jPasswordField2");
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING
)
.addComponent(lblRegister, javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
pnlRegisterLayout.createSequentialGroup()
.addGap(46, 46, 46)
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(pnlRegisterLayout.createSequentialGroup()
.addGap(32, 32, 32)
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton3)
.addGap(0, 0, Short.MAX_VALUE))
.addGroup(pnlRegisterLayout.createSequentialGroup()
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING
)
.addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE,
140, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE,
140, javax.swing.GroupLayout.PREFERRED_SIZE)
45
.addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE,
140, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE,
140, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE,
100, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
127, Short.MAX_VALUE)
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtusr, javax.swing.GroupLayout.PREFERRED_SIZE, 180,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtlast, javax.swing.GroupLayout.PREFERRED_SIZE, 180,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtfirst, javax.swing.GroupLayout.PREFERRED_SIZE, 180,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jpass2, javax.swing.GroupLayout.PREFERRED_SIZE, 180,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE,
100, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(23, 23, 23)))))
.addGap(24, 24, 24))
);
pnlRegisterLayout.setVerticalGroup(
pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(pnlRegisterLayout.createSequentialGroup()
.addContainerGap()
.addComponent(lblRegister, javax.swing.GroupLayout.PREFERRED_SIZE, 61,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(43, 43, 43)
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELIN
E)
.addComponent(txtfirst, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(38, 38, 38)
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELIN
E)
.addComponent(txtlast, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(38, 38, 38)
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELIN
E)
.addComponent(txtusr, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE))
46
.addGap(40, 40, 40)
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELIN
E)
.addComponent(jpass2, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 48,
Short.MAX_VALUE)
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELIN
E)
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(28, 28, 28)
.addGroup(pnlRegisterLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELIN
E)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 34,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 34,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(30, 30, 30))
);
getContentPane().add(pnlRegister);
pnlRegister.setBounds(460, 130, 550, 580);
lblPhoto.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/full-hd-
background-wallpaper-download.jpg"))); // NOI18N
getContentPane().add(lblPhoto);
lblPhoto.setBounds(0, 0, 1380, 800);
pack();
}// </editor-fold>
47
try{
String user=txtusr.getText();
String pass=jpass2.getText();
String Query="insert into login values('"+user+"',"+pass+");";
st.executeUpdate(Query);
con.close();
new Login().setVisible(true);
this.dispose();
}
catch(Exception e)
{
System.out.println(e);
JOptionPane.showMessageDialog(this,"Enter Valid Username & password");
}
/*catch(MySQLIntegrityConstraintViolationException ex)
{
JOptionPane.showMessageDialog(this,"User Already Exist");
}*/
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Register.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Register.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
48
java.util.logging.Logger.getLogger(Register.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Register.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
49
HOME PAGE
import java.sql.*;
import javax.swing.JOptionPane;
public class Home extends javax.swing.JFrame {
Connection con;
Statement st;
ResultSet rs;
public Home() {
initComponents();
try{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/SMSDB","root","");
st=con.createStatement();
}
catch(ClassNotFoundException | SQLException e) {
System.out.println(e.getMessage());
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
50
jButton7 = new javax.swing.JButton();
jButton8 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(1380, 800));
setPreferredSize(new java.awt.Dimension(1380, 800));
getContentPane().setLayout(null);
51
}
});
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
new Notice().setVisible(true);
this.dispose();
}
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
new Fee_Structure().setVisible(true);
this.dispose();
}
private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
new Login().setVisible(true);
this.dispose();
}
private void jToggleButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
new HomeR().setVisible(true);
this.dispose();
}
private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
new Home().setVisible(true);
this.dispose();
}
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Home.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Home.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Home.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
52
java.util.logging.Logger.getLogger(Home.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Home().setVisible(true);
}
});
}
NOTICE PAGE
import java.sql.*;
53
import javax.swing.JOptionPane;
public class Notice extends javax.swing.JFrame
{
String sname;
String spass;
Connection con;
Statement st;
ResultSet rs;
/**
* Creates new form notice1
*/
public Notice() {
initComponents();
try{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/SMSDB","root","");
st=con.createStatement();
//JOptionPane.showMessageDialog(this, "connected to database");
}
catch(ClassNotFoundException | SQLException e) {
System.out.println(e.getMessage());
}
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
54
jLabel2 = new javax.swing.JLabel();
jLabel1 = new javax.swing.JLabel();
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();
jLabel10 = new javax.swing.JLabel();
jFormattedTextField1 = new javax.swing.JFormattedTextField();
jButton7 = new javax.swing.JButton();
jButton8 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(1380, 800));
setPreferredSize(new java.awt.Dimension(1380, 800));
getContentPane().setLayout(null);
55
jButton2.setText("Notice");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jPanel1.add(jButton2);
jButton2.setBounds(710, 40, 90, 30);
56
jLabel8.setBounds(0, 200, 1380, 30);
jSeparator3.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAIS
ED));
jPanel1.add(jSeparator3);
jSeparator3.setBounds(0, 230, 1430, 10);
jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/full-hd-background-
wallpaper-download.jpg"))); // NOI18N
jPanel1.add(jLabel2);
jLabel2.setBounds(0, 0, 1380, 200);
jTextArea1.setColumns(20);
jTextArea1.setRows(5);
jTextArea1.setText(" \t\t Oak Tree\n...................................................\n \n 1.Write a notice to be
put up on your school \n noticeboard informing the students about closing\n of school for winter vacations
give necessary\n instruction Ask for details Follow Report by\n school..... 12/12/2019.");
jScrollPane1.setViewportView(jTextArea1);
57
jPanel1.add(jScrollPane1);
jScrollPane1.setBounds(220, 400, 800, 210);
jFormattedTextField1.setText("......./........./......");
jFormattedTextField1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jFormattedTextField1ActionPerformed(evt);
}
});
jPanel1.add(jFormattedTextField1);
jFormattedTextField1.setBounds(320, 300, 109, 30);
jButton7.setText("CANCEL");
jButton7.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton7ActionPerformed(evt);
}
});
jPanel1.add(jButton7);
jButton7.setBounds(360, 650, 140, 50);
jButton8.setText("UPDATE");
jButton8.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton8ActionPerformed(evt);
}
});
jPanel1.add(jButton8);
jButton8.setBounds(730, 650, 140, 50);
getContentPane().add(jPanel1);
jPanel1.setBounds(0, 0, 1380, 810);
pack();
}// </editor-fold>
58
private void jFormattedTextField1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
/**
* @param args the command line arguments
*/
59
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Notice.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Notice.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Notice.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Notice.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
//</editor-fold>
60
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JLabel jLabel9;
private javax.swing.JPanel jPanel1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JSeparator jSeparator1;
private javax.swing.JSeparator jSeparator2;
private javax.swing.JSeparator jSeparator3;
private javax.swing.JSeparator jSeparator4;
private javax.swing.JTextArea jTextArea1;
// End of variables declaration
}
61
NOTICE PAGE (REPORT)
import java.sql.*;
public class NoticeR extends javax.swing.JFrame {
String sname;
String spass;
Connection con;
Statement st;
ResultSet rs;
public NoticeR() {
initComponents();
try{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/SMSDB","root","");
st=con.createStatement();
}
catch(ClassNotFoundException | SQLException e) {
System.out.println(e.getMessage());
}
try{
String Query1= "select * from home where item = 'Notice'";
rs= st.executeQuery(Query1);
rs.next();
String s1=rs.getString(2);
jTextArea1.setText(s1);
con.close();
}
catch(Exception e){
System.out.println(e);
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
62
jButton1 = new javax.swing.JButton();
jLabel9 = new javax.swing.JLabel();
jSeparator4 = new javax.swing.JSeparator();
jLabel2 = new javax.swing.JLabel();
jLabel1 = new javax.swing.JLabel();
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();
jLabel10 = new javax.swing.JLabel();
jFormattedTextField1 = new javax.swing.JFormattedTextField();
jSeparator5 = new javax.swing.JSeparator();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(1380, 800));
getContentPane().setLayout(null);
jPanel1.setLayout(null);
63
jButton2.setText("Notice");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jPanel1.add(jButton2);
jButton2.setBounds(710, 40, 90, 30);
64
jLabel8.setBounds(0, 200, 1380, 30);
jSeparator3.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAIS
ED));
jPanel1.add(jSeparator3);
jSeparator3.setBounds(0, 200, 1430, 0);
jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/full-hd-background-
wallpaper-download.jpg"))); // NOI18N
jPanel1.add(jLabel2);
jLabel2.setBounds(0, 0, 1380, 200);
jTextArea1.setEditable(false);
jTextArea1.setColumns(20);
jTextArea1.setFont(new java.awt.Font("Monospaced", 0, 18)); // NOI18N
jTextArea1.setLineWrap(true);
jTextArea1.setRows(5);
jScrollPane1.setViewportView(jTextArea1);
65
jPanel1.add(jScrollPane1);
jScrollPane1.setBounds(170, 430, 990, 250);
jFormattedTextField1.setText("......./........./......");
jFormattedTextField1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jFormattedTextField1ActionPerformed(evt);
}
});
jPanel1.add(jFormattedTextField1);
jFormattedTextField1.setBounds(280, 320, 109, 30);
jSeparator5.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAIS
ED));
jPanel1.add(jSeparator5);
jSeparator5.setBounds(0, 230, 1380, 10);
getContentPane().add(jPanel1);
jPanel1.setBounds(0, 0, 1380, 800);
pack();
}// </editor-fold>
66
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
new Fee_structureR().setVisible(true);
this.dispose();
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(NoticeR.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(NoticeR.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(NoticeR.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(NoticeR.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
67
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NoticeR().setVisible(true);
}
});
}
68
FEE STRUCTURE PAGE(REPORT)
import java.sql.*;
public class Fee_structureR extends javax.swing.JFrame {
Connection con;
Statement st;
ResultSet rs;
public Fee_structureR() {
initComponents();
try{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/SMSDB","root","");
st=con.createStatement();
}
catch(ClassNotFoundException | SQLException e) {
System.out.println(e.getMessage());
}
try
{
String Query1="select * from fee where class='Pre-UKG'";
String Query2="select * from fee where class='std - I-III'";
String Query3="select * from fee where class='std - IV-VII'";
String Query4="select * from fee where class='std - VIII-X'";
rs=st.executeQuery(Query1);
rs.next();
jTable1.setValueAt(rs.getString(2),0,1);
jTable1.setValueAt(rs.getString(3),1,1);
jTable1.setValueAt(rs.getString(4),2,1);
jTable1.setValueAt(rs.getString(5),3,1);
jTable1.setValueAt(rs.getString(6),4,1);
rs=st.executeQuery(Query2);
rs.next();
jTable1.setValueAt(rs.getString(2),0,2);
jTable1.setValueAt(rs.getString(3),1,2);
jTable1.setValueAt(rs.getString(4),2,2);
jTable1.setValueAt(rs.getString(5),3,2);
jTable1.setValueAt(rs.getString(6),4,2);
rs=st.executeQuery(Query3);
rs.next();
jTable1.setValueAt(rs.getString(2),0,3);
jTable1.setValueAt(rs.getString(3),1,3);
jTable1.setValueAt(rs.getString(4),2,3);
jTable1.setValueAt(rs.getString(5),3,3);
jTable1.setValueAt(rs.getString(6),4,3);
rs=st.executeQuery(Query4);
rs.next();
jTable1.setValueAt(rs.getString(2),0,4);
jTable1.setValueAt(rs.getString(3),1,4);
jTable1.setValueAt(rs.getString(4),2,4);
jTable1.setValueAt(rs.getString(5),3,4);
jTable1.setValueAt(rs.getString(6),4,4);
69
}
catch(Exception e)
{
System.out.println(e);
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(1380, 800));
setPreferredSize(new java.awt.Dimension(1380, 800));
getContentPane().setLayout(null);
70
jLabel3.setBounds(0, 0, 230, 200);
71
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
jPanel1.add(jButton3);
jButton3.setBounds(830, 40, 140, 30);
jSeparator3.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAIS
ED));
jPanel1.add(jSeparator3);
jSeparator3.setBounds(0, 230, 1430, 10);
72
jSeparator4.setBackground(new java.awt.Color(0, 0, 0));
jPanel1.add(jSeparator4);
jSeparator4.setBounds(0, 280, 1430, 10);
jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/full-hd-background-
wallpaper-download.jpg"))); // NOI18N
jPanel1.add(jLabel1);
jLabel1.setBounds(0, 0, 1380, 200);
jPanel2.setLayout(null);
jPanel1.add(jPanel2);
jPanel2.setBounds(0, -20, 1380, 220);
jScrollPane1.setBorder(null);
jScrollPane1.setViewportBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0,
0, 0)));
jScrollPane1.setName(""); // NOI18N
jTable1.setAutoCreateRowSorter(true);
jTable1.setBackground(new java.awt.Color(51, 255, 51));
jTable1.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
jTable1.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{"EXAM FEE", "", null, null, null},
{"ANNUAL FEE", null, null, null, null},
{"SPORTS FEE", null, null, null, null},
{"TUTION FEE", null, null, null, null},
{"TOTAL FEE", null, null, null, null}
},
new String [] {
"CLASS", "PRE-NURSERY", " I - III", " IV-VII", " VII-X"
}
){
boolean[] canEdit = new boolean [] {
false, false, false, false, false
73
};
jTable1.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.MULTI
PLE_INTERVAL_SELECTION);
if (jTable1.getColumnModel().getColumnCount() > 0) {
jTable1.getColumnModel().getColumn(0).setMinWidth(20);
jTable1.getColumnModel().getColumn(0).setHeaderValue("CLASS");
jTable1.getColumnModel().getColumn(1).setHeaderValue("PRE-NURSERY");
jTable1.getColumnModel().getColumn(2).setHeaderValue(" I - III");
jTable1.getColumnModel().getColumn(3).setHeaderValue(" IV-VII");
jTable1.getColumnModel().getColumn(4).setHeaderValue(" VII-X");
}
jPanel1.add(jScrollPane1);
jScrollPane1.setBounds(150, 380, 1090, 220);
getContentPane().add(jPanel1);
jPanel1.setBounds(0, 0, 1380, 810);
pack();
}// </editor-fold>
74
private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
new Login().setVisible(true);
this.dispose();
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Fee_structureR.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Fee_structureR.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Fee_structureR.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Fee_structureR.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
//</editor-fold>
75
new Fee_structureR().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JButton jButton4;
private javax.swing.JButton jButton5;
private javax.swing.JButton jButton6;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
private javax.swing.JLabel jLabel13;
private javax.swing.JLabel jLabel21;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel9;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JSeparator jSeparator1;
private javax.swing.JSeparator jSeparator2;
private javax.swing.JSeparator jSeparator3;
private javax.swing.JSeparator jSeparator4;
private javax.swing.JSeparator jSeparator5;
private javax.swing.JTable jTable1;
// End of variables declaration
}
FACULTY PAGE(REPORT)
import java.sql.*;
import javax.swing.table.DefaultTableModel;
public class FacultyR extends javax.swing.JFrame {
DefaultTableModel dm;
Connection con;
Statement st;
ResultSet rs;
public FacultyR() {
initComponents();
try{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/SMSDB","root","");
st=con.createStatement();
}
catch(Exception e){
System.out.println(e);
}
try{
String Query="select * from faculty";
76
TESTING
77
SOFTWARE TESTING
Software testing is the process of evaluating a software item to detect differences
between given input and expected output. Also to assess the feature of the
software item. Testing assesses the quality of the product.
Software testing is a process that should be done during the development process.
In other words software testing is a verification and validation process.
There are two basics of software testing: Black box testing and White box
testing.
Black box testing is a testing technique that ignores the internal mechanism of
the system and focuses on the output generated against any input and execution
of the system. It is also called functional testing.
White box testing is a testing technique that takes into account the internal
mechanism of a system. It is also called structural testing and glass box testing.
Black box testing is often used for validation and White box testing is often used
for verification.
TYPES OF TESTING
There are many types of testing like:-
Unit testing
Integration testing
Functional testing
System testing
Stress testing
Performance testing
Usability testing
78
Acceptance testing
Regression testing
Beta testing
Unit testing
Integration testing
Functional testing
Regression testing
Regression testing is the testing after the modification of the system, component
or a group of related units to ensure that the modification is working correctly
and is not damaging or imposing other modules to produce unexpected results. It
falls under the class of Black box testing.
Beta testing
79
Beta testing is the testing done by the end users, a team outside development, or
publicly releasing full pre-version of the product which is known as beta version.
The aim of the beta testing is to cover unexpected errors. It falls under the class
of Black box testing.
A user with authorized username and password can only access the
software.this is the extent to which the medical store management system is
safe from unauthorized users and attacks.
user authentication is crucial because it’s the process that keeps unauthorized
users from gaining access to sensitive
information. Authentication ensures that User A only has access to the
information they need and can’t see the sensitive information of User B.
When user authentication isn’t secure, cybercriminals can trick the system and gain
access, taking whatever information they want.
User authentication ensures that only authorized users are gaining access to
sensitive information. Without a secure authentication process, organization
could be at risk.
80
LIMITATION
OF
PROJECT
81
LIMITATIONS OF PROJECT
82
FUTURE SCOPE
83
FUTURE SCOPE
We have left all the options open so that if there is any other future requirement
in the system by the user for the enhancement of the system then it is possible to
implement them. In the last, we would like to thanks all the persons involved in
the development of the system directly or indirectly. We are also thankful to the
department for so much taken by them in helping to develop the system. We
hope that the project will serve its purpose for which it is develop thereby
underlining success of project.
84
BIBLOGRAPHY
85
BIBLIOGRAPHY
JavaTpoint.com
Wikipedia.com
86