62
A Report On Advance Java (J2EE) Summer Training MARUDHAR ENGINEERING COLLEGE, BIKANER Submitted for the partial fulfillment of Bachelor of Engineering Computer Science & Engineering 2012-13 Submitted By:- Tuhin Dogra 10EMECS088 4 th year C.S.E. Submitted To:-

Tuhin Report

Embed Size (px)

DESCRIPTION

report on j2ee

Citation preview

Page 1: Tuhin Report

A

Report

On

Advance Java (J2EE)

Summer Training

MARUDHAR ENGINEERING COLLEGE, BIKANER

Submitted for the partial fulfillment of

Bachelor of Engineering

Computer Science & Engineering

2012-13

Submitted By:-

Tuhin Dogra 10EMECS088

4th year C.S.E.

Submitted To:-

Mrs. Monika Soni Ma’am

Department of Computer Science & Engineering

Marudhar Engineering College, Bikaner

Page 2: Tuhin Report

ACKNOWLEDGEMENT

I have taken efforts in this project. However, it would not have been possible without the kind support

and help of many individuals and organizations. I would like to extend my sincere thanks to all of

them.

I would like to express my deepest appreciation to Marudhar Engineering College , Bikaner for

every support and opportunities provided time to time.

I am highly indebted to Acme Embedded Technologies Pvt. Ltd. , Bikaner for it’s guidance and

constant supervision as well as for providing necessary information regarding the project & also for

their support in completing the project.

I would like to express my gratitude towards My Parents & Mr. Manish Shandilya (Director of

Acmeet Group) for their kind co-operation and encouragement which help me in completion of this

project.

My thanks and appreciations also go to my colleague in developing the project and people who have

willingly helped me out with their abilities.

Tuhin Dogra

(10EMECS088)

Page 3: Tuhin Report

CERTIFICATION

Page 4: Tuhin Report

PREFACE

To develop a project in any language means to combine required features of the language, in a well

planned, systematic way so as to develop an application after the analysis of requirement, so that it

will be commercially helpful. In terms of its ultimate objectives it gives an experience of realistic

application.

The aim of this project is to be realistic and efficient, by using Java programming language.

The project was aimed to achieve full fledge user friendliness with GUI support and to be easily

understandable as possible. We have tried a lot to achieve all the characteristics of good application.

Page 5: Tuhin Report

ORGANIZATION PROFILE

Acme Embedded Technologies Pvt. Ltd. - A Website & Software development company in INDIA

which offers website design, web solutions business and also quality web design. Main focus is to

satisfy clients with high quality services. Expert in all types of projects from large IT projects to web

based projects to internet pluses. Clientele gain great web services and web solution within the time

and at reasonable rates. High quality services help customers to achieve their tactical targets very

soon.

Services of the company :-

Custom Web Programming (J2EE, PHP, ASP.NET)

Website Design (Web, Graphics, Logo)

Web Hosting

Software Development

Training (C , C++ , Java , Advance Java , PHP/MySQL , C#.net , Asp.net , Salesforce ,

Oracle , OCJP etc.)

Page 6: Tuhin Report

CONTENTS

S No. Contents Page No.

1 Abstract Of A Project 1-2

2 Java Overview

Java History

Java Feature

Difference Between Java and

C/C++

Java Virtual Machine

3-8

3

3-6

7

8

3 Java Swing Introduction Swing Component

9-119-10

11

4 Java Database Connectivity

Introduction

Jdbc Architecture

o Two Tire

Architecture

o Three Tire

Architecture

Components of JDBC

JDBC Driver

Connectivity Steps

o Loading a Database

Driver

o Creating a JDBC

Connection

o Creating a jdbc

statement object

o Executing a

statement

Database Connection

Closing JDBC connection

12-20

12

13

13

13-14

15

15-16

17

17

17

18

18

19

20

Page 7: Tuhin Report

5 Overview of project

Objective

Scope

Product Feature

Product Skeleton

System Design

o Input Design

o Output Design

o Database Design

o Data Flow Diagram

o Entity Relationship

Diagram

Software testing

Integration Testing

21-30

21

21

21-22

23

23

23-25

25

25-26

26-27

28

29

29-30

6 Snap Shots 31-36

7 Tables 37-39

8 Conclusion 40

9 Bibliography 41

Page 8: Tuhin Report

CHAPTER 1

ABSTRACT OF A PROJECT

MEANING OF A PROJECT

The meaning of project is to give physical existence to creative brain idea and

thought. Project is a great source to develop technical and project oriented skills in fields for a

student as a base for a kick start in the Technical World.

During the programming of the project student goes through different problems and

experience. A student gets a change to climb on the roof of practical knowledge to economize

to go at the fields. A very important aim of this world “PROJECT” consist of seven alphabets

each of them has separate meaning.

‘P’ for PLANNING –If Planning is good, then an impressive half work is done.

‘R’ for RELAIABLE SOURCE – Practice and theoretical material & able guidance

and assistance is achieved from different sources to promote the function of planned

area.

‘O’ for OVERALL EXPENSES – Overall expenses to provide final design to any

project is also considerable. Their expenses are analyzed for each concepts and

method of working on the computer.

‘J’ for JOINT EFFORTS – Joint efforts are much necessary for programming and

result of any project. Many times some problems as books etc., are solved for external

sources.

‘E’ for ECONOMIC TIME FEASIBILITY – It is important that the planned scheme

is economic time feasible. It is must to estimate completion of the project.

‘C’ for CONSTRUCTION – After analyzing the project work is done to give logical

existence of planned scheme.

‘T’ for TESTING – Testing of program is done before submitting the project after

resting the gadget is ok for use.

Page 9: Tuhin Report

INTRODUCTION TO THE PROJECT

PROJECT NAME: Library Management System.

SYSTEM SPECIFICATION:

HARDWARE SPECIFICATION

o Processor : Intel Corei3

o Clock Speed : 2.40 GHz

o System Bus : 32-bit

o RAM : 4 GB

o HDD : 500 GB

SOFTWARE SPECIFICATION

o OS : MS WINDOWS 7 Premium

o Front End : JAVA

o Mid End : JDBC_ODBC_DRIVER

o Back End : MS-ACCESS

o Time : 45 days (Approx)

o Human resource(min.) : one

o Project leader  : one

o Programmer :  one

DESCRIPTION:

LIBRARY MANAGEMENT SYSTEM is a software application to maintain

the record related to Book Purchase, Book Search, Catalogue, Book Issue, Book

Returns, Fine Collection, and all necessary requirements for the Library to manage

day to day operations.

The software Library Management System has four main modules:-

Insertion to Database Module – User friendly input screen.

Extracting from Database module – Attractive Output Screen.

Output module – borrowed book list & Available book list.

Search Facility system – search for books and members.

Page 10: Tuhin Report

Chapter 2

JAVA OVERVIEW

JAVA HISTORY:

Java is a programming language originally developed by James Gosling at Sun

Microsystems (which has since merged into Oracle Corporation) and released in 1995 as a

core component of Sun Microsystems' Java platform. The language derives much of its syntax

from C and C++ but has a simpler object model and fewer low-level facilities than either C or

C++. Java applications are typically compiled to byte code (class file) that can run on any

Java Virtual Machine (JVM) regardless of computer architecture.

Java is a general-purpose, concurrent, class-based, object-oriented language that is

specifically designed to have as few implementation dependencies as possible. It is intended

to let application developers "Write Once,Run Anywhere" (WORA), meaning that code that

runs on one platform does not need to be recompiled to run on another. Java is as of 2013 one

of the most popular programming languages in use, particularly for client-server web

applications, with a reported 10 million users.

JAVA FEATURE:

PLATFORM INDEPENDENT:

The concept of Write-Once,Run-Anywhere (known as the Platform

independent) is one of the important key feature of java language that makes java as

the most powerful language. Not even a single language is idle to this feature but java

is more closer to this feature. The programs written on one platform can run on any

platform provided the platform must have the JVM. 

SIMPLE:

There are various features that makes the Java as a simple language.

Programs are easy to write and debug because Java does not use the pointers

explicitly. It is much harder to write the Java programs that can crash the system but

we can not say about the other programming languages. Java provides the bug free

system due to the strong memory management. It also has the automatic memory

allocation and deallocation system

Page 11: Tuhin Report

OBJECT ORIENTED:

To be an Object Oriented language, any language must follow at least the four

characteristics.

Inheritance    :   It is the process of creating the new classes and using the behavior

of the existing classes by extending them just to reuse  the existing code and

adding the additional features as needed.

Encapsulation :   It is the mechanism of combining the information and providing

the abstraction.

Polymorphism:   As the name suggest one name multiple form, Polymorphism is

the way of providing the different functionality by the functions  having the

same name based on the signatures of the methods.

Dynamic binding   : Sometimes we don't have the knowledge of objects about

their specific types while writing our code. It is the way of providing the

maximum functionality to a program about the specific type at runtime.  

Everything in Java is object, even the primitive data types can also be converted

into object by using the wrapper class.

ROBUST:

Java has the strong memory allocation and automatic garbage collection

mechanism. It provides the powerful exception handling and type checking

mechanism as compare to other programming languages. Compiler checks the

program whether there any error and interpreter checks any run time error and makes

the system secure from crash. All of the above features makes the Java language

robust.

DISTRIBUTED:

The widely used protocols like HTTP and FTP are developed in Java.

Internet programmers can call functions on these protocols and can get access the

files from any remote machine on the internet rather than writing codes on their local

system.

Page 12: Tuhin Report

PORTABLE:

The feature Write-Once,Run-Anywhere makes the Java language portable

provided that the system must have interpreter for the JVM. Java also have the

standard data size irrespective of operating system or the processor. These features

makes the Java as a portable language.

DYNAMIC:

While executing the Java program the user can get the required files

dynamically from a local drive or from a computer thousands of miles away from the

user just by connecting with the Internet.

SECURE:

Java does not use memory pointers explicitly. All the programs in Java are

run under an area known as the Sand Box. Security manager determines the

accessibility options of a class like reading and writing a file to the local disk. Java

uses the Public Key Encryption system to allow the Java applications to transmit over

the internet in the secure encrypted form. The Bytecode Verifier checks the classes

after loading. 

PERFORMANCE:

Java uses native code usage, and lightweight process called  threads. In the

beginning interpretation of bytecode resulted the performance slow but the advance

version of JVM uses the adaptive and Just In Time(JIT) compilation technique that

improves the performance. 

MULTITHREADED:

Java is also a Multithreaded programming language. Multithreading means a

single program having different threads executing independently at the same time.

Multiple threads execute instructions according to the program code in a process or a

program. Multithreading works the similar way as multiple processes run on one

computer.  

Page 13: Tuhin Report

Multithreading programming is a very interesting concept in Java. In multithreaded

programs not even a single thread disturbs the execution of other thread.

Threads are obtained from the pool of available ready to run threads and they run on

the system CPUs. This is how Multithreading works in Java.

INTERPREATED:

The interpreter program reads the source code and translates it on the fly into

computations. Thus, Java as an interpreted language depends on an interpreter

program.

The versatility of being platform independent makes Java to outshine from other

languages. The source code to be written and distributed is platform independent.  

Another advantage of Java as an interpreted language is its error debugging quality.

Due to this any error occurring in the program gets traced. This is how it is different

to work with Java.

NEUTRAL ARCHITECTURE:

The term seems to be weird, but yes Java is an architectural neutral language

as well. The growing popularity of networks makes developers think distributed. In

the world of network it is essential that the applications must be able to migrate easily

to different computer systems. Not only to computer systems but to a wide variety of

hardware architecture and Operating system architectures as well. 

The Java compiler does this by generating byte code instructions, to be easily

interpreted on any machine and to be easily translated into native machine code on

the fly. The compiler generates an architecture-neutral object file format to enable a

Java application to execute anywhere on the network and then the compiled code is

executed on many processors, given the presence of the Java runtime system.Hence

Java was designed to support applications on network. This feature of Java has

thrived the programming language.

Page 14: Tuhin Report

DIFFERENCE BETWEEN JAVA AND C\C++:

JAVA AND C:

Java does not include the unique keywords Sizeof, and typedef.

Java does not contain the data types struct and union.

Java does not define the type modifiers keywords auto, extern, register, signed and

unsigned.

Java does not support an explicit pointer type.

Java added new operator such as instanceof and >>>.

Java added labelled break and continue statements.

Java added many feature required for Object-oriented programming.

JAVA AND C++:

Java does not support operator overloading.

Java does not have template classes as in C++.

Java does not support multiple Inheritance of classes. This is accomplished using a

new feature called”Interface”.

Java does not support global variables. Every variable and method is declared

within a class and forms part of that class.

Java does not use pointer.

There are no header files.

Java replaced the destructor function with a finalize() method.

Page 15: Tuhin Report

JVM (JAVA VIRTUAL MACHINE):

All the language compiler translates source code into machine code for a specific

computer. Java compiler also does the same thing. Java compiler produces an intermediate

code known as bytecode for a machine that does not exist. The machine is called the Java

Virtual Machine and it exists only in inside computer memory .

Process of compiling a Java program into bytecode which is referred to as virtual machine

code.

Process of compilation

The virtual machine code is not machine specific. The machine specific code is generated by the Java

interpreter by acting as an intermediary between the virtual machine and real machine.

Fig-1.1 Process of converting byte code into machine code

Java Program Java Compiler Virtual Machine

Machine Code

JVM

BytecodeLoader Java Interpreter

Page 16: Tuhin Report

Chapter-3

JAVA Swing

SWING INTRODUCTION-

Swing library is an official Java GUI toolkit released by Sun Microsystems. It is used to

create Graphical user interfaces with Java.

The main characteristics of the Swing toolkit

Platform Independent

Customizable

Extensible

Configurable

Lightweight

SWING COMPONENTS:

Basic Controls:

• JButton

• JCheckBox

• JComboBox

• JList

• JMenu

• JRadioButton

• JSlider

• JSpinner

• JTextField

• JPasswordField

Page 17: Tuhin Report

Interactive Displays of Highly Formatted Information:

• JColorChooser

• JEditorPane

• JFileChooser

• JTable

• JTextArea

• JTree

Uneditable Information Displays:

• JLabel

• JProgressBar

• JSeparator

• JToolTip

Top-Level Containers:

• JApplet

• JDialog

• JFrame

General-Purpose Containers:

• JPanel

• JScrollPane

• JSplitPane

• JTabbedPane

• JToolBar

Special-Purpose Containers:

• JInternalFrame

• JLayeredPane

• Root pane

Page 18: Tuhin Report

Execution of a Swing File:

Save File : SwingDemo.java

Compile it javac SwingDemo.java

Run File : java SwingDemo

Page 19: Tuhin Report

Chapter-4

JAVA DATABASE CONNECTIVITY (JDBC)

INTRODUCTION-

• JDBC stands for Java Database Connectivity.

• The Java JDBC API enables Java applications to connect to relational databases via a

standard API, so your Java applications become independent (almost) of the database

the application uses.

• Using JDBC you can send SQL, PL/SQL statements to almost any relational

database. JDBC is a Java API for executing SQL statements and supports basic SQL

functionality.

The JDBC API consists of the following core parts:

• JDBC Drivers

• Connections

• Statements

• Result Sets

The JDBC library includes APIs for each of the tasks commonly associated with

database usage:

Making a connection to a database

Creating SQL statements

Executing that SQL queries in the database

Viewing & Modifying the resulting records

JDBC ARCHITECTURE-

The JDBC API supports both two-tier and three-tier processing models for database access.

Page 20: Tuhin Report

TWO-TIER ARCHITECTURE FOR DATA ACCESS.

In the two-tier model, a Java application talks directly to the data

source. This requires a JDBC driver that can communicate with the particular

data source being accessed. A user's commands are delivered to the database or

other data source, and the results of those statements are sent back to the user.

The data source may be located on another machine to which the user is

connected via a network. This is referred to as a client/server configuration, with

the user's machine as the client, and the machine housing the data source as the

server. The network can be an intranet, which, for example, connects employees

within a corporation, or it can be the Internet.

Fig 2.1- two tier architecture

THREE-TIER ARCHITECTURE FOR DATA ACCESS.

In the three-tier model, commands are sent to a "middle tier" of

services, which then sends the commands to the data source. The data source

processes the commands and sends the results back to the middle tier, which then

sends them to the user. MIS directors find the three-tier model very attractive

because the middle tier makes it possible to maintain control over access and the

kinds of updates that can be made to corporate data. Another advantage is that it

simplifies the deployment of applications. Finally, in many cases, the three-tier

architecture can provide performance advantages.

Page 21: Tuhin Report

Until recently, the middle tier has often been written in languages such

as C or C++, which offer fast performance. However, with the introduction of

optimizing compilers that translate Java byte code into efficient machine-specific

code and technologies such as Enterprise JavaBeans™, the Java platform is fast

becoming the standard platform for middle-tier development. This is a big plus,

making it possible to take advantage of Java's robustness, multithreading, and

security features.

With enterprises increasingly using the Java programming language

for writing server code, the JDBC API is being used more and more in the

middle tier of a three-tier architecture. Some of the features that make JDBC a

server technology are its support for connection pooling, distributed transactions,

and disconnected row sets. The JDBC API is also what allows access to a data

source from a Java middle tier.

Fig 2.2- Three tier architecture

MAIN COMPONENTS OF JDBC-

Page 22: Tuhin Report

Driver Manager:

Manages a list of database drivers that matches connection requests

from the java application with the proper database driver using communication

sub protocol. The first driver that recognizes a certain sub protocol under JDBC

will be used to establish a database Connection.

Driver:

The database communications link, handling all communication with

the database. Normally, once the driver is loaded, the developer need not call it

explicitly.

Connection:

Interface with all methods for contacting a database. The connection

object represents communication context, i.e., all communication with database

is through connection object only.

Statement:

Encapsulates an SQL statement which is passed to the database to be

parsed, compiled, planned and executed.

Result Set:

TheResult Set represents set of rows retrieved due to query

execution.

JDBC DRIVERS-

The JDBC API defines the Java interfaces and classes that programmers use to

connect to databases and send queries. A JDBC driver implements these interfaces and

classes for a particular DBMS vendor.

A Java program that uses the JDBC API loads the specified driver for a particular

DBMS before it actually connects to a database. The JDBC DriverManager class then sends

all JDBC API calls to the loaded driver.

The four types of JDBC drivers are:

Page 23: Tuhin Report

JDBC-ODBC bridge plus ODBC driver, also called Type 1.

Translates JDBC API calls into Microsoft Open Database Connectivity (ODBC)

calls that are then passed to the ODBC driver. The ODBC binary code must be loaded

on every client computer that uses this type of driver.

Fig 2.3 JDBC driver

Native-API, partly Java driver, also called Type 2.

Converts JDBC API calls into DBMS-specific client API calls. Like

the bridge driver, this type of driver requires that some binary code be loaded on

each client computer.

JDBC-Net, also called Type 3.

Sends JDBC API calls to a middle-tier net server that translates the

calls into the DBMS-specific network protocol. The translated calls are then sent

to a particular DBMS.

Native-protocol, pure Java driver, also called Type 4.

Converts JDBC API calls directly into the DBMS-specific network

protocol without a middle tier. This allows the client applications to connect

directly to the database server.

JAVA DATABASE CONNECTIVITY STEPS-

Before we create a java jdbc connection to the database, we must

first import the java.sql package.

Page 24: Tuhin Report

import java.sql.*;

The star ( * ) indicates that all of the classes in the package java.sql are to

be imported.

LOADING A DATABASE DRIVER:

In this step of the jdbc connection process, we load the driver class by calling

Class.forName() with the Driver class name as an argument. Once loaded, the Driver class

creates an instance of itself. A client can connect to Database Server through JDBC Driver.

Since most of the Database servers support ODBC driver therefore JDBC-ODBC Bridge

driver is commonly used. The return type of the Class.forName (String ClassName) method

is “Class”. Class is a class in java.lang package.

CREATING A JDBC CONNECTION:

The JDBC DriverManager class defines objects which can connect Java

applications to a JDBC driver. DriverManager is considered the backbone of JDBC

architecture. DriverManager class manages the JDBC drivers that are installed on the

system. Its getConnection() method is used to establish a connection to a database.

A JDBC Connection represents a session/connection with a specific database.

Within the context of a Connection, SQL, PL/SQL statements are executed and results are

returned. An application can have one or more connections with a single database, or it can

have many connections with different databases. A Connection object provides metadata

i.e. information about the database, tables, and fields. It also contains methods to deal with

transactions.

CREATING A JDBC STATEMENT OBJECT :

Once a connection is obtained we can interact with the database. Connection

interface defines methods for interacting with the database via the established connection.

Page 25: Tuhin Report

To execute SQL statements, you need to instantiate a Statement object from your

connection object by using the createStatement() method.

Statement statement = cn.createStatement();

A statement object is used to send and execute SQL statements to a database.

Three kinds of Statements

EXECUTING A SQL STATEMENT WITH THE STATEMENT

OBJECT, AND RETURNING A JDBC

Result Set -

Statement interface defines methods that are used to interact with database via

the execution of SQL statements. The Statement class has three methods for

executing statements: executeQuery(), executeUpdate(), and execute(). For a

SELECT statement, the method to use is executeQuery . For statements that create

or modify tables, the method to use is executeUpdate. Statements that create a

table, alter a table, or drop a table are all examples of DDL statements and are

executed with the method executeUpdate. execute() executes an SQL statement that

is written as String object.

ResultSet provides access to a table of data generated by executing a Statement.

The table rows are retrieved in sequence. A ResultSet maintains a cursor pointing

to its current row of data. The next() method is used to successively step through

the rows of the tabular results.

ResultSetMetaData-

Interface holds information on the types and properties of the columns in a

ResultSet. It is constructed from the Connection object.

DATABASE CONNECTIONS-

Simple four steps for create database connection:

Page 26: Tuhin Report

Import JDBC Packages: Add import statements in Java program to import required

classes in your Java code.

import java.sql.* ; // for standard JDBC programs

Register JDBC Driver: This step causes the JVM to load the desired driver

implementation into memory so it can fulfill your JDBC requests.

Database URL Formulation: This is to create a properly formatted address that points

to the database to which you wish to connect.

Create Connection Object: Finally, code a call to the DriverManager object's

getConnection( ) method to establish actual database connection.

CLOSING JDBC CONNECTIONS:

At the end of your JDBC program, it is required explicitly close all the

connections to the database to end each database session. However, if you forget, Java's

garbage collector will close the connection when it cleans up stale objects.

Relying on garbage collection, especially in database programming, is very poor

programming practice. You should make a habit of always closing the connection with the

close() method associated with connection object.

To ensure that a connection is closed, you could provide a finally block in your code. A

finally block always executes, regardless if an exception occurs or not.

To close above opened connection you should call close() method as follows:

conn.close();

Page 27: Tuhin Report

Chapter-5

OVERVIEW OF PROJECT

“Library Management” contains all the details regarding a library. The project created by using

Java. The main components used are:

• JAVA as language

• SQL Connectivity

The project will have two panels i.e. Student Panel and Management Panel. In Student Panel there

will be all information regarding a student belonging to particular institute for example book records,

issued books, submitted books, student’s semester etc., while in Management Panel management will

have info regarding all library like books detail, book records, students info etc. .

OBJECTIVE:

The main objective of the application is to automate the existing system of manually

maintain the records of the Book Issue, Book Return from the student, Stock Maintenance,

catalogue and Book Search to be computerized. So the Book Issue, Return, Searching will be

faster.

SCOPE:

This application can be used by any Library to automate and make it easy the process

of manually Maintaining the records related to the subject, Maintaining the stock and Book

Issues.

PRODUCT FEATURES:

There is one users who will be using this product.

Page 28: Tuhin Report

The features that are available to the librarian are :-

• Librarian who will be acting as the administrator

• A librarian can issue a book to the student

• Can view the different categories of books available in the Library.

• Can view the List of books available in each category

• Can take the book returned from students

• Add books and their information of the books to the database

• Can check the report of the issued Books.

• Can Make entry of waiting student for a Books.

Further there are two section in this product :-

STUDENT PANEL

MANAGEMENT PANEL

Here STUDENT PANEL contains :-

Add new Student

Delete Student

Edit Student Record

Issue Book

Submit Book

And Student Detail showing details of student including Book issued and submitted on

the name of that student

Here MANAGEMENT PANEL contains:-

Add new Book

Edit Book Detail

Book query

Waiting Entry

Delete Complete Record of Students(if they are Passing out from School/college)

PRODUCT SKELTON:

Page 29: Tuhin Report

SYSTEM DESIGN:

o INPUT DESIGN:

Input design is the process of converting user-oriented input to a computer

based format. Input design is a part of overall system design, which requires very

careful attention.Often the collection of input data is the most expensive part of the

system.

The main objectives of the input design are …

1. Produce cost effective method of input

2. Achieve highest possible level of accuracy

3. Ensure that the input is acceptable to and understood by the staff.

login

Student Panel

Add Student

Delete Student

Edit Student Record

Book Issue

Book Submission

Student Detail

Management Panel

Add New Book

Edit Book Detail

Book Query

Waiting Entry

Delete Complete Student Record

Search Book

Page 30: Tuhin Report

The goal of designing input data is to make enter easy, logical and free from

errors as possible. The entering data entry operators need to know the allocated space

for each field; field sequence and which must match with that in the source document.

The format in which the data fields are entered should be given in the input

form .Here data entry is online/offline, it makes use of processor that accepts

commands and data from the operator through a keyboard. The input required is

analyzed by the processor. It is then accepted or rejected. Input stages include the

following processes:-

Data Recording

Data Transcription

Data Conversion

Data Verification

Data Control

Data Transmission

Data Correction

One of the aims of the system analyst must be to select data capture method and

devices, which reduce the number of stages so as to reduce both the changes of errors

and the cost .Input types, can be characterized as.

External

Internal

Operational

Computerized

Interactive

Page 31: Tuhin Report

Input files can exist in document form before being input to the computer. Input design is

rather complex since it involves procedures for capturing data as well as inputting it to the

computer.

o OUTPUT DESIGN:

Outputs from computer systems are required primarily to communicate the results

of processing to users. They are also used to provide a permanent copy of these result for

latter consultation .Computer output is the most important and direct source of

information to the users. Designing computer output should proceed in an organized well

through out the manner. The right output must be available for the people who find the

system easy to use.

The outputs have been defined during the logical design stage. If not, they should defined

at the beginning of the output designing terms of types of output connect, format,

response etc,

Various types of outputs are

External outputs

Internal outputs

Operational outputs

Interactive outputs

Turn around outputs

All screens are informative and interactive in such a way that the user can full fill his requirements through asking queries.

o DATABASE DESIGN:

The general theme behind a database is to handle information as an integrated

whole.A database is a collection of interrelated data stored with minimum redundancy to

serve many users quickly and effectively. After designing input and output, the analyst

must concentrate on database design or how data should be organized around user

Page 32: Tuhin Report

requirements. The general objective is to make information access, easy quick,

inexpensive and flexible for other users. During database design the following Objectives

are concerned:-

Controlled Redundancy

Data independence

Accurate and integrating

More information at low cost

Recovery from failure

Privacy and security

o DATA FLOW DIAGRAM:

DFDs show the flow of data from external entities into the system, showed

how the data moved from one process to another, as well as its logical storage. 

A DFD shows what kinds of data will be input to and output from the system, where

the data will come from and go to, and where the data will be stored. It does not show

information about the timing of processes, or information about whether processes

will operate in sequence or in parallel (which is shown on a flowchat).

Fig- DFD-Level 0

Page 33: Tuhin Report

Fig- DFD-Level 1

Fig- DFD-Level 2

Page 34: Tuhin Report

o ENTITY-RELATIONSHIP DIAGRAM:

An entity-relationship diagram is a data modelling technique that creates a

graphical representation of the entities, and the relationships between entities, within

an information system. It is clear that the physical objects from the previous section –

the member, books, library – correspond to entities in the Entity-Relationship model,

and the operations to be done those entities – holds, checkouts, and so on –

correspond to relationships. However, a good design will minimize redundancy and

attempt to store all the required information in as small a space as possible.

Fig.- Entity Relationship Diagram Of Library Management.

Page 35: Tuhin Report

SOFTWARE TESTING

Is the menu bar displayed in the appropriate contested some system related features

included either in menus or tools? Do pull –Down menu operation and Tool-bars work

properly? Are all menu function and pull down sub function properly listed ?; Is it possible to

invoke each menu function using a logical assumptions that if all parts of the system are

correct, the goal will be successfully achieved .? In adequate testing or non-testing will leads

to errors that may appear few months later.

This create two problem

1) Time delay between the cause and appearance of the problem.

2) The effect of the system errors on files and records within the system

The purpose of the system testing is to consider all the likely variations to which it will be

suggested and push the systems to limits. The testing process focuses on the logical intervals

of the software ensuring that all statements have been tested and on functional interval is

conducting tests to uncover errors and ensure that defined input will produce actual results

that agree with the required results.

Program level testing, modules level testing integrated and carried out.

INTEGRATION TESTING:

“Unit testing” focuses on testing a unit of the code. “Integration testing” is the next level of

testing. This level of testing‟ focuses on testing the integration of “units of code” or components.

The Library Management System was tested as a whole.

There are two major type of testing they are

1) White Box Testing.

2) Black Box Testing.

White Box Testing:

White box sometimes called “Glass box testing” is a test case design uses the

control structure of the procedural design to drive test case. Using white box testing

methods, the following tests were made on the system

A) All independent paths within a module have been exercised once. In our system,

ensuring that case was selected and executed checked all case structures. The bugs

that were prevailing in some part of the code where fixed

Page 36: Tuhin Report

B) All logical decisions were checked for the truth and falsity of the values.

Black box Testing:

Black box testing focuses on the functional requirements of the software.

This is black box testing enables the software engineering to derive a set of input

conditions that will fully exercise all functional requirements for a program. Black

box testing is not an alternative to white box testing rather it is complementary

approach that is likely to uncover a different class of errors that white box methods

like..

1) Interface errors

2) Performance in data structure

3) Performance errors

4) Initializing and termination errors

Page 37: Tuhin Report

Chapter-6

SNAP SHOTS

MAIN PANEL

Page 38: Tuhin Report

LOGIN PANEL:

Page 39: Tuhin Report

ERROR IN LOGIN:

Page 40: Tuhin Report

ADMIN PANEL CONSISTING TWO MAIN PANEL:

Student Panel

Management Panel

Page 41: Tuhin Report

STUDENT PANEL:

Page 42: Tuhin Report

MANAGEMENT PANEL:

Page 43: Tuhin Report

Chapter 7

TABLES

Table Name: Admin

------------------------------------------------------------------------------------------------

Column Name Type

------------------------------------------------------------------------------------------------

User_Name Text

Password Text

Table Name: Student

---------------------------------------------------------------------------------------------------------------

Column Name Type

------------------------------------------------------------------------------------------------

SNO Number

STUDENT_ID Text

STUDENT_NAME Text

GENDER Text

EMAIL_ID Text

MOBILE_NO Text

BRANCH Text

STUDENT_YEAR Number

SEMESTER Number

Page 44: Tuhin Report

Table Name: Book

---------------------------------------------------------------------------------------------------------

Column Name Type

---------------------------------------------------------------------------------------------------------

SNO Number

BOOK_ID Text

BOOK_NAME Text

AUTHOR Text

ISBN_NUMBER Text

CATEGORY Text

Table Name: StudentRecord

-----------------------------------------------------------------------------------------------------------

Column Name Type

-----------------------------------------------------------------------------------------------------------

STUDENT_ID Text

BOOK_NAME Text

DOI Text

DOS Text

Table Name: Waiting List

----------------------------------------------------------------------------------------------------------

Column Name Type

-----------------------------------------------------------------------------------------------------------

STUDENT_ID Text

BOOK_NAME Text

Page 45: Tuhin Report

7.5 Table Name: Alert

------------------------------------------------------------------------------------------------

Column Name Type

------------------------------------------------------------------------------------------------

STUDENT_ID Text

FINE Number

WARNING Number

Page 46: Tuhin Report

CONCLUSION

The project library management is completed, satisfying the required design specifications. This

software provides a user-friendly interface. This software is developed with modular approach. Thus

the software has fulfilled all the objectives identified and is able to replace the existing system. The

constraints are met and overcome successfully. The system is designed as like it was decided in the

design phase. This software has a user-friendly screen that enables the user to use without any

inconvenience. The software provides facility admin to login . This software provides the facility to

keep all records up to date . All modules in the software have been tested with valid data and invalid

data and everything work successfully. Hence the software has proved to work efficiently.

Page 47: Tuhin Report

BIBLIOGRAPHY

1. Google Search Engine http://www.google.com

2. Wikipedia http://en.wikipedia.org

3. http://www.wifiduniya.com

4. Black Book of Java

5. The Complete Reference J2EE by Keogh