You are on page 1of 35

A

MINI PROJECT REPORT ON (SIZE 16)

ATTENDENCE MANAGEMENT SYSTEM


Submitted in partial fulfillment of the requirement
for the award of the degree of

BACHELOR OF TECHNOLOGY (14)


IN
COMPUTER SCIENCE AND ENGINEERING

By (12)
M.Vivek sai rohit - 16P61A05
K.Anvesh - 17P65A0501
P. Yeshwanth Reddy - 16P61A05

Under the guidance of


Yamini
Designation

VIGNANA BHARATHI INSTITUTE OF TECHNOLOGY


(A UGC Autonomous Institution, Approved by AICTE, Affiliated to JNTUH,
Kukatpally
Accredited by National Board of Accreditation (NBA), National Assessment
and Accreditation Council (NAAC)) Aushapur (V), Ghatkesar (M),
Medchal(dist.).

2019-2020
(A UGC Autonomous Institution, Approved by AICTE, Affiliated to JNTUH,
Kukatpally
Accredited by National Board of Accreditation (NBA),
National Assessment and Accreditation Council (NAAC))

DEPARTMENT OF COMPUTER SCIENCE AND


ENGINEERING

CERTIFICATE

This is to certify that the mini project report titled “ATTENDENCE


MANAGEMENT SYSTEM” is being submitted by M.VIVEK SAI
ROHIT(16P61A05)K.ANVESH(17P65A0501), YASHWANTH
REDDY(16P61A0552) in B. Tech IV-I semester Computer Science &
Engineering is a record of bonafide work carried out by them. The results
embodied in this report have not been submitted to any other University for
the award of any degree.

INTERNAL GUIDE HEAD OF THE DEPARTMENT


SMT.YAMINI MADAM Dr.K.Sreenivasa Rao

EXTERNAL EXAMINER

DATE
DECLARATION

We,(NAMES) bearing hall ticket number (ROLL NOs), ___


_____ ____, hereby declare that the project report entitled “TITLE”
under the guidance of GUIDE NAME, Department of Computer
Science And Engineering, Vignana Bharathi Institute of
Technology, Hyderabad, is submitted to Jawaharlal Nehru
Technological University Hyderabad, Kukatpally, Hyderabad in
partial fulfillment of the requirements for the award of the degree of
Bachelor of Technology in Computer Science And Engineering.

This is a record of bonafide work carried out by us and the


results embodied in this project have not been reproduced or copied
from any source. The results embodied in this project report have not
been submitted to any other university or institute for the award of
any other degree or diploma.

Student Names & Roll No’s


ACKNOWLEDGEMENT(16)

Self-confidence, hard work, commitment and planning are essential to


carry-out any task. Possessing these qualities is sheer waste, if an opportunity
does not exist. So, we whole-heartedly thank Mr. Dr.G. AMARENDER RAO,
Principal, and Dr.K.Sreenivasa Rao, Head of the Department, Computer
Science and Engineering for their encouragement and support and guidance in
carrying out the project.

We thank our Project Guide, Guide name for providing us with an


excellent project and guiding us in completing our project successfully.

We would also like to thank our project coordinator Coordinator name


for his/her valuable advice and suggestions from time to time and for being a
constant source of inspiration to us.

We would also like to express our sincere thanks to all the staff of
Computer Science and Engineering, VBIT, for their kind cooperation and
timely help during the course of our project. Finally, we would like to thank our
parents and friends who have always stood by us whenever we were in need of
them.
CONTENTS

ABSTRACT
LIST OF FIGURES
LIST OF TABLES
1. Design of test cases and database tables
LIST OF SCREENS

CHAPTER 1
INTRODUCTION
Describe introduction about your project (or)
1.1 Problem Statement
1.2. Existing system
1.3 Proposed system

CHAPTER 2
LITERATURE SURVEY

CHAPTER 3
SYSTEM ANALYSIS
3.1Feasibility Study
3.1.1 Economic Feasibility
3.1.2 Technical Feasibility
3.1.3 Social Feasibility
3.2 Systems Requirement
3.2.1 Software requirement
3.2.2 Hardware requirement
3.3 Functional Requirements (Modules)
3.4 Non-Functional Requirements
CHAPTER 4
SYSTEM DESIGN
The design part must include the following items

DFDs in case of Database projects

UML diagrams. This UML diagrams must include the
following
Class Diagrams
Interaction diagrams-Sequence and Collaboration
diagrams
Object Diagrams
Usecase diagrams

Control Flow diagrams


Database Design
For database projects, the report must include the
following items.
o E-R Diagrams

CHAPTER 5
IMPLEMENTATION
Coding /Code Templates
Consist of coding or code outline for various files
Explain each class with functionality and methods with input and
output parameters.
For Database projects, the report consisting of
o Tables – explaining all fields and their data
types
o Stored procedures (PL/SQL)

CHAPTER 6
TESTING
Design of Test Cases and Scenarios

CHAPTER 7
Output Screens
Should include all user interfaces and output screens.

Conclusion & Further Enhancements


Bibliography
ABSTRACT
The Attendance Management mainly concern with the access
control data, leave master, On-line leaves application monitoring.
Reports etc. The project deals with the attendance of the students in
College.

The flow of the project:


 Maintain the daily attendance of the student.
 Maintains the leave records of student.
 Accept the leaves online by the system.
 Late in coming monitoring(Stipulated time allotted
by management)
CHAPTER 1

INTRODUCTION

1.1.PROBLEM STATEMENT

The project will be used by the universities to share the information


among the students and staff of the universities. Previously the information
that is being shared was only on papers. Though the members have
maintained a very perfect record of the details of students and staff, the
accessibility was no ease. When students ask queries about their details or
results and their attendance they may be delayed to get the reply from the staff
and they can ask to staff of a particular university to which they belong. This
may also delay their planned schedule. Sometimes the absence of staff may
also delay in providing the information or the material that is required by the
student. The staff cannot assign their work to other staff member when they
are going to absent. The searching, downloading and uploading of materials is
alsodifficult due to storage of access amount of information in the
records.Hence to overcome the above problems a system is being developed.
This system is based on Role Based Access Control. The admin has full access
to the database and manages the information. The information of each and
every person present in that institution is added by the admin. Here every user
is provided with a unique login id and password. The staff can add the details
of the attendance and results of their respective class’s details. And they do not
have the access to delete the data directly through their profile. The students
also will be given with a unique id and password through which they can login
into the site to view their profile. In their profile they can view the details of
their attendance and results till date. Thus accessing, viewing and uploading of
materials is easy.

1.2.EXISTING SYSTEM

In existing system we do not have a common platform where we can have


details of each and every person in that institution and the records of all
ofthem are on papers only, and accessing of the information by either student
or staff is found difficult when more than one person tries to access at a time.
This is even hard for staff and management to maintain the record of members
of the institution on paper.
Disadvantages:
Sharing of large amount of information is difficult.
Though the staff have every detail of the students accessing the information at
the same time is found difficult.
Misplacing the records of the students or staff will make the data collection
difficult.
Assigning the work to another person may give errors in the data collected.
1.3.PROPOSED SYSTEM

The effective collaboration with information sharing in universities is based on


role-based access control management. There are three users- admin, student
and staff. Each user has respective unique id and password. Admin is
responsible for adding or deleting universities, viewing the universities, their
respective staff and students.
Advantages:
Large amount of information can be shared easily. As only authenticated
persons can access the system, more security is maintained.There is no delay
in providing updates and replying to the queries of the students.Searching of
information, uploading and downloading of materials is easy.
CHAPTER-2
LITERATURE SURVEY

The literature survey method is an examination of information on specific subject. It


is reviewing what is known, and not what is assumed. It aims to create the final,
precise representation of the knowledge and research-based theory available topic.
This method is going to be used due to need of gathering and processing theoretical
base. We are going to use different books and articles also other sources like tutorials
and forums. In this way by using different group of sources we can get more detail
idea about recommendation systems. There are plenty of educational institutions that
use RFID technology to record their student’s attendance. Easy connection of data
into internet make RFID technology most common technology used in recording
student attendance However, RFID technologies incur high cost and need experience
people to handle the system. Apart from that, biometrics technology is another
tremendous use of technology in the domain of attendance reporting and tracking.
Most of the biometrics technology used thumb print as sign of system entry. This
allows a fair and reliable attendance to be recorded since there is no platform for any
attendance cheating Biometric utilize the fingerprint apart from thumb print method.
Fingerprint peripheral used to record the attendance and sent the data into system
using wireless technology. Image recording is another recent method used in
recording attendance. These advanced technologies require high costing and well
trained system developer. The Design and implementation of Student Attendance
Management system based on MVC paper aims at the research of Web technology, as
well as the attendance management system based on the campus network for all
college students is implemented. The system is controlled by Web Work, while data
or status and logic process are enforced by “Action”. The system uses Multi-layer
structure of J2EE which has been realized by Free Marker, Web Work and Spring.
Three technologies have been used in page resources layer: HTML performs structure
of document, CSS defines style of document and JavaScript decides behavior of
document. The presentation layer is realized by JSP in traditional Web development.
The modules of attendance management system include importing course-plan,
adding, modifying, querying, verifying and summarizing attendance information. The
purpose of Automation of Attendance System using RFID, Biometrics, GSM Modem
with .NET framework paper is to develop a wireless system to detect and maintain the
attendance of a student and locate a student using RFID, Biometrics, GSM modem
with .net framework. For, this the students ID (identification) card is tagged with an
Radio-frequency identification (RFID) passive tag which is matched against the
database and only finalized once his fingerprint is verified using the biometric
fingerprint scanner. The guardian is intimated by a sms (short message service) sent
using the GSM (Global System for Mobile Communications) modem. RFID
transponder is installed, which will be detecting the location of the student and staff.
There will be a website through which the student, teacher and the guardians can view
the status of attendance and location of a student at present in the campus. A person
needs to be located can be done by two means that is, via the website or by sending
the roll number of the student as an sms to the GSM modem which will reply by
taking the last location stored of the student in the database. The main purpose of A
Web Enabled Secured System for Attendance Monitoring and Real Time Location
Tracking using Biometric and Radio Frequency Identification paper is to develop a
safe and secure web based attendance monitoring system using Biometrics and Radio
Frequency Identification (RFID) Technology based on multi-tier architecture, for both
computers and smart phones. The system can maintain the attendance records of both
students and faculty members of an institution. The system can also detect the current
location of the students, faculties, and other staff members anywhere within the
domain of institution campus. With the help of android application one can receive
live feeds of various campus activities, keep updated with the current topics in his/her
enrolled courses as well as track his/her friends on a real time basis. An automated
SMS service is facilitated in the system, which sends an SMS automatically to the
parents in order to notify that their ward has successfully reached the college. Parents
as well as student will be notified via e-mail, if the student is lagging behind in
attendance. There is a functionality of automatic attendance performance graph in the
system, which gives an idea of the student’s consistency in attendance throughout the
semester.In Mobile Ubiquitous Employee Attendance Monitoring System using
Wireless sensor networks paper a Mobile Ubiquitous Employee Attendance
Monitoring System (MUEAMS) is implemented with ZigBee devices to offer real
time dynamic monitor for employee presence. This study presents a scalable
architecture to integrate wireless sensor networks and mobile technologies for dealing
with attendance monitoring application in mobile ubiquitous computing
environments. The wireless communication architecture is composed of ZigBee
Sensor Network, Mobile Transfer, Middleware Web Server, and Mobile Client. The
main advantage of this architecture is that it doesn't require costly equipment or
deployment. It can be achieved in a short time and low cost. To demonstrate the
feasibility of the architecture, a Mobile Ubiquitous Employee Attendance Monitoring
System (MUEAMS) is implemented with ZigBee and Mobile devices to offer real
time dynamic monitor for employee presence. The focus A Conceptual Model for
Automated Attendance Marking System Using Facial Recognition paper is to analyze
and critically evaluate the recent attendance marking techniques using face
recognition methods. Literature review reveals the fact that the intelligent application
of iterative facial recognition techniques can make attendance management systems
more reliable. In this paper, the purpose is a conceptual model for automated
attendance system through facial recognition. The proposed model uses an integral
validation process which enhances the reliability of your model. If face recognition is
to be done to mark attendance, face detection and verification would be a challenge
for the system. Hence the implementation is a difficult task.
CHAPTER- 3

SYSTEM ANALYSIS

3.1 FEASIBILITY STUDY

A feasibility study is an evaluation of the proposal is to determine the


difficulty in carry out a task. Generally a feasibility study precedes technical
development and project implementation in other words, a feasibility study is
a evaluation (or) analysis of the potential impact of the proposed project.

3.1.1 TYPES OF FEASIBILITY


1. Technology feasibility:
The assessment is based the outline design of system required in terms
of input processes, output, fields, programs and procedures. This can be
quantified in terms of volumes of data trends, frequency of updating etc in
order to estimate whether the new system will perform adequately or not.
Technology feasibility is carried to determine whether the company has
capability in terms of software, hardware, personal and expertise the
completion of project.

2.Economic feasibility:

Economic feasibility analysis is the most frequently used method for


evaluating the effectiveness of new system, commonly cost of benefit analysis.
The procedure is to determine the benefits outweigh cost then the decision is
made to design and implemented the system entrepreneur must accurately
weigh the cost is a benefit before taking an action.

3. Legal feasibility:

Determines whether the proposed system conflicts with legal


equirements eg-a data processing system comply with a local protection acts.

4. Operating feasibility:

It is a measure how we are proposed system solves the problems and takes
advantages of the opportunity identify during scope definition and how it
satisfies the requirements identified the requirements analysis phase of system
development.

5. Scheduling feasibility:

A project will fail if it takes too long to be completion before it is used.


Typically this means estimating how long the system will take to develop and
if it can be completed in a given time period using so many methods like
payback period. Schedule feasibility is a measure how the responsible the
project timetable is.

3.2 SYSTEM REQUIREMENT

3.2.1 Software Requirement

Operating System : Windows 7


Technology : Java/J2EE (Servlets, JSP, JDBC)
Web Technologies : Html, JavaScript, CSS
Web Server : Tomcat 7.0
Database : Oracle 10g Express Edition

3.2.2Hardware Requirements:

Hardware : Pentium based systems with a minimum of P4


RAM : 1GB (minimum)

3.3 FUNCTIONAL REQUIREMENTS (Modules)

The Attendance Management mainly concern with the access control data, leave
master, On-line leaves application monitoring. Reports etc. The project deals with the
attendance of the students in College.

This application consists of following modules:

1.Admin
2.Student

Module 1: Admin

 Admin adds students and maintain all the leave details.


 Admin can edit or delete the student.

Module 2:Student

 Student can check the leave balance and apply for leaves accordingly.

 Student can check the updated timecard and leave history.

3.4 Non-Functional Requirements

3.4.1 Performance :
Easy tracking of records and updating can be done. All the requirements relating to
performance characteristics of the system are specified in the section below. There are two
types of requirements.

Static Requirements:
These requirements do not impose any constraints on the execution characteristics of the
System. They are:

Number of Terminals:
The software makes use of an underlying database that will reside at the server, while the
front end will be available online to the administrative and departmental computers as well as
students and teachers.

Number of Users:
The number of users may vary, as this software finds applications in almost all department of
the organization.

Dynamic Requirements:
These specify constraints on the execution characteristics of the system. They typically
include response time and throughout of the system. Since these factors are not applicable to
the proposed software, it will suffice if the response tine is high and the transactions are
carried out precisely and quickly.
4.4.2 Reliability
The software will not be able to connect to the centralized database in the event that the
college LAN fails or in the event of the server being down due to a hardware or software
failure.

4.4.3 Availability
The software will be available only to authorized users of the colleges like teachers to mark
the students’ attendance, student to view their enrolled course, admin to add an update
students records.

4.4.4 Security The security requirements deal with the primary security. The software
should be handled only by the administrator and authorized users. Only the administrator has
right to assign permission like creating new accounts and generating password. Only
authorized users can access the system with username and password.

4.4.5 Maintainability Backups for database are available.

4.4.6 Portability: The Software is a windows-based application and is built in VB.Net


and MYSQL so it is platform independent and is independent of operating system.
CHAPTER 4

SYSTEM DESIGN

CLASS DIAGRAM
USECASE DIAGRAM
SEQUENCE DIAGRAM
ACTIVITY DIAGRAM
CHAPTER 5
IMPLEMENTATION

INTRODUCTION TO JAVA

About Java:
Initially the language was called as “oak” but it was renamed as “java” in 1995.The
primary motivation of this language was the need for a platform-independent
(i.e. architectureneutral)language that could be used to create software to be
embedded in various consumer electronic devices.
Java is a programmer’s language
Java is cohesive and consistentExcept for those constraint imposed by the Internet
environment. Java gives theprogrammer, full control Finally Java is to Internet
Programming where c was to System Programming.
Importance of Java to the Internet
Java has had a profound effect on the Internet. This is because; java expands the
Universe of objects that can move about freely in Cyberspace. In a network, two
categories of objects are transmitted between the server and the personal computer.
They are passive information and Dynamic active programs. in the areas of Security
and probability. But Java addresses these concerns and by doing so, has opened the
door to an exciting new form of program called the Applet.
Applications and applets. An application is a program that runs on our Computer
under the operating system of that computer. It is more or less like one creating using
C or C++ .Java’s ability to create Applets makes it important. An Applet I san
application, designed to be transmitted over the Internet and executed by a Java-
compatible web browser. An applet I actually a tiny Java program, dynamically
downloaded across the network, just like an image.But the difference is, it is an
intelligent program, not just a media file. It can be react to the user input and
dynamically change.

Java Architecture
Java architecture provides a portable, robust, high performing environment for
development. Java provides portability by compiling the byte codes for the Java
Virtual Machine, which is then interpreted on each platform by the run-time
environment. Java is a dynamic system, able to load code when needed from a
machine in the same room or across the planet.
Compilation of code
When you compile the code, the Java compiler creates machine code (called byte
code)for a hypothetical machine called Java Virtual Machine(JVM). The JVM is
supposed texecuted the byte code. The JVM is created for the overcoming the issue
of probability.The code is written and compiled for one machine and interpreted on all
machines .This machine is called Java Virtual Machine.
Compiling and interpreting java source code.
During run-time the Java interpreter tricks the byte code file into thinking that it is
running on a Java Virtual Machine. In reality this could be an Intel Pentium windows
95 or sun SPARCstation running Solaris or Apple Macintosh running system and all
could receive code from any computer through internet and run the Applets. Source
Code PC compiler Macintosh compiler.
SPARC Compiler Java Byte code Platform independent Java interpreter Java
interpreter macintosh Java interpreter (SPARC).

About Servlets
INTRODUCTION
A Servlet Is a generic server extension. a Java class that can be loaded Dynamically to
expand the functionality of a server.Servlets are commonly used with web servers.
Where they can take the place CGI scripts.A servlet is similar to proprietary server
extension, except that it runs inside a Java Virtual Machine (JVM) on the server, so it
is safe and portable Servlets operate solely within the domain of the server.Unlike
CGI and Fast CGI, which use multiple processes to handle separate program or
separate requests, separate threads within web server process handle all servlets. This
means that servlets are all efficient and scalable.Servlets are portable; both across
operating systems and also across web servers. Java Servlets offer the best possible
platform for web application development.Servlets are used as replacement for CGI
scripts on a web server, they can extend any sort of server such as a mail server that
allows servletsextend its functionality perhaps by performing a virus scan on all
attached documents or handling mail filtering tasks.Servlets provide a Java-based
solution used to address the problems currently associated with doing server-side
programming including inextensible scripting solutions platform-specific
API’s and incomplete interface.Servlets are objects that conform to a specific
interface that can be plugged into a Java-based server.Servlets are to the server-side
what applets are to the server-side what applets are to the client-side-object byte codes
that can be dynamically loaded off the net. They differ form applets in than they are
faceless objects(with out graphics or a GUI component).They serve as platform
independent, dynamically loadable,plugable helper byte code objects on the
server side that can be used to dynamically extend server-side functionality.
For example an HTTP servlet can be used to generate dynamic HTML content when
you use servlets to do dynamic content you get the following advantages:
They’re faster and cleaner then CGI scripts. They use a standard API( the servlet API)
They provide all the advantages of Java (run on a variety of servers without needing
to be rewritten) Attractiveness of Servlets:
They are many features of servlets that make them easy and attractive to tuse these
include: Easily configure using the GUI-based Admin tool]Can be Loaded and
Invoked from a local disk or remotely across the network.
Can be linked together or chained, so that on servlet can call another servlet, or
several servlets in sequence. Can be called dynamically from within HTML, pages
using server-side include-tags. Are secure-even when downloading across the
network, the servlet security model and servlet and box protect your system from
unfriendly behavior.Advantages of the servlet API:
One of the great advantages of the servlet API is protocol independent. It assumes
nothing about:
How it is loaded
The server environment
These quantities are important, becauseembedded in many different kinds of
servers.There are other advantages to the servelt API as well These include: It’s
extensible-you can inherit all y available to you It’s simple small, maintain services
between requests. Servlets are fast. Since servlets only better performance over their
CGI counterparts. Servlets are platform independent.
Servlets are extensible Java is a ro which easily can be extended to suit your needs.
Servlets are secure.Servlets are used with a variety of client.
Servlets are classes and interfaces. javax.servlet.http.The java.servlet package
contains classes t support generic, protocol-independent servlets.The classes in the
javax.servelt.http package To and HTTP specific functionality extend these classes
Every servlet must implement the javax.servelt extending one of two
classes.javax.servlet.GenericServlet or javax.servlet.http.HttpServlet. Aprotocol-
independent servlet should subclass Generic-Servlet.while an Http servlet should
subclass Http Servlet, which is itself a subclass of Generic-servlet with added HTTP-
specific functionality. Unlike a java program, a servlet does not have a main()
method,Instead the server in the process of handling requests invoke certain methods
of a servlet.Each time the server dispatches a request to a servlet, it invokes the
servelts Service() method,A generic servlet should override its service() method to
handle requests as appropriate for the servlet. The service() accepts two parameters a
request object and a response object .The request object tells the servlet about the
request, while the response object is used to return a response.
In Contrast.anHttp servlet usually does not override the service() method.Instead it
overrides doGet() to handle GET requests and doPost() to handle Post requests. An
Http servlet can override either or both of these modules the service() method of
HttpServlet handles the setup and dispatching to all the doXXX() methods.which is
why it usually should not be overridden.
The remainders in the javax.servlet and javax.servlet.http.package are largely support
classes.The ServletRequest and ServletResponse classes in javax.servlet provide
access to generic server requests and responses while HttpServletRequest and
HttpServletResponse classes in javax.servlet provide access to generic server requests
and responses while HttpServletRequest and HttpServletResponse in
javax.servlet.http provide access a HTTP requests and responses . The
javax.servlet.http provide contains an HttpSession class that provides built-in session
tracking functionality and Cookie class that allows quickly setup and processing
HttpCookies.

Loading Servlets:
Servlets can be loaded from their places. From a directory that is on the
CLASSPATH. The CLASSPATH of the JavaWebServer includes service
root/classes/, which is where the system classes reside From the
<SERVICE_ROOT/servlets/directory.This is not in the server’s classpath. A class
loader is used to create servlets form this directory.New servlets can be added-
existing servlets can be recompiled and the server will notice these changes. From a
remote location.For this a code base like http://nine.eng/classes/foo/ is required in
addtion to the servlet’s class name.Refer to the admin Gui docs on servlet section to
see how to set this up.Loading Remote Servlets.
Remote servlets can be loaded by:Configuring the admin Tool to setup automatic
loading of remote servlets. Selectiong up server side include tags in .html files
Defining a filter chain Configuration.

About JDBC
What is JDBC?
Any relational database. One can write a single program using the JDBC API,and the
JDBC is a Java Api for executing SQL,Statements(As a point of interest JDBC is
trademarked name and is not an acronym; nevertheless,Jdbc is often thought of as
standing for Java DatabasemConnectivity. It consists of a set of classes and interfaces
written in the Java Programming language.JDBC provides a standard API for
tool/database developers and makes it possible to write database applications using a
pure Java API Using JDBC, it is easy to send SQL statements to virtually program
will be able to send SQL .statements to the appropriate database. The Combination of
Java and JDBC lets a programmer writes it once and run it anywhere.

What Does JDBC Do?


Simply put,JDBC makes it possible to do three things
o Establish a connection with a database
o Send SQL statements
o Process the results
o JDBC Driver Types
o The JDBC drivers that we are aware of this time fit into one of four categories
o JDBC-ODBC Bridge plus ODBC driver
o Native-API party-java driver
o JDBC-Net pure java driver
o Native-protocol pure Java driver
An individual database system is accessed via a specific JDBC driver that implements
the java.sql.Driver interface. Drivers exist for nearly all-popular RDBMS systems,
through few are available for free. Sun bundles a free JDBC-ODBC bridge driver
with the JDK to allow access to a standard ODBC,data sources, such as a Microsoft
Access database, Sun advises against using the bridge driver for anything other than
development and very limited development.
JDBC drivers are available for most database platforms, from a number of vendors
and in a number of different flavours. There are four driver categories.

Type 01-JDBC-ODBC Bridge Driver


Type 01 drivers use a bridge technology to connect a java client to an ODBC database
service. Sun’s JDBC-ODBC bridge is the most common type 01 driver. These drivers
implemented using native code.
Type 02-Native-API party-java Driver
Type 02 drivers wrap a thin layer of java around database-specific native code
libraries for Oracle databases, the native code libraries might be based on the
OCI(Oracle call Interface) libraries, which were originally designed for c/c++
programmers, Because type-02 drivers are implemented using native code. in some
cases they have better performance than their all-java counter parts. They add an
element of risk, however, because a defect in a driver’s native code section can crash
the entire server.
Type 03-Net-Protocol All-Java Driver
Type 03 drivers communicate via a generic network protocol to a piece of custom
middleware. The middleware component might use any type of driver to provide the
actual database access. These drivers are all java, which makes them useful for applet
deployment and safe for servlet deployment.
Type-04-native-protocol All-java Driver
Type o4 drivers are the most direct of the lot. Written entirely in java, Type 04 drivers
understand database-specific networking. protocols and can access the database
directlywithout any additional software.
JDBC-ODBC Bridge
If possible use a Pure Java JDBC driver instead of the Bridge and an ODBC driver.
This completely eliminates the client configuration required by ODBC.It also
eliminates the potential that the Java VM could be corrupted by an error in the native
code brought in by the Bridge(that is, the Bridge native library, the ODBC driver
manager library, library, the ODBC driver library, and the database client library)

WHAT IS The JDBC-ODBE Bridge ?


The JDBC-ODBC Bridge is a Jdbc driver, which implements JDBC operations by
translating them into ODBC operations. To ODBC it appears as a normal application
program. The Bridge is implemented as the sun.jdbc.odbc Java package and contains
a native library used to access ODBC.The Bridge is joint development of Intersolv
and Java Soft.

About Oracle
Oracle is a relational database management system, which organizes data in the form
of tables. Oracle is one of many database servers based on RDBMS model, which
manages a seer of data that attends three specific things-data structures, data integrity
and datamanipulation.With oracle cooperative server technology we can realize the
benefits of open,relational systems for all the applications. Oracle makes efficient use
of all systems resources, on all hardware architecture; to deliver unmatched
performance, price performance and scalability. Any DBMS to be called as RDBMS
has to satisfy Dr.E.F.Codd’s rules.

Features of Oracle:
Portable:
The Oracle RDBMS is available on wide range of platforms ranging from PCs to
super computers and as a multi user loadable module for Novel NetWare, if you
develop application on system you can run the same application on other systems
without any modifications.
Compatible:
Oracle commands can be used for communicating with IBM DB2 mainframe
RDBMS that is different from Oracle, which is Oracle compatible with DB2. Oracle
RDBMS is a high performance fault tolerant DBMS, which is specially designed for
online transaction processing and for handling large database applications.
Multithreaded Server Architecture. Oracle adaptable multithreaded server architecture
delivers scalable high performance for very large number of users on all hardware
architecture including symmetric multiprocessors(sumps) and loosely coupled
multiprocessors. Performance is achieved by eliminating CPU, I/O,
memory and operating system bottlenecks and by optimizing the Oracle DBMS server
code to eliminate all internal bottlenecks.
Oracle has become the most popular RDBMS in the market because of its ease of use
• Client/server architecture.
• Data independence.
• Ensuring data integrity and data security.
• Managing data concurrency.
• Parallel processing support for speed up data entry and online transaction
processing used for applications.
• DB procedures, functions and packages.

Dr.E.F.Codd’s Rules
These rules are used for valuating a product to be called as relational database
management systems. Out of 12 rules, a RDBMS product should satisfy at least 8
rules + rule called rule 0 that must be satisfied.
RULE 0: Foundation Rule
For any system to be advertised as, or claimed to be relational DBMS should manage
database with in it self, with out using an external language.
RULE 1: Information Rule
All information in relational database is represented at logical level in only one way
as values in tables.
RULE 2: Guaranteed Access
Each and every data in a relational database is guaranteed to be logically accessibility
by using to a combination of table name, primary key value and column name.
RULE 3: Systematic Treatment of Null Values
Null values are supported for representing missing information and inapplicable
information. They must be handled in systematic way, independent of data types.
RULE 4: Dynamic Online Catalog based Relation Model
The database description is represented at the logical level in the same way as
ordinary data so that authorized users can apply the same relational language to its
interrogation as they do to the regular data.
RULE 5: Comprehensive Data Sub Language
A relational system may support several languages and various models of terminal
use. However there must be one language whose statement can express all of the
following: Data Definitions, View Definitions, Data Manipulations, Integrity,
Constraints, Authorization and transaction boundaries.
RULE 6: View Updating
Any view that is theoretical can be updatable if changes can be made to the tables that
effect the desired changes in the view.
RULE 7: High level Update, Insert and Delete
The capability of handling a base relational or derived relational as a single operand
applies not only retrieval of data also to its insertion, updating, and deletion.
RULE 8: Physical Data Independence
Application program and terminal activities remain logically unimpaired whenever
any changes are made in either storage representation or access method.
RULE 9: Logical Data Independence
Application programs and terminal activities remain logically unimpaired whenever
any changes are made in either storage representation or access methods.
RULE 10: Integrity Independence
Integrity constraints specific to particular database must be definable in the relational
data stored in the catalog, not in application program.
RULE 11: Distributed Independence
Whether or not a system supports database distribution, it must have a data sub-
language that can support distributed databases without changing the application
program.

RULE 12: Non Sub-Version


If a relational system has low level language, that low language cannot use to
subversion or by pass the integrity rules and constraints expressed in the higher level
relational language.

Oracle supports the following Codd’s Rules


Rule 1: Information Rule (Representation of information)-YES.
Rule 2: Guaranteed Access-YES.
Rule 3: Systematic treatment of Null values-YES.
Rule 4: Dynamic on-line catalog-based Relational Model-YES.
Rule 5: Comprehensive data sub language-YES.
Rule 6: View Updating-PARTIAL.
Rule 7: High-level Update, Insert and Delete-YES.
Rule 8: Physical data Independence-PARTIAL.
Rule 9: Logical data Independence-PARTIAL.
Rule 10: Integrity Independence-PARTIAL.
Rule 11: Distributed Independence-YES.
Rule 12: Non-subversion-YES.

About HTML
Hypertext Markup Language(HTML), the languages of the world wide
web(WWW), allows users to produces web pages that included text, graphics and
pointer to other web pages(Hyperlinks).
HTML is not a programming language but it is an application of ISO Standard
8879,SGML(Standard Generalized Markup Language),but Specialized to hypertext
and adapted to the Web. The idea behind Hypertext one point to another point. We
can navigate through the information based on out interest and preference.
A markup language is simply a series of items enclosed within the elements should be
displayed. Hyperlinks are underlined or emphasized works that load to other
documents or some portions of the same document.
Html can be used to display any type of document on the host computer, which can be
S geographically at a different location. It is a versatile language and can be used on
any platform or desktop
HTML provides tags(special codes) to make the document look attractive.
HTML provides are not case-sensitive. Using graphics,fonts,different sizes, color,
etc.. can enhance the presentation of the document. Anything
That is not a tag is part of the document it self.
Basic Html Tags:
<!-- --> Specific Comments.
<A>………</A> Creates Hypertext links.
<B>………</B> Creates hypertext links.
<Big>……..</Big> Formats text in large-font
<Body>…….</Body> contains all tags and text in the Html-document
<Center>……</Center> Creates Text

20
<DD>………..</DD> Definition of a term.
<TABLE>……</TABLE> creates table
<Td>………..</Td> indicates table data in a table.
<Tr>………..</Tr> designates a table row
<Th>……….</Th> creates a heading in a table.

ADVANTAGES

A HTML document is small and hence easy to send over the net.It is small because it
does not include formatted information.
HTML is platform independent
HTML tags are not case-sensitive.

About Java Script


The Java Script Language. JavaScript is a compact , object-based scripting language
for developing client and server internet applications. Netscape Navigator 2.0
interprets JavaScript statements embedded directly in an HTML page. and Livewire
enables you to create server-based applications similar to common gateway
interface(cgi) programs. In a client application for Navigator, JavaScript statements
embedded in an HTML Page can recognize and respond to user events such as mouse
clicks form Input, and page navigation.
For example, you can write a JavaScript function to verify that users enter valid
information into a form requesting a telephone number or zip code . Without any
network transmission, an Html page with embedded Java Script can interpret the
entered text and alert the user with a message dialog if the input is invalid or you can
use JavaScript to perform an action (such as play an audio file, execute an applet, or
communicate with a plug-in) in response to the user opening or exiting a page.

INTRODUCTION TO SQL SERVER


Microsoft SQL server is a relational data base server, developed by Microsoft: It is a
software product whose primary function to store and retrieve data a s requested by
other software applications, be it those on the same computer or those on running on
other computers across the network (including the internet). These are at least a dozen
different editions of Microsoft SQL server aimed at different audiences and for
different workloads (ranging from small applications that store and retrieve data on
the same computer, to the millions of users and computers that access huge amount of
data from the internet at the same time).
DATA STORAGE
The main unit of data storage is a data base, which is a collection of tables with typed
columns. SQL server supports different data types, including primary types such as
integer, float, decimal, char (including characters strings), Varchar (variable character
strings), binary (for unstructured blobs of data), text (for textual data) among others.
The rounding of floats to integers uses either symmetric arithmetic rounding or
symmetric round down (fix) depending on arguments: SELECT Round (2.5,0) gives
3.Microsoft SQL server also allows user define composite types to be defined and
used. It also makes server statistics available as virtual cables and views. In addition
to tables, a data base can also contain other objects including views, stored
procedures, indexes and constraints along with transaction log.

DATA RETRIEVAL
The main mode of retrieving data from an SQL Server database is querying for it. He
query is expressed using a variant of SQL called T-SQL, a dialect Microsoft SQL
Server share with with Sybase SQL Server due to its legacy. The query declaratively
specifies what is to be retrieved. It is processed by the by the query processor, which
figures out the sequence of steps that will be necessary to retrieve the requested data.
The sequence of actions necessary to execute a query is called a query plan. There
might be multiple ways to process the same query.
For example, for a query that contains a join statement and a select statement,
executing join on both the tables and then executing select on the results would give
the same result as selecting from each table and then executing the join, but result in
different execution plans. In such case, SQL Server chooses the plan that is expected
to yeeld the results in the shortest possible time. This is called query optimization and
is performed by the query processor itself.
SQL Server also allows stored procedures to be defined. Stored procedures are
parameterized T-SQL queries, that are stored in the serve itself (and not issued by the
client application as is the case with general queries). Stored procedures can accept
values sent by the client as input parameters, and send back results as output
parameters. They can call defined function, and other stored procedures, including the
same stored procedure (up to a set number of times). They can be selectively provided
access to. Unlike other queries, stored procedures have an associate nam, which is
used at runtime to resolve into the actual queries. Also because the code need not be
sent from the client every time (as it can be accessed by name), it reduces
network traffic and some what improves performance. Execution plans for stored
procedures are also cached as necessary.
CHAPTER 6
TESTING

INTRODUCTION:
Software testing is a critical element of software quality assurance and represents the
ultimate review of specification, design and coding. In fact, testing is the one step in
the software engineering process that could be viewed as destructive rather than
constructive.
A strategy for software testing integrates software test case design methods into a
well-planned series of steps that results in the successful construction of software.
Testing is the ser of activities that can be planned in advanced and conducted
simultaneously. The underlying motivation of program testing to affirm software
quality with methods that can economically and effectively is applied to both strategic
to both large and small-scale systems.

The following are the testing objectives:


Testing is a process executing a program with the intent of finding an error.
A good test has a high probability of finding an as yet undiscovered error.
A successful test is one that uncovers an as yet undiscovered error.

DESIGN OF TEST CASES AND SCENARIOS:


The objective is to learn tests that systematically uncover different classes
of errors and do so with a minimum amount of time and effort. Testing cannot show
the absence of defects, it can only show that software defects are present.
Unit Testing:
Interface.
Number of input characters should be equal to number of arguments.
Parameters and arguments attributes must match.
Parameters passed should be in correct order.
Global variable definitions consistent across module.
If module does I/O.
File attribute should be correct.
Open/Close statements must be correct.
Format specifications should match I/O statements.
Buffer size should match record size.
Files should be opened before use.
End of file condition should be handled.
I/O errors should be handled.
Any textual errors in output information must be checked.
Local Data Structures (common source of errors).
Improper or inconsistent typing.
Erroneous initializing or default values.
Incorrect variable names.
Inconsistent data types.
Overflow, underflow, address exception.
Boundary conditions and independent paths.
Error handling.
Error description unintelligible.
Error noted does not correspond to error encountered.
Error condition handled by system run-time before error handler gets control.
Exception condition processing incorrect.

Integration Testing:
Module integrated by moving down the program design hierarchy. Can use depth first
or breadth first top down integration verifies major control and decision points early
in design process. Top-level structure tested most. Depth first implementation allows
a complete function to be implemented, tested and demonstrated and does depth first
implementation of critical function early. Top down integration forced (to some
extend) by some development tools in program with graphical user interfaces. Begin
construction and testing with atomic modules (lowest level modules).
Bottom up integration testing as its name implies being construction and testing with
atomic modules. Because modules are integrated from the bottom up, processing
required for module subordinate to a given level is always available and the need for
stubs is eliminated.

Top-Down Integration:
Top-Down Integration testing is an incremental approach to construction of program
structure. Modules are integrated by moving download through the computer
hierarchy, beginning with the main control module.
The Top-Down integration process is performed in the following five steps:
The main control module is used as a test driver and subs are substituted for all the
components directly subordinate to the main control module.
Depending on the integration approach selected, subordinate stubs are replaced one at
a time with actual components. Tests are conducted as each component is integrated.
On completion of each of test, another stub is replaced with the real components.
Regression testing may be conducted to ensure that new errors have not been
introduced.
Bottom-Up Integration:
Bottom-Up Integration testing as its name implies, being construction as testing with
atomic modules because components are integrated from the bottom up, processing
required for components subordinate to a given level is always available and for stuns
is eliminated. The Bottom-Up Integration is performed in the following four steps:
Low-Level components are combined into clusters that perform a specific software
stub function. Driver is written to coordinate test case input and output.
The cluster is tested.

TEST CASES AND SCENERIOS:


A TEST Plan is a systematic approach to test a system as a machine or software. The
plane typically contains a detailed understanding of what the eventual work flow will
be UINT LEVEL plan for JOB ad.

Test Report and Results:


TEST REPORT NO 1
PROJECT NAME EFFECTIVE COLLABORATION WITH
INFORMATION SHARING IN VIRTUAL
UNIVERSITIES
MODULE NAME STUDENT REGISTRATION
FORM NAME REGISTRATION
UNIT NAME USER NAME & DETAILS OF STUDENTS
CHECK ATTENDANCE ON CLICKING SUBMIT BUTTON AFTER
PROVIDING YOUR PARTICULAR
ACCOUNT WILL BE CREATED AND YOU
CAN LOGIN TO THE SITE.

TEST PLAN 1:
Project Name: EFFECTIVE COLLABORATION WITH INFORMATION
SHARING IN
VIRTUAL UNIVERSITIES.
Module Name: STUDENT Module.
Unit Name: User Name.
Test Result: The User Name Textbox is tested and verified.
Test Plan (Unit Module/Test Integration)
Test plan for EFFECTIVE COLLABORATION WITH INFORMATION SHARING
IN
VIRTUAL UNIVERSITIES.
Unit ID: LOGIN.
Test Case ID: Login Page.
Test Type: Unit Case.
Form Name: LOGIN.
Base Table: ATTENDANCE
PURPOSE:
Registration table is used for store the details of registered members details and along
with their Username and Password. By using these details the administrator can
perform the operations.

TEST CASE DESCRIPTION:


STUDENT ID varchar (40), PRIMARY KEY
Test Data
SNO INPUT SPECIFICATION EXPECTED
RESULT/OUTPUT

1. Column Name: User Id


Valid Input: If the User id
valid along with password
then the form will be
navigated to allotted page.
Invalid Input: If the User
Name should be reentered.

Valid Output: If the User


Name and Password are
correct then form navigation
to home page.
Invalid Output: If the User
Name is incorrect error
message is displayed as “User
Invalid” and it will ask for
enter of User Id and Password.

TEST COMPLETION CRITERIA:


When Faculty adds the attendance and students checks it and it is correct test is
completed.

VALIDATION TESTING:
Validation succeeds when system functions in a manner that can be reasonably by the
end-user.
This is achieved through a series of black-test that demonstrate with requirements.
There are two tests for system conduction for the system validation:
Alpha Testing.
A customer conducts it at the developer’s site. The software is used in a nature setting
with the developer “looking over the shoulder” of the user and recording errors and
usage
problems.
Beta Testing
This test is conducted at one or more users sited by the end user of the software. Here
the
developer generally not presents. Therefore, the beta test in a “line” application of the
software in an environment that can’t be controlled by the developer.
System Testing:
Once the software product is developed, it is thoroughly tested and it is delivered to
the users.
Now, it has to be tested by developing it on the system i.e., to what the given software
is
comfortable to the environment. The software engineer should consider these issues
during early
stages of software development to release himself from the problems which are
encountered after
completion of the software. Hence, the tests conducted to ensure that the software is
comfortable
with the system, where it is deployed is referred as “System Testing”.
Recovery Testing
It is often a nature fact that certain errors may corrupt the system or may make the
system
not to function properly to a stipulated period of time. Hence, recovery testing is the
process which given software id exposed to failures and it is tested to see its recovery
capabilities.
Usually the recovery can be of two types:
Automatic through human intervention.
Recovery through human intervention.
During automatic recovery the software itself recovered. Sometimes requires certain
addition support like system restart, reutilization, data recovery, etc., for tis normal
execution when the system requires human intervention in order to recover from such
recovery is referred as recovery through human intervention. Here, mean-time-to-
repair is
a value which is calculated to ensure that the software gets recovered within
acceptable
span of time.
Security testing:
Security plays a major role especially in that software. Which are made to deal with
highly confidence data. For these systems, often several hackers try their to break the
security of the system and acquire the confidential data for their foolish requirements.
Hence, for these systems, security measures should be given vital importance. For this
purpose, the testers themselves disguise into hackers and perform series of attempts to
sbreaks the security of the given software can be truly judged.
Stress Testing
Stress testing is usually performance to check the limits of the system i.e., to what
extend
the system can resists the abnormal conditions. Hence, the system is tested by
providing
abnormal resources in different proportions. During stress testing a system can be.
Providing the excess values of data in different proportions to check its memory
management capabilities i.e., how efficiently the system manages the data which is
more
than its capability.
Exposed to certain programs demanding large memory and resources not available
with
the current system.
Providing too many interrupts during a specific period of time.
Providing with too many inputs through it can survive only few inputs etc.
Performance testing
Performance testing is essential to ensure the given software performance to the
execution when it is implemented on the system. Hence, in this case it is only the
software considered but also the hardware in which it is deployed. Here, the
performance
testing is combined with the stress testing cases to check the internal aspects such as
resources utilization and various other instances.

CHAPTER 7

CONCLUSION

The package was designed in such a way that future modifications can be done easily. The
following conclusions can be deducted from the development of the project.
Automation of the entire system improves the efficiency.
It provides a friendly graphical user interface which proves to be better when compared
to the existing system.
It gives appropriate access to the authorized users depending on their permissions.
It effectively overcomes the delay in communications.
Updating of information becomes so easier.
System security, data security and reliability are the striking features.
The system has adequate scope for modifications in future if it is necessary.
This application avoids the manual work and the problems concern with it. It is an easy and fast
way to access the updates information.
(A UGC Autonomous Institution, Approved by AICTE, Affiliated to JNTUH,
Kukatpally
Accredited by National Board of Accreditation (NBA),
National Assessment and Accreditation Council(NAAC))

DEPARTMENT OF COMPUTER SCIENCE AND


ENGINEERING

CERTIFICATE (Individual copy)

This is to certify that the project report titled “TITLE” is being submitted by
CH. CHAKRAVARTHI REDDY(14P61A0533), in B. Tech IV-II semester
Computer Science & Engineering is a record bonafide work carried out by
him/her. The results embodied in this report have not been submitted to any
other University for the award of any degree.

INTERNAL GUIDE HEAD OF THE DEPARTMENT


Guide name Dr.K.SreenivasRao

EXTERNAL EXAMINER

DATE

You might also like