You are on page 1of 104

ALUMNI

A Mini Project report submitted to in partial fulfilment of


the requirements

In partial fulfillment of the requirements for the award of degree of

BACHELOR OF TECHNOLOGY
IN
COMPUTER SCIENCE ENGINEERING
(2007-2011)

Submitted By
Venkat sujith ponnuru 06B11A0588

Under the Esteemed Guidance of


Mr.P.SATISH BABU
Assistant Professor,
Department of CSE

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


AL-AMEER COLLEGE OF ENGINEERING & INFORMATION TECHNOLOGY
(Affiliated to Jawaharlal Nehru Technological University, Kakinada, A.P)
Gudilova, Anandapuram, Visakhapatnam-531173)
CERTIFICATE

This is to certify that the project work entitled “ALUMNI” is a work carried out by in

department of Computer Science and Engineering during the period of 2007-2011 in

partial fulfillment for the award of degree of Bachelor of Technology. The result

embodied in this main project report has not been submitted to any other university or

institute for the award of any degree or diploma.

INTERNAL GUIDE HEAD OF DEPARTMENT

Mr.P.SATISH BABU Mr.L.PRASANNA KUMAR

Asst. Professor (CSE) Asst. Professor (CSE)

EXTERNAL EXAMINER
DECLARATION

We hereby declare that this project titled “ ALUMNI” submitted to the department
of Computer Science and engineering, Al -Ameer College of Engineering and
information technology, Gudilova, Visakhapatnam, is of our own and has previously
formed the basis for any degree or other similar title to any University or institute.

RAGHAVA.U R.RAVI TEJA P.VAMSI KRISHNA


(07B11A0561) (07B11A0568) (07B11A0589)
ACKNOWLEDGEMENT

We would like to express our sincere and heart full gratitude to our guide
Mr. P.SATISH BABU, Dept of computer science & engg. for allowing us to do this
project “ALUMNI”.

We express our sincere gratitude to Mr.L.PRASANNA KUMAR, Head of the


Department, Computer Science and Engineering, for his encouragement and cooperation
throughout the project.

We sincerely thank to our beloved Principal Mr.N.NARASIMHA RAO for


providing faculty and lab facility throughout the completion of B.Tech course. Their
guidance and concern has helped us to finish our project in time.

We also thank all the teaching and non-teaching staff of CSE Dept. who has
extended their cooperation in various ways during project work.

RAGHAVA.U R.RAVI TEJA P.VAMSI KRISHNA


(07B11A0561) (07B11A0568) (07B11A0589)
ABSTRACT:

Alumni are an exciting phenomenon forming part of the new generation


in the institutions. It is a means of communication between a group of people who
belongs to some organization, educational field or other fields. It draws a variety
of data bases and delivers information to the user in an appropriate format. As a
consequence, users can enter the Alumni with a single sign-on and be provided
with the resources and tools that are appropriate to their group. This group is
intended to provide a central portal of communication for the students, staff,
faculty and friends. Once you logged into the Alumni, you will have a
personalized view that provides you access to various student resources.

The idea behind our project is simply to provide the users with a simple
platform to interact among themselves. To maintain all these services in the
efficient and effective manner, the front end and Back end co-ordination should be
followed perfectly. The Front end is a HTML Web page, which deals with the
presentation of proper environment for the users to sign-in, to check his account
and all other such facilities. And the Back end will be a database, which will store
all the different types of data such as images, text documents, tables etc. and will
also store the user ids and passw We are committed to building this group for the
benefit of students and friends. We can help each other in this wonderful
entertainment business.
CONTENTS

1. SYNOPSIS 4

2. INTRODUCTION 6
• Introduction to J2EE
• Introduction to JDBC
• Introduction to DBMS
• Introduction to HTML

3. SYSTEM REQUIREMENTS 29
• Software Requirements
• Hardware Requirements

4. SYSTEM ANALYSIS 31
• Existing System & Proposed System
• Feasibility Study

5. SYSTEM DESIGN 38
• Project Modules
• UML diagrams
Use case diagrams
Class diagrams
Sequence diagrams
6. CODING 60

7. TESTING 96

8. SCREEN SHOTS 104

9. CONCLUSION 111

10. REFERENCES 112


INTRODUCTION
INTRODUCTION:

About the Project:


An Alumnus is the solution that enables Wide range of users to achieve
all the benefits of moving services and applications online, while providing an
expandable interactive framework that goes beyond access to enable other vital
activities. For example, using web portal technology, we can easily inter-
communicate with each other using a secure transaction platform to enable e-
forms and communication and data sharing.
This can be made much secured which will be providing strong
identification and authentication of users, authorization for access to appropriate
resources, and enables security for information sharing and trusted transactions
appropriate to their sensitivity level. Such a portal can be named as a secure web
portal, which can efficiently manage the entire spectrum of access to meet the
various levels of security and trust required by different types of transactions, by
utilizing the capabilities of some authorization structures in an integrated fashion.
This type of enhancements can be loaded where the security is obviously critical,
the security solution chosen for any alumni must enhance portal performance
rather than impede it. A secure alumni solution must provide the information
security that alumni’s require for success without compromising performance and
flexibility. The ability to combine both security features and high performance in
secure alumni creates a powerful tool that can enable virtually any activity and
integrate a myriad of new applications.
The basic Purpose of any alumni is to provide wide variety of services
to the users through a simple web page. An alumni can be a Business portal,
customer-care portal, or and organizational portal or just can be any other type of
service provider.
Alumni Services
Session Personalization Aggregation Presentation Knowledge
security Management

Communication Services
Calendar Email Online community

Web, Application, and Integrated services


Web Application Legacy system Business process E-learning
Server Server Interfaces Automation Interfaces

Security Management

Operating Systems

Campus network

The above fig. shows the many technology layers that make up campus alumni.
An evaluation of these and services on campus indicates that while campus
network, operating systems, communication services are stable, we lack the
unified user management, application/integration and portal layers at the campus
level. A brief definition of these layers is as follow:

Alumni Services: These services provide the user an area to personalize and
customize, so their personal experience can be tailored to their preferences,
enabling students to show the information they choose to see, in a presentation
format selected to best suit their needs. This is typically software that runs on a
web server, and can also be tailored to allow members of different groups to see
information relevant to their group.
Communication services: Numerous options exist to provide services through
a web-based portal. Some campuses offer calendar and email service to the
students. GGSE has begun to offer a calendar, email, and in the future, a “Net
share” application to provide public and private directory folders for use by all
students and staff for file sharing.

Web, Application, and Integrated services: This is the application security


and “middleware” layer that is needed to allow secure access. Several vendors
offer a middleware layer, and they also usually offer integration services, to
connect in the legacy systems and databases with the web server to enable
transactions and access to information through a web based interface.

Unified User Management Services: To control access to, and appropriate use
of the services above, the community of users must be given accounts for
authentication and authorization. The typical management of users is done by
creating an online directory of all users, and in it, storing:
1) What groups they belong to (roles, such as student, alumni, faculty…);
2) What systems they should be allowed to access (authorization);
3) Information to verify that the person is who they say they are (authentication);
and
4) What information they can manage about themselves (delegated administration).
To determine how each type of user will interact with the services, policies must
be developed and adopted that define how the organization will interact with
and control access to the systems and information about the systems and users.

Operating Systems: The campus operating systems are managed by


department system administrators, with their network connection and
configuration adhering to and monitored by the OIT security administrator.
Campus Network: The Campus network backbone is in place and is
being unified and upgraded by the Office of Information Technology.

ADVANTAGES:
• Improved Communication:
The University no longer has to reconcile and disseminate information
through so many channels as all the information will be provided in
alumni.
• Single sign-on:
It allows the portal users to sign-on once, and be granted access to
multiple computing resources through a single portal.
• Good security will be provided using Secure Sockets Layer. Allows the
user to help themselves.

AIM :
• To provide an easy and efficient way of mutual interaction between any
number of users.
• To make each and every module of the project to work. And to make sure
that each module is clearly understandable to the User.
• To make the application User friendly.
• To provide much prominent communication between the users.
• To provide maximum services to the user

SOFTWARE BEING USED:


1. J2EE (Java™ 2 Platform Enterprise Edition, v1.3):
Since the emergence of the internet, web technologies have become more
and more important, and web applications are more and more common- the use of
a web browser is no longer restricted to surfing static pages on the internet. It is
now very common place to see a web browser used ass an application’s client.
To reduce costs and fast-track enterprise application design and
development, the Java™2 Platform, Enterprise Edition (J2EE™) technology
provides a component-based approach to the design, development, assembly, and
deployment of enterprise applications. The J2EE platform offers a multitiered
distributed application model, the ability to reuse components, integrated
Extensible Markup Language (XML)-based data interchange, a unified security
model, and flexible transaction control. Not only can you deliver innovative
customer solutions to market faster than ever, but your platform-independent J2EE
component-based solutions are not tied to the products and application
programming interfaces (APIs) of any one vendor.

System Architecture:
The required relationships of architectural elements of the J2EE
platform are shown in Figure. Note that this figure shows the logical relationships
of the elements; it is not meant to imply a physical partitioning of the elements
into separate machines, processes, address spaces, or virtual machines .The
Containers, denoted by the separate rectangles, are J2EE runtime environments
that provide required services to the application components represented in the
upper half of the rectangle. The boxes in the lower half of the rectangle denote the
services provided. For example, the Application Client Container provides Java
Messaging Service (JMS) APIs to Application Clients, as well as the other
services represented. All these services are explained below.
The arrows represent required access to other parts of the J2EE platform.
The Application Client Container provides Application Clients with
direct access to the J2EE required Database through the Java API for
connectivity with database systems.

Figure: J2EE Architecture Diagram


Two Tier Architecture:
A two-tiered application is a simple client-server application in which
the processing workload falls onto the client computer’s shoulders and the server
simply acts as a traffic controller between the client and the data. The term “fat
client” for this type of architecture is due to the bulk of processing requirements at
the client side. In this architecture, the presentation layer and the business logic
layer are hosted in one tier and the data layer is on another tier.
The drawback of this type of architecture is that it starts to pose
problems as the number of client’s increases. The first problem is due to the fact
that all processing happens at the client side. There is increased network traffic
because each client has to make multiple requests for data from the server even
before presenting anything to the user.
Another problem is cost because each client needs a machine with
sufficient processing power. As the number of clients increase, the cost for
providing client machines alone could be astronomical. However, the most severe
problem that this type of architecture can cause is probably a maintenance
problem. Even a tiny change to the processing logic might require a complete
rollout to the entire organization. Even though the process can be automated, there
are always problems with larger organizations because some users may not be
ready for an upgrade, whereas others insist it be performed immediately.
Three Tier Architecture:
To overcome the problems in many client two-tired applications, an
application is broken up into three separate tiers, instead of two. The first tier
contains the presentation layer, the second tier, or the middle tier consists of the
business logic layer, and the third tier contains the data layer.
Web Application:
You normally adopt two main architectures when developing web
applications in Java. The first architecture utilizes servlets and JSP in the middle
tier to serve clients and process the business logic.

The second architecture includes the use of J2EE server and Enterprise JavaBeans
(EJB) and this is especially useful for large enterprise applications that need
scalability. The architecture is shown as:
JSP:
The servlet technology is the foundation of web application
development using the java programming language. It is one of the most important
java technologies, and it is the underlying technology for another popular java
technology for web application development- JSP. Therefore, understanding the
servlet technology and its architecture is important if you want to be a servlet
developer. Even if you plan to develop your java web application using JSP pages
alone, understanding the servlet technology helps you build a more efficient and
effective JSP application.
JSP is another java technology for developing web applications. JSP
was released during the time servlet technology had gained popularity as one of
the best web technologies available. JSP is not mean to replace servlets, however
in fact, JSP is an extension of the servlet technology, and it is common practice to
use both servlets and JSP pages in the same web applications. Authoring JSP
pages is so easy that you can write JSP applications without much knowledge of
the underlying API. If you want to be a really good java web programmer,
however, you need to know both JSP and servlets. Even if you only JSP pages in
your java web applications, understanding servlets is still very important.
JSP offers the following benefits that are not necessary available in other
technologies:
• Performance: The performance of JSP is superior to CGI because there is no
process creation for each client request. Instead, each request is handled by the
JSP container process. After a JSP is finished processing a request, it stays
resident in memory, waiting for another request.
• Portability: Similar to other java technologies, JSP applications are portable.
You can move them to other operating systems without serious hassles.
• Rapid development cycle: As a java technology, JSP have access to the rich
java library, which helps speed up the development process.
• Robustness: JSP are managed by the Java Virtual Machine. As such, you
don’t need to worry about memory leak or garbage collection, which helps you
write robust applications.
• Widespread acceptance: Java is a widely accepted technology. This means
that numerous vendors work on java-based technologies. One of the
advantages of this is that you can easily find and purchase components that suit
your needs, which saves precious development time.

TOMCAT:
A number of JSP containers are available today. The most popular one
—and the one recognized as the official servlet/JSP container is Tomcat.
Originally designed by Sun Microsystems, Tomcat source code was handed over
to the Apache Software Foundation in October 1999. In this new home, Tomcat
was included as part of the Jakarta Project, one of the projects of the Apache
Software Foundation. Working through the Apache process, Apache, Sun, and
other companies—with the help of volunteer programmers worldwide—turned
Tomcat into a world-class JSP reference implementation. Two months after the
handover, Tomcat version 3.0 was released. Tomcat went through several 3.x
releases until version 3.3 was introduced. The successor of version 3.3 is the
current version, version 4.0. The 4.0 JSP container (Catalina) is based on a
completely new architecture and has been developed from the ground up for
flexibility and performance. Version 4.0 implements the Servlet 2.3 and JSP 1.2
specifications. Tomcat by itself is a web server. This means that you can use
Tomcat to service HTTP requests for servlets, as well as static files (HTML,
image files, and so on). In practice, however, since it is faster for non-servlet, non-
JSP requests, Tomcat normally is used as a module with another more robust web
server, such as Apache web server or Microsoft Internet Information Server. Only
requests for servlets or JSP pages are passed to Tomcat. To write a servlet, you
need at least version 1.2 of the Java Development Kit. The reference
implementation for both servlets and JSP are not included in J2SE, but they are
included in Tomcat. Tomcat is written purely in Java.

JAVA BEANS:
"JSP Syntax," you learned how you can write JSP pages by
interweaving HTML tags and Java code. Although this makes writing JSP pages
easy and straightforward, there are at least two disadvantages to this approach.
First, the resulting spaghetti-like page seriously lacks readability. Second, there is
no separation of the presentation and business rule implementation. To write a JSP
page this way means a JSP author must master both Java and HTML.
Versatility is not something very common in the real world, however.
Finding a Java programmer who also is good at HTML page design is as difficult
as finding a graphic designer who is proficient in Java. A separation of labor
would be nice to have in developing a JSP application; that is, let the graphic
designer do the page design and the Java programmer author the code. In JSP, this
is possible through the use of JSP components, such as JavaBeans. In this
component centric approach, the Java programmer writes and compiles JavaBeans
that incorporate all the functionality needed in an application. While the
programmer is doing this, the page designer can work with the page design at the
same time. When the JavaBeans are ready, the page designer uses tags similar to
HTML to call methods and properties of the beans from the JSP page.
In fact, using beans is a very common practice in JSP application
development. This approach is popular because JavaBeans introduces reusability.
This is to say, rather than building your own piece of code, you can simply use
what other people have written. when you are designing a Java Bean for your JSP
page, reusability and modularity are of utmost importance. Therefore, it is not
common to use a bean to send HTML tags to the web browser because this makes
the bean customized for that page. If you need to achieve this task, you can use
custom tags instead. You start with a step-by-step approach to quickly write a bean
and call it from a JSP page. After you have the confidence that you can
comfortably write your own bean, you will look at how to use beans optimally in
your JSP page using the three action elements jsp:useBean, jsp:getProperty, and
jsp:setProperty.

JDBC API
The JDBC API lets you invoke SQL commands from Java
programming language methods. You use the JDBC API in an enterprise bean
when you override the default container-managed persistence or have a session
bean access the database. With container-managed persistence, database access
operations are handled by the container, and your enterprise bean implementation
contains no JDBC code or SQL commands. You can also use the JDBC API from
a servlet or JSP page to access the database directly without going through an
enterprise bean. The JDBC API has two parts: an application-level interface used
by the application components to access a database, and a service provider
interface to attach a JDBC driver to the J2EE platform.
Java Servlet Technology
Java Servlet technology lets you define HTTP-specific servlet classes. A
servlet class extends the capabilities of servers that host applications accessed by
way of a request-response programming model. Although servlets can respond to
any type of request, they are commonly used to extend the applications hosted by
Web servers.

Java Server Pages Technology:


Java Server Pages technology lets you put snippets of servlet code directly
into a text-based document. A JSP page is a text-based document that contains two
types of text: static template data, which can be expressed in any text-based format
such as HTML, WML, and XML, and JSP elements, which determine how the
page constructs dynamic content.

Java Message Service :


The JMS is a messaging standard that allows J2EE application components
to create, send, receive, and read messages. It enables distributed communication
that is loosely coupled, reliable, and asynchronous.

Java Naming and Directory Interface


The JNDI provides naming and directory functionality. It provides
applications with methods for performing standard directory operations, such as
associating attributes with objects and searching for objects using their attributes.
Using JNDI, a J2EE application can store and retrieve any type of named Java
object.
Because JNDI is independent of any specific implementations, applications
can use JNDI to access multiple naming and directory services, including existing
naming and directory services such as LDAP, NDS, DNS, and NIS. This allows
J2EE applications to coexist with legacy applications and systems.
Java Transaction API
The Java Transaction API (“JTA”) provides a standard interface for
demarcating transactions. The J2EE architecture provides a default auto commit to
handle transaction commits and rollbacks. An auto commit means that any other
applications viewing data will see the updated data after each database read or
write operation. However, if your application performs two separate database
access operations that depend on each other, you will want to use the JTA API to
demarcate where the entire transaction, including both operations, begins, rolls
back, and commits.

2. DATABASE MANAGEMENT SYSTEMS:


A Database Management System is a collection of interrelated data and
a set of programs that enables users to create and maintain a database. This
collection of the related data is called the Database. The primary objective of a
DBMS is to provide a convenient environment to retrieve and store database
information. Database systems support single user and multi-user environment.
DBMS permits one person to access the database at a given time. A database
system consists of two parts namely,
Database Management System:
It is the program that organizes and maintains the information.
Database Application:
It is the program that lets us view, retrieve and update information
stored in the DBMS.
DBMS has to protect against unintentional changes that could be caused
by users and application. In case of multi-user system, it must be capable of
notifying any database change to the other user. DBMS permits only one person to
access the database at a given time, whereas RDBMS allows many users to
simultaneous access the database.
DBMS offers the following services:
 Data Definition.
 Data Maintenance.
 Data Manipulation.
 Data Display.
 Data Integrity.

ORACLE DATABASE
Oracle 8 is an Object Relation Database Management System. It offers
capabilities of both relation and object oriented database systems. In general,
objects can be defined as reusable software codes, which are location independent
and perform a specific task on any application environment with little or no
change to the code. Oracle products are based on a concept known as the
‘Client/Server Technology’. A client or a front-end database application interacts
with database by requesting and receiving information from the ‘database server’.
Oracle server consists of an oracle database – the collection of stored
data, including log and control files and the oracle instance – the processes,
including oracle system processes taken together, created for a specific instance of
the database operation. It acts as an interface between the user and the database.

The tools provided by the oracle are so user-friendly that even a


person with minimum skills in the field of computers can access them with ease.
The main tools are:

 SQL *PLUS
 PL/SQL
 Forms
 Reports
SQL stands for Structured Query Language. It was invented and developed by
IBM in early 1970’s. Oracle’s database language is SQL, which is used for
retrieving and storing the information in oracle. A table is a primary database
object of SQL that is used to store data. A table holds data in the form of rows and
columns. Oracle server supports SQL to define and manipulate data. In addition, it
has a procedural language called PL/SQL to control the flow of SQL, to use
variables, and to provide error-handling procedures. The oracle database has 2
primary structures namely,
 A physical structure – referring to the actual stored data.
 A logical structure - referring to an abstract representation of data.
The set of processes that constitute an instance of the server’s
operation is called and oracle instance, which consists of a system global area and
a set of background processes. Oracle creates server processes to handle requests
from connected user processes. The oracle data dictionary is a read-only set of
description for a database.

The SQL statements that can be handled are

 DDL statements: These statements are used to define, create and delete
tables.
 DML statements: These statements specify querying, insert, select,
delete and update operations.
 TCL statements: These statements specify units of work. A transaction
is a logical unit of work that begins with an executable statement and
ends when the changes made to the database are either committed or
rolled back. These commands affect only DML operations and have no
effect on DDL statements.
 DCL statements: These statements are used to grant and revoke
privileges.
 Embedded SQL statements: allows SQL statements to be embedded in
a procedural programming language, such as PL/SQL of oracle or the C
language.
 Systems Control statements: allows the administrator to change settings
such as the minimum number of shared servers, or kill as session.
BENEFITS OF SQL:

 Non-procedural language, because more than one record at a time.


 It is portable and it requires few modifications so that it can work on
other database.
 Very simple commands for querying, inserting, deleting and modifying
data and objects.
NORMALIZATION:

Relational databases a form of database specification based upon the


mathematical concept of a relation. The mathematical nature of the concept is,
however, not necessary to its appreciation and database may be regarded as
composed of a number of rectangular tables, each expressing one relation. Unlike
network or hierarchical database models, the relational system is structured at the
time each query is posed rather than at the time if the database is established. The
structures are achieved by the combination of relations using relational operators.
Normalization of data can be described as process of analyzing the relation
schemas based on their functional dependencies and primary keys to achieve the
desirable properties of
• Minimizing the redundancy
• Minimizing the insertion, deletion and update anomalies.
The process of normalization provides database designers with -
 A formal framework for analyzing relation schemas based on their keys and
on the functioning dependencies among their attributes.
 A series of normal forms or tests that can be carried out on individual
relation schemas so that the relation database can be normalized to any
desired degree. The normal form of a relation refers to the highest normal
condition that it meets, and hence indicates the degree to which it has been
normalized. Decomposition must also confirm the existence of additional
properties that the relational schemas, taken together, should possess. These
would include following properties:
 The loss less join or non-additive joins property: It guarantees that
the spurious tuple generation problem does not occur with respect to the
relation schemas created after decomposition.
 The dependency preservation property: It ensures that functional
dependency is represented in some individual relations resulting after
decomposition.
Normalization is carried out for three reasons.
1. To secure the data so that any pertinent relationship between entities can be
represented.
2. To simplify the maintenance of the data through updates, inserts and deletions.
3. To reduce the need to restructure or re-organize data when new application
requirements arise.
First Normal Form:
First normal form is achieved when a record is designed to be of fixed
length. This is accomplished by removing the repeating group and creating a
separate file or relation containing the repeating group. The original and new
records are interrelated by a common data item.
Second Normal Form:
Second normal form is achieved when a record is in the first normal
form and each item in the record is fully dependent on the primary record key for
identification data item is functionally dependent if its value is uniquely associated
with a specific data items .To achieve second normal form, every data items in the
record that is not dependent on the primary key of the record should be removed
and used to form a separate relation.
Third Normal Form:
Third normal form is achieved when transitive dependencies are
removed from a record designed conversion to third normal form removes the
transitive dependencies by splitting the relation into two separate relations.
Boyce Code Normal Form
A relation is said to be in the BCNF if determinate is a candidate key.
Relations in 3NF can also have anomalies. Relations in BCNF have no anomalies
regarding functional dependencies and this seemed to have put the issue of
modification anomalies to rest. However it was soon discovered that anomalies
could arise from situations other than functional dependencies. The fourth, fifth
and domain key normal forms were proposed to overcome these anomalies.
ENTITY RELATION DIAGRAM:
Once all requirements for the database have been collected and
analyzed, the next step is to create a conceptual schema for the database design.
Using high level conceptual scheme is a concise description of the data
requirements of the user and includes detailed description of the entity types,
relationships and constraints; these are expressed using the concepts provided by
the high-level data model.

The ER model describes data as entities, relationships and constraints. The


concept of entities and their attributes is given below.
• Entity: The basic object that the ER model represents.
• Attributes: The particular properties that describe an entity. Several
types of attributes occur in the ER model:
 Simple v/s Composite
 Single-valued v/s Multi-valued
 Stored v/s Derived
• Entity type: A particular entity type defines a collection of entities that
have the same attributes.
• Value: A particular entity will have a value for each of its attributes.
• Entity Set: The collection of all entities of a particular entity type in
the database at any point of time.
• Domain or Value Set: It specifies the set of values that may be
assigned to that attributes for each individual entity.
• Relationship type: A relationship type R among N entity defines a set
of associations among entities from these types.
• Degree of Relationship type: It is the number of participating entities
from the entity type in each relation ship instance and helps to explain
what the relationship means.
• Role names: It signifies the role that a participating entity from the
entity type plays in each relationship instance and helps to explain
what relationship means.
• Weak Entity types: Entity types that do not have key attributes of their
own

HTML:
Introduction to HTML

The hypertext markup language (HTML) is a simple markup language.


Used to create a hypertext documents that are portable from one platform to
another HTML documents are SGML (Standard generalized mark up language)
documents with generic semantics that are appropriate for representing
information from a wide range of applications. This specification defines HTML
version 3.2. HTML 3.2 aims to capture recommended practice as of early ’96 and
as such a replacement for HTML2.0 (RFC 1866). A set of instructions embedded
in a document is called mark up language. These instructions describe what the
document text means and how it should look like in a display. Hyper Text Mark
Up language (HTML) is the language used to encode World Wide Web
documents.

WHY TO USE HTML

Web site is a collection of pages, publications, and documents that


reside on web server. While these pages publications and a document as a
formatted in a single format, you should use HTML for home page and all primary
pages in the site. This will enable the millions of web users can easily access and
to take advantage of your web site.
HTML is considered first for formatting any new material you plan to
publish on the web. HTML documents are platform independent, meaning that
they don’t confirm to any standard. If they are created properly you can move
home page to any server platform or you can access them with any complaint
www browser.

STRUCTURE OF HTML:
HTML elements perform a defined task. HTML uses two types of
elements
. Empty Tags
. Container Tags
These tags differ because of what they represent. Empty tags represent
formatting constricts such as line breaks and horizontal rules. Container tags
define a section of text, formats and dot all of the selected text. A container tag has
both a beginning and an ending.
HTML LAYOUT:
An HTML document consists of text, which comprises the content
of the document and tags, which, defines the structure, and appearance of the
document. The structure of an HTML document is simple, consists of outer.
<HTML>tag enclosing the document header and body
<HTML>
<HEAD>
<TITLE>the title of HTML document</TITLE>
</HEAD>
<BODY>
This is where the actual HTML documents
Text lies, which is displayed in the browser
</BODY>
</HTML>
Each document has a head and body delimited by the <HEAD> and
<BODY> tag. The head is where you give your HTML document a title and where
you indicate other parameters the browser may use when displaying the document.
This includes the text for displaying the text. Tag also references special and
indicates the hot spots that link your document to other documents.

HTML FORMS:
Creating a form usually involves two independent steps: Creating the
layout for the form itself and then writing a script program on the server side to
process the formation you get back from a form.
To create a form, you use the <FORM> tag. Inside the opening and
closing FORM tags are each of the individual form elements plus any other
HTML content to create a layout for that form.
The opening tag of the FORM element usually includes the attributes:
METHOD and ACTION. The METHOD attributes can be either GET or POST
which determines how your form data is sent to the script to process it.
The ACTION attribute is a pointer to the script that processes the form
on the server side. The ACTION can be included by a relative path or by a full
URL to a script on your server or somewhere else.
<FORM Method= post action=http://www.mytservser.com/cgi-bin/form-name.pl>
……………….
</FORM>

METHOD ATTRIBUTE:
The other required attribute for the <form> tag sets the methods by
which the browser form’s data to the server for processing. There are two ways:
the POST method and GET method. With POST method, the browser sends the
data in two steps: the browser first contacts the form-processing server specified in
the action attributes, and once contact is made, sends the data.
The GET method in the other hand contacts the form processing server
and sends the form data in a single transaction step: the browser appends the data
to the form’s action URL, separated by the question mark (?) character.
System
Requirements
SYSTEM REQUIREMENTS:

Software requirements:

Front end : JSP, Servlets

Back end : Oracle 9i

Web Server : Tomcat

Operating System : Windows XP

Languages : Java, J2EE

Hardware requirements:

Processor : Pentium2

Hard disk : 20GB or above

RAM : 128 MB

Speed : 800 MHz


System Analysis
SYSTEM ANALYSIS:
System Analysis is first stage according to System Development Life
Cycle (SDLC) model. This System Analysis is a process that starts with analyst.
Analysis is a detailed study of the various operations performed by a
system and their relationships within and outside the system. One aspect of
analysis is defining the boundaries of the system and determining whether or not a
candidate should consider other related systems. During analysis, data is collected
from the available files, decision points, and transactions handled by the system.
Logical system models and tools are used in analysis. Training,
experience, and common sense are required for collection of the information
needed to do the analysis.

EXISTING SYSTEM:
All the existing information of different alumni’s is not up to reachable
to the user. For example, the systems that are available in the market are much
proned to attacks and may there by cause in the loss of some important data. And
these system also lack in few advanced options such as file sharing. Some web
portals accessing data through the database is itself a difficult task. But the
proposed system ensure him of making his or her data secure.
PROPOSED SYSTEM:
Accessing data through a web browser makes easy and helpful to the
user. Our alumni are contained with more details of students which provide
portable and user friendly. So now our aim is to provide an appropriate platform in
the form of a web site for the users, members of the Portal, which consists of all
the various wide range of facilities and ensures them of the secure transactions,
transformation of data where ever required.
Apart from all these, we should also ensure him of making his or her data
secure. For this we should use proper identification, authentication and
authorization mechanisms to cut-out any loss or modification of data by illegal
users. This can be elaborated in a step fashion manner, i.e. First the user must
provide proper identification of himself and then authentication process must be
performed, i.e. the user is asked for the correct username and password, which are
given to the users at the time of registration process. And if they provide the
correct data to the administrator then only he must be allowed for further access or
else he must be denied permission there on. Once the user proves him self to be a
part of the community or group or proves himself to be the member of the portal,
then the proper authorization entities must be given as for the previous data to
him. The user must be given only the limited authority which is meant to him, or
else there may be a misuse of the authority, thereby, again the data will then be
considered insecure.
Limitations Of Proposed System:

o The application is done on a two-tier architecture which is slow. But can be


easily transformed into three-tier architecture
o Does not provide complete security features. But performs almost the best
authentication that’s necessary.
o Cannot be easily accommodated on Operating Systems other than Windows

REQUIREMENT ANALYSIS:
Requirement Analysis is a software engineering task that bridges the
gap between system level software allocation and software design. It provides the
system engineer to specify software function and performance indicate software’s
interface with the other system elements and establish constraints that software
must meet.
The basic aim of this stage is to obtain a clear picture of the needs and
requirements of the end-user and also the organization. Analysis involves
interaction between the clients and the analysis. Usually analysts research a
problem from any questions asked and reading existing documents. The analysts
have to uncover the real needs of the user even if they don’t know them clearly.
During analysis it is essential that a complete and consistent set of specifications
emerge for the system. Here it is essential to resolve the contradictions that could
emerge from information got from various parties.
This is essential to ensure that the final specifications are consistent.
It may be divided into 5 areas of effort.

1. Problem recognition
2. Evaluation and synthesis
3. Modeling
4. Specification
5. Review
Each Requirement analysis method has a unique point of view. However
all analysis methods are related by a set of operational principles. They are
• The information domain of the problem must be represented and
understood.
• The functions that the software is to perform must be defined.
• The behavior of the software as a consequence of external events must be
defined.
• The models that depict information, function and behavior must be
partitioned in a hierarchical or layered fashion.
• The analysis process must move from essential information to the
implementation detail.

REQUIEMENT SPECIFICATION:
Specification Principles:
Software Requirements Specification plays an important role in creating
quality software solutions. Specification is basically a representation process.
Requirements are represented in a manner that ultimately leads to successful
software implementation.
Requirements may be specified in a variety of ways. However there are some
guidelines worth following: -
• Representation format and content should be relevant to the problem
• Information contained within the specification should be nested
• Diagrams and other notational forms should be restricted in number and
consistent in use.
• Representations should be revisable.
Software Requirements Specifications:
The software requirements specification is produced at the culmination
of the analysis task. The function and performance allocated to the software as a
part of system engineering are refined by establishing a complete information
description, a detailed functional and behavioral description, and indication of
performance requirements and design constraints, appropriate validation criteria
and other data pertinent to requirements
FEASIBILITY STUDY:
All projects are feasible, given unlimited resources and infinite time.
But the development of software is plagued by the scarcity of resources and
difficult delivery rates. It is both necessary and prudent to evaluate the feasibility
of a project at the earliest possible time.
Three key considerations are involved in the feasibility analysis.

Economic Feasibility:
This procedure is to determine the benefits and savings that are
expected from a candidate system and compare them with costs. If benefits
outweigh costs, and then the decision is made to design and implement the system.
Otherwise, further justification or alterations in proposed system will have to be
made if it is to have a chance of being approved. This is an ongoing effort that
improves in accuracy at each phase of the system life cycle.

Client accessing database has many disadvantages:

• Consumes lot of time.


• Maximizes the cost.
• Not user friendly.
Accessing through web browser provides efficient benefits and helps to overcome
all the drawbacks.
Technical Feasibility:
Technical feasibility centers on the existing computer system
(hardware, software, etc.,) and to what extent it can support the proposed addition.
If the budget is a serious constraint, then the project is judged not feasible.

Software component such as JDBC (Java Data Base Connectivity) is


used to access the data stored in different databases using java programs. Another
software component such as ODBC (Open Data Base Connectivity) is a way to
connect from front-end tool to any back-end database engine.
A front-end tool is one which is used to provide user interface using
which the user will be able to manipulate the data. A back-end is responsible for
the actual manipulation of the database on the request of the front-end as well as
for storage and retrieval of information.
Operational Feasibility: People are inherently resistant to change, and computers
have been known to facilitate change. It is understandable that the introduction of
a candidate system requires special effort to educate, sell, and train the staff on
new ways of conducting business. . Our system is developed in such a way that it
is very user friendly, easy to learn how to work with and there is also not much
resistant to this package from the user side. As we are also providing user guide,
so the user can self educate regarding the system. Hence our candidate system
production is behaviorally feasible.
System Design
SYSTEM DESIGN:
The most creative and challenging phase of the life cycle is system
design. The term design describes a final system and the process by which it is
developed. It refers to the technical specifications that will be applied in
implementations of the candidate system. The design may be defined as “the
process of applying various techniques and principles for the purpose of defining
a device, a process or a system with sufficient details to permit its physical
realization”.
The designer’s goal is how the output is to be produced and in what
format. Samples of the output and input are also presented. Second input data and
database files have to be designed to meet the requirements of the proposed
output. The processing phases are handled through the program Construction and
Testing. Finally, details related to justification of the system and an estimate of
the impact of the candidate system on the user and the organization are
documented and evaluated by management as a step toward implementation.
The front-end used, JSP is made use to accept the data from the user
and to check for validity of the data entered by the user. Appropriate error
messages are displayed at required circumstances if the user has not entered any
value into the field. In addition, the value is checked for only numeric or alpha
numeric whenever needed to do so. Appropriate help is provided whenever
needed.
The back-end Oracle for Windows stores all the tables. The tables
were created using SQL statements. Constraints have been specified to maintain
the data integrity. All the data have been entered into the tables using the JSP
commands.
The importance of software design can be stated in a single word
“Quality”. Design provides us with representations of software that can be
assessed for quality. Design is the only way where we can accurately translate a
customer’s requirements into a complete software product or system. Without
design we risk building an unstable system, which might fail if small changes are
made. It may as well be difficult to test, or could be one who’s quality can’t be
tested. So it is an essential phase in the development of a software product.

PROJECT MODULES:
Web Portal is a means of communication between a group of people who belongs
to some organization, educational field or other fields. The basic thing which is necessary is
authentication is- It recognizes the user because different users will have different
information and we have to provide the right information to the right user also privacy of the
information is an important aspect. This is a server side web application. It uses external
relational Data Base Management System as a data tier. On a client side, a standard Web
browser is an application that is used for connecting the portal. Every user of this system
uses only a web browser as a client to connect to the system. The system logic shall be based
on J2EE which provides platform independence.
Modules to be considered in our project are:
o User
o Login
o Scrapping
o Administrator

USER:
Alumni account gives you access to your mailbox provided giving the
right username and password as privacy of the information is an important aspect.
The basic thing which is necessary is authentication and thus providing services
for scrapbook, album, attendance etc. All these actions can be done by the user in
a single session. Thus when the user is authenticated, you will be brought to your
home page in which he can delete unwanted messages or can send the message or
can view the attendance of a particular person.
LOGIN:
Major things on the user login panel are:
User name text field:
A text field is there for entering the username required for entering the
login into the alumni.

Password text field:


A text field is there for entering the username required for entering the
login into the alumni. The password is into a hidden form from the user i.e. only
stars or dots appeared instead of characters.

Sign-in button:
To log into the alumni.

New user registration:


If the user is new he can register and have his/her details registered
with the software. This button will take user to a new user registration panel.

SCRAPPING:
You are now ready to scrap a message. To send a message:
1. Click on the new icon on the left of the toolbar. A New Message window
appears.
2. In the “to” box type in the address of the person you want to send to.
3. Type in your message in the blank area at the bottom of the window.
5. When you have finished with your message, click the Send button. Your
message will be sent and the window closes.

Deleting messages:
As your message box size has a limit, you should constantly delete
unwanted messages in your Scrapbook. To delete a message, click on the Delete
button on the toolbar.

ADMINISTRATOR:
The administrator gets alert when the user interacts with the system.
All the actions can be done by the database in a single session. The administrator
can create, delete, modify or can update the data. The administrator creates a new
account in the mail system; initializes settings for incoming and outgoing servers;
adds user to relevant message groups. Whatever action took place by the user, will
be immediately updated in the database like deleting a message or sending etc.
This database plays one of the significant roles in alumni.
DATA FLOW DIAGRAMS:
A data flow diagram is a logical model of a system. The model does not
depend on hardware, software and data structures of the organization. There is no
physical implication in a data flow diagram. Because the diagram is a graphic
picture of the logical system, it tends to be easy for every non-technical user to
understand and thus serves as an excellent communication tool. Finally a data flow
diagram is a good starting point for system design.

To construct a data flow diagram it uses four basic symbols. They are given
below.

Rectangle:

The above symbol is used to define source or destination of data.


Circle or Rounded Corners Rectangle:

The above symbols are defined to represent a process that transforms


or modifies the data.

Open-ended rectangle:
The above symbol is used to represent data storage.

One side arrow line:

This arrow shows the path of the data flow.

UML DIAGRAMS:

 An emerging open standard for modeling object-oriented software.


 Resulted from the convergence of notations from three leading
object-oriented methods:

 OMT (James Rumbaugh), OOSE (Ivar Jacobson), Booch


(Grady Booch)
 Supports the entire software development lifecycle
 Supports diverse applications areas
 Supported by several CASE tools
 e.g. Rational ROSE, Together/J

 Three categories

 Modeling Elements (Things)


 Relationships
 Diagrams

Use case Analysis and Creating use cases:

The behavior of the system under development, that is the functionality


that must be provided by the system while documenting a use case model that
illustrates the system's intended functions (use cases), its surroundings (actors),
and relationships between the use cases and actors (use case diagrams). The most
important role of a use case model is that of communication among the developers
and the end users. It provides a vehicle used by the customers or end users and the
developers to discuss the system's functionality and behavior. The use case model
starts in the Inception phase with the Identification of actors and principa! use
cases for the system. The model is then matured in the Elaboration phase where
more detailed information is added to the identified use cases, and additional use
cases are added on an as needed.

Actors:

Actors are not part of the system, they represent anyone or anything
that must interact with the system. An actor may be
• Only input information to the system
• Only receive information from the systcm
• Input and receive information to and from the system
Typically these actors are found in the problem statement and by
conversations with customers and domain experts. In the UML, an actor is
represented as a stickman.
Use Cases model a dialogue between an actor and the system. They
represent the functionality provided by the system i.e, what capabilities will be
provided to an actor by the system. The collection of use cases for a system
constitutes ali the defined ways the system may be used.
The formal definition for a use case: A use case is a sequence of
transactions performed by a system that yields a measurable result of value for a
particular actor.

Each use case is documented with a flow of events. The flow of events
for a use case is a description of the events needed to accomplish the required
behavior of the use case. The flow of events is written in terms of what the system
should do, not how the svstem does it. That is, it is written in the language of the
domain, not in terms of implemcntation. The flow of events should include:
• When and how the use case starts and ends
• What interaction the use case has with the actors
• What data is needed by the use case
• The normal sequence of events for the use case
• The description of any alternate or exceptional l'lows

The flow of event documentation typically is created in the Elaboration


phase in an iterative manner. At first, only a brief description of the steps needed
to carry out the normal flow of the use case (i.e., what functionality is provided by
the use case) is written. As analysis progresses, the steps are fleshed out to add
more detail. Finally, the exceptional flows are added to the use case. The
following standard template is used for the creation of the flow of events
document. X. Flow of events for the <name> Use case
Preconditions:
Main Flow:
Sub flows (if applicable):
Alternative Flows:
Where X is a number from 1 to the number of use cases.
Use Case Relationships:
An association relationship may exist between an actor and a use case.
This type of association is often referred to as a communicates association since it
represents communication between an actor and a use case. An association may be
navigable in both directions (actor to use case and use case to actor), or it may be
navigable in only one direction (actor to use case or use case to actor). The
navigation direction of an association represents who is initiating the
communication (i.e., the actor is initiating the communication with the actor). An
association is represented as a line connecting the related elements. Adding an
arrowhead to the association line that denotes the direction depicts navigation in
only direction.
There are two types of relationships that may exist between use cases: uses
and extends. Multiple use cases may share pieces of the same functionality. This
functionality is placed in a separate use case rather than documenting it in every
use case that needs it. Uses relationships are created betvvcen the new use case
and any other use case that uses its functionality. A uses relationship is drawn as
an arrow with a large hole triangle (generali/.ation arrow) at the end closest to the
used case.
An extends relationship is used to show:
• Optional behavior
• Behavior that is only run under certain conditions, such as triggering an
alarm.
• Several different flows which may be run based on actor selection
Use case Diagrams:
A USE CASE diagram is a graphical view of some or all of the actors
use case, and their interactions identified for a system. Each system typically has a
main Use case diagram, which is a picture of the system boundary (actors) and the
major functionality provided by the system.
Class:
A class is a description of a group of objects with common properties
(attributes), common behavior (operations), common relationships to other objects
(association and aggregation), and common semantics. In the UML, a class is
dravvn as a compartmentalized rectangle. The compartments show the class name,
its structure, and its behavior. A class is shown.

Stereotypes and Classes:


As described in use cases Classes can also have stereotypes. Stereotype
provides the capabilitv to create a new kind of modeling element. Stereotypes
must be based on elements that are part of the UML metamodel. During analysis
three common stereotvpes for a class are entity, boundary, control. These
stereotypes are useful in defining the classes needed for a system under
development.
An entity class models information and associated behavior that is
generallv long lived. This type of class may reflect a real-world entity, or it may
be needed to perform tasks internal to the system. They are typically independent
of their surroundings; that is, the are not sensitive to how the surroundings
communicate with the system. They are application independent, meaning that
they may be used in more than one application.
Boundary classes handle the communication betvveen the system
surroundings and the inside of the system. They can provide the interfaces to a
user or another system (i.e., the interface to an actor). They constitute the
surroundings-dependent part of the system interfaces. Boundary classes are used
to model the system interfaces.
Control classes model sequencing behavior specific to one or more use
cases. Control classes coordinate the events needed to realize the behavior
specified in the use čaše. We can think of a control class as "running" or
"executing" the use case-it represents the dynamics of the use čaše. Control classes
typically are application dependent classes.
Class Diagrams:
Class diagrams are created to provide a picture or view of some or all
of classes in the model. Class diagrams may also be created the use case view of
model. These diagrams typically are attached to use cases and contain a view of
the classes participating in the use case. The Main class diagram in the logical
view of the model is typically a picture of the packages in the system. Each
package also has its own Main class diagram, which typically displays the public
classes of the package.
Sequence diagrams:
A sequence diagram shows object interactions arranged in time
sequence. It depicts the objects and classes involved in the scenario and the
sequence of messages exchanged betvveen the objects needed to carryout the
functionality of the scenario. Sequence diagrams typically are associated with use
cases in the model of the system under development.
In the UML, an object in a sequence diagram is drawn as a rectangle
containing the name of the object, underlined. An object can be named in one of
the three ways: the object name, the object name and its class, or just the class
name (unonymous object). The UML notation for objects and messages in a
sequence diagram is shown in

State chart Diagrams:


State chart diagrams describe the behavior of an individual object as a
number of states and transitions between these states. A state represents a
particular set of values for an object. The sequence diagram focuses on the
messages exchanged between objects, the state chart diagrams focuses on the
transition between states.
Activity Diagrams:
An activity diagram describes a system in terms of activities. Activities
are states that represent the execution of a set of operations. Activity diagrams are
similar to flowchart diagram and data flow.
LOGIN MODULE DETAILS:
USECASE DIAGRAMS:
USER PAGE:

1. ACTORS:
Primary actors:
User.
Secondary actors:
User’s mail server.

2. USECASE DIAGRAM:

authentic ation

< < inc lude> >

us er

c hec k ing m es s ages s ending m es s ages

< < inc lude> >

deleting m es s ages

3. DESCRIPTION:
The main actions include authenticating a user with valid user name and
password, logging into the user account, providing him services for interact with
the system.
4. STEPS:
1. User provides username and password.
2. If username or password wrong, system reports error.
3. User provides various options.

LOGIN PAGE:

1. ACTORS:
Primary actors:
User.
Secondary actors:
N/A.

2. USECASE DIAGRAM:

login
user

3. DESCRIPTION:
This usecase describes how a registered user can login to the system.

4. STEPS:
1. System must ask username and password of a user.
2. System must verify the right combination of username and password.
3. System should report login problem if verification fails.
4. On successful login, system should allow user access to his/her
messages.

SCRAPS:

1. ACTORS:
Primary actors:
User.
Secondary actors:
N/A.

2. USECASE DIAGRAM:

w rite

s c rap boo k s en d
us er

d elete

3. DESCRIPTION:
The above diagram represents the main actions done by scraps when he
is ready to view a message. While sending, type the address of the person you
want to send to in the “To” box, and type your message in the blank area at the
bottom of the window. When you have finished with your message, click the Send
button. All these actions can be done by the user in a single session.

4. STEPS:
System must display the particular messages of a particular folder
selected by the user.

ADMINISTRATOR:

1. ACTORS:
Primary actors:
User.
Secondary actors:
N/A.

2. DESCRIPTION:
The above usecase diagram represents the main actions done by the
database when the user interacts with the system. All the actions other than login
follow only when the user is authenticated. All these actions can be done by the
database in a single session. The database can create, modify, remove and update
the actions according to the user interacted with his account. The database gets
alert when the user interacts with the system as it plays a significant role in the
alumni.

3. USECASE DIAGRAM:
c reate

rem ove
Databas e

update

4. STEPS:
1. Administrator creates a new account in the mail system.
2. Administrator initializes settings for incoming and outgoing servers.
3. Administrator adds user to relevant message groups.
4. Whatever action took place by the user, will be immediately updated
in the database like deleting a message or sending etc.
5. The database gets alert when the user interacts with the system.
CLASS DIAGRAMS:

Class diagrams are created to provide a picture or view of some or all


of classes in the model. Class diagrams may also be created the use case view of
model.
These diagrams typically are attached to use cases and contain a view
of the classes participating in the use case. The Main class diagram in the logical
view of the model is typically a picture of the packages in the system. Each
package also has its own Main class diagram, which typically displays the public
classes of the package.

User
username
password

login()

Administrator
username
password
Login Scrapbook
login
create()
write()
check messages() modify() send()
perform operations() update() delete()
CLASS DIAGRAMS WITH RELATIONSHIPS:

Us er
u s e rn a m e
p a s s w o rd

lo g in()

A d m in is t ra to r S c rap b o ok
L og in u s e rn a m e
lo g in p a s s w o rd w rit e()
s e n d ()
c h e c k m e s s a g e s () c re a t e () d e le t e()
p e rfo rm o p e ra t io n s () m o d ify ()
u p d a te ()

Description:
In the above class diagram we use the Association and Dependency
relationships. An association is used among the users, inbox and composes as it is
just a link being a connection among objects that is a relationship between a whole
and its parts. Dependency is used among the user and database as it is a
relationship between two things in which a change in one thing may affect the
semantics of the other thing. The above two are the only relationships used in our
class diagrams.
SEQUENCE DIAGRAMS:

us er s e rve r d a ta b a s e

in it ia liz in g s c re e n

lo g in d e ta ils

e n te r lo g in d e ta ils s e n d lo g in ve rific a tio n


ve rific a t io n

c o n n e c t io n fa ile d

.. . c o n n e c t io n e s t a b lis h e d

S c ra p b o o k w rite

s end updates

d e le te
SAMPLE CODING
/* login.jsp*/

<%@ page language="java" import="java.sql.*" %>


<% session.invalidate();%>
<html>
<head><title>Login</title>
</head>
<script language="javascript">
function validate(objForm)
{
if(objForm.username.value.length==0){
alert("Please enter Username!");
objForm.username.focus();
return false;
}
if(objForm.password.value.length==0){
alert("Please enter Password!");
objForm.password.focus();
return false;
}
return true;
}
</script>
<body>
<center>
<jsp:include page="Header1.jsp" />
<DIV style="position:absolute; left:0px; top:190px; " align="left" align="top">
<form action="auth" name="entry" onSubmit="return validate(this)">
<input type="hidden" value="list" name="action">
<DIV style="position:absolute; left:350px; top:20px; " align="left" align="top">
<table border="1" cellpadding="20" cellspacing="2" >
<tr><td>
<table cellspacing="10" cellpadding="20">
<tr><td>
<table>
<tr><td colspan="2" align="center"><h2> User Login </h2></td></tr>
<tr><td colspan="2">&nbsp;</td></tr>
<tr><td><b>USERNAME:&nbsp;</b></td><td><input name="username"
type="text" size="30"></td></tr>
<tr><td><b>PASSWORD:&nbsp;&nbsp;&nbsp;</b></td><td><input
name="password" type="password" size="30"></td></tr>
<tr><td colspan="2" align="center"><input type="submit"
value="Submit"></td></tr>
</table>
</td></tr>
</table>
</td></tr>
</table>
</DIV>
<br><br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>
<div style="position: absolute; left: 320px; top: 326px; width: 226px; height:
19px; z-index: 9;" align="left">
<font style="font-size: 16px;" color="#000000" face="Times New
Roman"><b>Forgot Password ? Click Here !!</b></font>
</div>
<div style="position: absolute; left: 250px; top: 300px; width: 226px; height:
19px; z-index: 8;" align="left">
<p><a href="forgot.jsp" ><img src="images/bv01001.gif" width=312 height=45
border=0></a>
</div>
<div style="position: absolute; left: 690px; top: 326px; width: 226px; height:
19px; z-index: 9;" align="left">
<font style="font-size: 16px;" color="#000000" face="Times New
Roman"><b>NEW USER ?&nbsp; Register Here !!</b></font>
</div>
<div style="position: absolute; left: 620px; top: 295px; width: 226px; height:
19px; z-index: 8;" align="left">
&nbsp;&nbsp;<a href="Register.jsp"><img src="images/bv01001.gif" width=312
height=45 border=0> </a>
</div>
</form>
</center>
</body>
</html>
/ * Register.jsp*/

<script>
function CheckInput(f)
{
if(f.username.value=="")
{
alert("Please enter User Name");
f.username.focus();
return false;
}
if(f.pwd.value.length==0){
alert("Please enter Password!");
f.password.focus();
return false;
}
if(f.pwd1.value.length==0){
alert("Please enter Password in the next field too!!");
f.password1.focus();
return false;
}
if(f.pwd1.value != f.pwd.value){
alert("Password mismatch .. Try again!!");
f.password1.focus();
return false;
}
if(f.secque.selectedIndex==0)
{
alert("Please select secret question");
f.secque.focus();
return false;
}

if(f.secans.value=="")
{
alert("Please enter the Answer");
f.secans.focus();
return false;
}
if(f.fname.value=="")
{
alert("Please enter First Name");
f.fname.focus();
return false;
}
if(f.sex.selectedIndex==0)
{
alert("Please select the Gender");
f.sex.focus();
return false;
}
if(f.dat.value.length==0){
alert("Please Enter your Birth-Date!");
f.dat.focus();
return false;
}
if(f.dat.value=="Select Date"){
alert("Please Enter your Birth-Date!");
f.dat.focus();
return false;
}
if(f.month.value.length==0){
alert("Please Enter your Birth-Month!");
f.month.focus();
return false;
}
if(f.month.value=="Select Month"){
alert("Please Enter your Birth-Month!");
f.month.focus();
return false;
}
if(f.year.value=="yyyy"){
alert("Please Enter your Birth-Year!");
f.year.focus();
return false;
}
if(f.branch.value="")
{
alert("Please select your Branch");
f.branch.focus();
return false;
}
if(f.address.value=="")
{
alert("Please enter Address");
f.address.focus();
return false;
}
if(f.state.selectedIndex==0)
{
alert("Please select State Name");
f.state.focus();
return false;
}
if(f.country.selectedIndex==0)
{
alert("Please select Country Name");
f.country.focus();
return false;
}
if(f.email.value=="")
{
alert("Please enter Email ID");
f.email.focus();
return false;
}
}
</script>

<html>
<head>
<title>User Form</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<jsp:include page="Header.jsp" />
<DIV style="position:absolute; left:0px; top:190px; " align="left" align="top">
<form name=f action="details" name="entry" onSubmit="return
CheckInput(this)" >
<body bgcolor="#FFFFCC">
<TABLE cellSpacing=0 cellPadding=5 width="100%" align=center border=0>
<TBODY>
<TR>
<TD ><h3><font face="Verdana, Arial, Helvetica, sans-serif">Registration
Information</font></h3>
<P><SPAN class=lightheading>Fields marked with a <SPAN
class=asterix>*</SPAN> are compulsory<BR> </SPAN></P></TD>
</TR>
<TR>
<TD bgColor=#f9f9f9 colSpan=2><SPAN class=medium heading><b>Access
Information</b></SPAN></TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>User ID</STRONG><SPAN
class=asterix>*</SPAN><BR>
</TD>
<TD width="63%" align=left style="BORDER-BOTTOM: #eaeaea 1px
solid">
<P>
<INPUT maxLength=200 name=username onBlur="return Check1()">
<BR>
</P></TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Password</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"
align=left><INPUT type=password maxLength=50
name=pwd > &nbsp;</TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Re-Type Password</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"
align=left><INPUT type=password maxLength=50
name=pwd1> &nbsp;</TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Hint Question<SPAN
class=asterix>*</SPAN></STRONG><BR>You will be asked this question
incase<BR> you forget your passsword</TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid" align = left> <SELECT
name=secque>
<OPTION value="" selected > Select a hint question </OPTION>
<OPTION >Whats my pets name</OPTION>
<OPTION >Whats my fathers name</OPTION>
</SELECT> </TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Answer<SPAN
class=asterix>*</SPAN></STRONG></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"><INPUT
maxLength=500 name=secans></TD>
</TR>
<TR>
<TD colSpan=2>&nbsp;</TD>
</TR>
<TR>
<TD bgColor=#f9f9f9 colSpan=2><SPAN class = mediumheading><b>Your
Profile</b></SPAN></TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>First Name</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #f9f9f9 1px solid"> <SPAN
class = rdo>
<LABEL for=NewReg1_title1></LABEL>
</SPAN> <INPUT id=NewReg1_fname maxLength=50
name = fname > </TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Middle Name</STRONG></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"><INPUT
maxLength=50 name=mname></TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Last Name</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"> <INPUT
id=NewReg1_lname maxLength=50 name=lname> </TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Gender</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid">
<select name=sex>
<option><--Select Gender--></option>
<option>Male</option>
<option>Female</option>
</select>
</TD>
</TR>
<tr><td style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"> <strong>DATE OF BIRTH* : </strong></td>
<td style="BORDER-BOTTOM: #eaeaea 1px solid"><select name="dat"
><option selected>Select Date</option>
<option value = "1">1<option value = "2">2<option value = "31">31
</select>&nbsp; &nbsp;
<select name = "month" ><option selected>Select Month</option><option value
= "January">January <option value = "December">December</select> &nbsp;
&nbsp;
<input type="year" maxlength="4" name="year" size="4" value="yyyy"
autocomplete=off ></td></tr>
<tr>
<td style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px solid"
width="37%"><STRONG>Branch</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"> <select
name="branch">
<option>CSE</option>
<option>EEE</option>
<option>ECE</option>
<option>IT</option>
<option>MECH</option>
</select></TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Status: </STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"><textarea
maxLength=300 name=status></textarea></TD>
</TR> <TR>
<TD colSpan=2>&nbsp;</TD>
</TR>
<TR>
<TD bgColor=#f9f9f9 colSpan=2><SPAN
class=mediumheading><b>Contact Information</b></SPAN></TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Address </STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"><textarea
maxLength=300 name=address></textarea></TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>City</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid">
<!--<input type="text" name="city" size="20" maxLength="100">-->
<INPUT id=NewReg1_city maxLength=50 name=city>
</TD> </TR> <TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>State</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"><SELECT id =
NewReg1_state onchange = SelectCountry() name=state>
<OPTION selected>Select your state</OPTION><OPTION>Andaman and
Nicobar Islands</OPTION></TR>
<TR><TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Pin</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid">
<!--<input type="text" name="pin" size="20" maxLength="9">-->
<INPUT id=NewReg1_pin maxLength=9 name=pin> </TD>
</TR><TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Country</STRONG><SPAN
class=asterix>*</SPAN></TD><TD style="BORDER-BOTTOM: #eaeaea 1px
solid"><SELECT name=country>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px solid"
width="37%"><STRONG>Email Id*</STRONG></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid">
<!--<input type="text" name="email" size="20" maxLength="150">-->
<INPUT id=NewReg1_email maxLength=150 name = email > </TD>
</TR><TR><TD style="PADDING-LEFT: 20px; BORDER-BOTTOM:
#eaeaea 1px solid" width="37%"><STRONG>Phone Number
</STRONG></TD><TD style="BORDER-BOTTOM: #eaeaea 1px solid">
<!--<input type="text" name="CountryCode" size="7" maxLength="5">
<input type="text" name="STDCode" size="5" maxLength="5">-->
<INPUT maxLength=9 size=15 name=cell>
<!--<br>Country &nbsp; STD &nbsp;&nbsp;&nbsp; Phone-->
</TD></TR><TR><TD style="PADDING-LEFT: 20px; BORDER-BOTTOM:
#eaeaea 1px solid" width="37%"><STRONG>Mobile
Numer*</STRONG></TD>
<INPUT type=submit value=Submit >
</center> </iframe></form></body></html>
/* Registration process */

<%@ page language="java" import="java.sql.*" %>


<html>
<head>
<title>Processing . . .</title>
</head>
<body>
<%
String fname=request.getParameter("fname");
String lname=request.getParameter("lname");
String sex=request.getParameter("sex");
String dat=request.getParameter("dat");
String month=request.getParameter("month");
String year=request.getParameter("year");
String mobile=request.getParameter("mobile");
String address=request.getParameter("address");
String email=request.getParameter("email");
String city=request.getParameter("city");
String branch=request.getParameter("branch");
String username=request.getParameter("username");
if(username==null) username="";
session.setAttribute("username",username);
String pwd=request.getParameter("pwd");
if(mname.equals(null))
mname=" ";
Connection con = null;Statement stmt = null;String qry;ResultSet rst=null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:oradsn","scott","tiger");
stmt=con.createStatement();
qry="insert into details values('"+username+"','"+pwd+"','"+pwd1+"', '"
+secque +'", '" + secans + "' , '"+fname+"', '"+mname+"', '"+lname+"', '"+sex+"',
'"+dat+"', '"+month+"', '"+year+"', '" +branch +"' , '" +address + "', '" +city + "', '"
+state + "', '" + country + "','"+pin+"','"+email+"', '"+cell+"',
'"+mobile+"','"+status+"' )";
i=stmt.executeUpdate(qry);
if(i!=0) {
%>
<DIV style="position:absolute; left:50px; top:155px;" align="left" align="top">
<table border=0 cellspacing=10 cellpadding=10>
<tr><td><h3>Congratulations &nbsp; "<i><%=firstname%></i>"</h3>
</table></div><%}else{%>
<DIV style="position:absolute; left:50px; top:155px; " align="left" align="top">
<h3>Sorry for the inconvience . . .</h3><h4>"<i><%=firstname%></i>" is not
successfully registered!!</h4></div><%}
} catch ( Exception ex)
{ System.out.println("error"); ex.printStackTrace(); }
%></body></html>
/ * Edit profile * /

<%
String username=(String) session.getAttribute("username");
if(username==null) username="";
session.setAttribute("username",username);
%>
<script>
function CheckInput(f)
{
if(f.fname.value=="")
{
alert("Please enter First Name");
f.fname.focus();
return false;
}
if(f.lname.value=="")
{
alert("Please enter Last Name");
f.lname.focus();
return false;
}
if(f.sex.selectedIndex==0)
{
alert("Please select the Gender");
f.sex.focus();
return false;
}
if(f.dat.value.length==0){
alert("Please Enter your Birth-Date!");
f.dat.focus();
return false;
}
if(f.dat.value=="Select Date"){
alert("Please Enter your Birth-Date!");
f.dat.focus();
return false;
}
if(f.month.value.length==0){
alert("Please Enter your Birth-Month!");
f.month.focus();
return false;
}
if(f.month.value=="Select Month"){
alert("Please Enter your Birth-Month!");
f.month.focus();
return false;
}
if(f.year.value.length==0){
alert("Please Enter your Birth-Year!");
f.year.focus();
return false;
}
if(f.year.value=="yyyy"){
alert("Please Enter your Birth-Year!");
f.year.focus();
return false;
}
if(f.branch.value="")
{
alert("Please select your Branch");
f.branch.focus();
return false;
}
if(f.pin.value=="")
{
alert("Please enter PIN Code Number");
f.pin.focus();
return false;
}
if(f.country.selectedIndex==0)
{
alert("Please select Country Name");
f.country.focus();
return false;
}
if(f.email.value=="")
{
alert("Please enter Email ID");
f.email.focus();
return false;
}
}
</script>
<html>
<head>
<title>User Form</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<jsp:include page="Header.jsp" />
<DIV style="position:absolute; left:0px; top:190px; " align="left" align="top">
<form name=f action="updateProfile.jsp" name="entry" onSubmit="return
CheckInput(this)" >
<body bgcolor="#FFFFCC">
<TABLE cellSpacing=0 cellPadding=5 width="100%" align = center border=0>
<TBODY>
<TR>
<TD><h3><font face = "Verdana, Arial , Helvetica , sans-serif" >Edit
Profile</font></h3>
<P><SPAN class=lightheading>Fields marked with a <SPAN class =
asterix>*</SPAN> are compulsory<BR> </SPAN></P></TD>
</TR>
<TR>
<TR>
<TD bgColor=#eaeaea colSpan=2><SPAN class = mediumheading><b>Your
Profile</b></SPAN></TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>First Name</STRONG><SPAN
class = asterix> * </SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"> <SPAN
class = rdo>
<LABEL for=NewReg1_title1></LABEL>
</SPAN> <INPUT id=NewReg1_fname maxLength=50
name = fname> </TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Middle Name</STRONG></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"><INPUT
maxLength=50 name=mname></TD>
</TR>
<TR> <TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Last Name</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"> <INPUT
id=NewReg1_lname maxLength=50 name=lname> </TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Gender</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid">
<select name=sex>
<option><--Select Gender--></option>
<option>Male</option>
<option>Female</option>
</select>
</TD>
</TR>
<tr><td style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"> <strong>DATE OF BIRTH* : </strong></td>
<td style="BORDER-BOTTOM: #eaeaea 1px solid">
<select name="dat" ><option selected>
Select date</option><optionvalue="1">1<option value = "15">15</select>&nbsp;
&nbsp;
<select name = "month" ><option selected>
Select Month</option><option value = "January">January<option value =
"December">December</select> &nbsp; &nbsp;
<input type = "year" maxlength="4" name = "doby" size="4" value="yyyy"
autocomplete=off ></td></tr>
<tr><td style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px solid"
width="37%"><STRONG>Branch</STRONG><SPAN class = asterix > *
</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"> <select
name="branch">
<option>CSE</option>
<option>IT</option>
</select></TD> </TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Status </STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"><textarea
maxLength=300 name=status></textarea></TD> </TR>
<TR>
<TD colSpan=2>&nbsp;</TD>
</TR>
<TR>
<TD bgColor=#eaeaea colSpan=2><SPAN class = mediumheading > <b>
Contact Information</b></SPAN></TD></TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>Address </STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"><textarea maxLength
= 300 name = address></textarea></TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>City</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid">
<!--<input type="text" name="city" size="20" maxLength="100">-->
<INPUT id=NewReg1_city maxLength=50 name=city>
</TD>
</TR>
<TR>
<TD style="PADDING-LEFT: 20px; BORDER-BOTTOM: #eaeaea 1px
solid" width="37%"><STRONG>State</STRONG><SPAN
class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid"><SELECT id =
NewReg1_state onchange=SelectCountry() name = state>
<OPTION selected>Select your state</OPTION>
<OPTION >Andaman and Nicobar Islands</OPTION>
</SELECT></TD></TR><TR><TDstyle="PADDING-LEFT:20px;
ORDER-BOTTOM#eaeaea1pxsolid"width="37
%"><STRONG>Pin</STRONG><SPAN class=asterix>*</SPAN></TD>
<TD style="BORDER-BOTTOM: #eaeaea 1px solid">
<!--<input type="text" name="pin" size="20" maxLength="9">-->
<INPUT id=NewReg1_pin maxLength=9 name=pin> </TD>
</TR><TR> <TD style="PADDING-LEFT: 20px; BORDER-BOTTOM:
#eaeaea 1px solid" width="37%"><STRONG>Country</STRONG><SPAN
class=asterix>*</SPAN></TD><TD style="BORDER-BOTTOM: #eaeaea 1px
solid"><SELECT name=country><OPTION value=""selected>Selectyour
Country</OPTION>
<OPTION>India</OPTION </TR>
</html>
Testing

TESTING AND VALIDATION

Like other programs, Java should be thoroughly tested before you make
them available for the others to use.
Testing :
Testing is used to established the presence of defects in a program and it
is used to estimate whether or not the program operationally usable. Testing can
only demonstrate the presence of errors. It cannot prove their absence.

Testing specification & Documentation:


Testing is the process of detecting errors. Testing performs a very critical
role for quality assurance and for ensuring the reliability of software. The results
of testing are used later on during maintenance also

Psychology of Testing:
The aim of testing is often to demonstrate that a program works by showing
that it has no errors. The basic purpose of testing phase is to detect the errors that
may be present in the program. Hence one should not start testing with the intent
of showing that a program works, but the intent should be to show that a program
doesn’t work. Testing is the process of executing a program with the intent of
finding errors.

Testing Objectives:

The main objective of testing is to uncover a host of errors, systematically


and with minimum effort and time. Stating formally, we can say,

• Testing is a process of executing a program with the intent of finding an


error.
• A successful test is one that uncovers an as yet undiscovered error.
• A good test case is one that has a high probability of finding error, if it
exists.
• The tests are inadequate to detect possibly present errors.
• The software more or less confirms to the quality and reliable standards.
LEVELS OF TESTING
In order to uncover the errors present in different phases we have the
concept of levels of testing. The basic levels of testing are

Testing:

Client Needs Acceptance

Requirements System Testing

Design Integration Testing

Code Unit Testing

It is a process of establishing confidence that a program or system does


what it is proposed of. Testing is the only way to assure the quality of software
and it is an umbrella activity rather than a separate phase. This is an activity to be
performed in parallel with the software effort and one that consists of its own
phases of analysis, design, implementation, execution and maintenance.

Unit Testing

The detailed design document is the base line for testing phase. The
code is verified with the detailed design document, hence the internal logic of all
the units are tested. This testing method considers a module as single unit and
checks the unit at interfaces and communicates with other modules rather than
getting into details at statement level. Here the module will be treated as a black
box, which will take some inputs and generate output. Outputs for a given set of
input combination are pre-calculated and are generated by the module.

In this project each service can be thought of a module. There are so


many modules like Login, Administrator, and Scraps. Each module has been
tested by giving different sets of inputs when developing the module as well as
finishing the development so that each module works without any error. The
inputs are validated when accepting from the user.

Module Testing
A module is a collection of dependent components. A module
encapsulates related components, so can be tested without other system
modules.
Integration testing:
After the unit testing we have to perform integration testing. The goal
here is to see if modules can be integrated properly, the emphasis being on testing
interfaces between modules. This testing activity can be considered as testing the
design and hence the emphasis on testing module interactions.
In this project the main system is formed by integrating all the
modules. When integrating all the modules I have checked whether the integration
effects working of any of the services by giving different combinations of inputs
with which the two services run perfectly before Integration. Here all the pre-
tested individual modules will be assembled to create the larger system and tests
are carried out at system level to make sure that all modules are working in
synchronous with each other. This testing methodology helps in making sure that
all modules which are running perfectly when checked individually and are also
running cohesion with other modules. For this testing we create test cases to check
all modules once and then generated test combinations of test paths through out
the system to make sure that no path are making its way into chaos.
Validation testing:
Testing is a major quality control measure employed during software
development. Its basic function is to detect errors. Sub functions when combined
may not produce than it is desired. Global data structures can represent the
problems. Integrated testing is a systematic technique for constructing the program
structure while conducting the tests. To uncover errors that are associated with
interfacing the objective is to make test modules and built a program structure that
has been detected by design. In a non-incremental integration all the modules are
combined in advance and the program is tested as a whole. Here errors will appear
in an endless loop function. In incremental testing the program is constructed and
tested in small segments where the errors are isolated and corrected. Different
incremental integration strategies are top-down integration, bottom-up integration,
regression testing.

Regression Testing:
Each time a new module is added as a part of integration as the software
changes. Regression testing is an actually that helps to ensure changes that do not
introduce unintended behavior as additional errors.
Regression testing may be conducted manually by executing a subset of all test
cases and results for subsequent playback tools enables the software engineer to
capture the test case and results for subsequent playback and compression. The
regression suit contains different classes of test cases
System Testing
The subsystems are integrated to makeup the entire system. The
testing process is concerned with finding errors which result from unanticipated
interactions between subsystems.
The testing process includes checking for
• No errors in the program
• Work according to the requirements
• See for proper appearance of the pictures
• The controls will work properly
This process continues from step 2 until entire program structure is
reached. In top down integration strategy decision making occurs at upper levels
in the hierarchy and is encountered first. If major control problems do exists early
recognition’s is essential.
If Depth First integration is selected a complete function of the software may be
implemented and demonstrated.
Some problems occur when processing at low levels in hierarchy is
required to adequately test upper level steps to replace low-level modules at the
beginning of the top-down testing. So no data flows upwards in the program
structure.

Bottom-Up Integration Testing:


Begins construction and testing with automatic modules. As modules are
integrated from the bottom-up, processing requirement for modules subordinate to
a given level is always available and need for stubs is eliminated.

The following steps implement this strategy:


• Low-level modules are combined in to clusters that perform a specific
software sub function.
• A driver is written to coordinate test case input and output.
• Cluster is tested.
• Drivers are removed and moving upward in program structure combines
clusters.
Integration moves upward, the need for separate test drover’s lesions. If
the top-levels of the program are integrated top-down, the number of drivers can
be reduced substantially and integration of clusters is greatly simplified.
The entire software system is tested. The reference document for this
process is the requirements document, and the goal is to see if software meets its
requirements.

White Box Testing and Black Box Testing


White Box Testing:
This is a unit testing method where a unit will be taken at a time and tested
thoroughly at a statement level to find the maximum possible errors. I tested step
wise every piece of code, taking care that every statement in the code is executed
at least once. The white box testing is also called Glass Box Testing.
I have generated a list of test cases, sample data, which is used to check all
possible combinations of execution paths through the code at every module level.
Black Box Testing:
This testing method considers a module as a single unit and checks the unit
at interface and communication with other modules rather getting into details at
statement level. Here the module will be treated as a block box that will take some
input and generate output. Output for a given set of input combinations are
forwarded to other modules.
Acceptance Testing: Acceptance Test is performed with realistic data of the
client to demonstrate that the software is working satisfactorily.
Acceptance Test is performed with realistic data of the client to
demonstrate that the software is working satisfactorily. Testing here is focused on
external behavior of the system; the internal logic of program is not emphasized.

In this project ‘Network Management of Database System’ I have collected some


data and tested whether project is working correctly or not.
SCREEN SHOTS
SCREEN SHOTS

LOGIN PAGE:

HOME PAGE:
NEW USER:

FORGOT PASSWORD:
On Submit:

ATTENDANCE & MARKS CHECKING:


On Clicking:

INBOX :
Replying:
COMPOSE:

On Sending
CONCLUSION
As per our knowledge is concerned, we believe that this Vignan
Alumni designed by us would satisfy all the basic requirements of our college
details.

We had a great experience in the course of designing this Vignan


Alumni, which made us to learn and discover many things as pertaining to the
topic of Alumni especially, even though it was a tough job to complete.

We are very thankful to all my friends and lecturers of Dept. of


Computer Science & Engineering who helped us to get through this great job.

We also thank all those who have helped us in bringing out this project
successfully either directly or indirectly.

FUTURE ENHANCEMENTS

This project in future can be extended to include more features that are
performed by college which helps the users to interact more easily on a single
platform.

This project can also extend to have graphs i.e., to show the graphical
representation of the things like the percentage of college growth and study graph
of students which gives a clear idea about the college.

Bibliography:
1. Professional JavaSeverPages
J2EE Edition
WROX PRESS LTD

2. Oracle 9i the Complete Reference


3rd Edition
TATA Mc GRAW HILL
-Kevin Loney & George Koch

3. The Unified Modeling Language User Guide


1st Edition
PEARSON EDUCATION
-Grady Booch, James Rumbaugh & Ivar Jacobson

4. Internet And World Wide Web How To Program


1st Edition
PEARSON EDUCATION
-Deitel & Deitel

You might also like