69
TRAINING REPORT ON ZAPP MAILER  A project report submitted in the partial fulfillment of the requirement for the award of d egree of Bachelor of Technology ( C.S.E.) (Session: 2010-2014) Supervised By: Submitted By CSE DEPTT. ISHANK AGGARWAL MIET 3910009 Modern Institute of Engineering and Technology, Kurukshetra University, SESSION (2010 -2014)

zapp maller

Embed Size (px)

Citation preview

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 1/69

TRAINING REPORT ON

ZAPP MAILER

A project report submitted in the partial fulfillment of the requirement for the award of degree of

Bachelor of Technology ( C.S.E. )

(Session: 2010-2014)

Supervised By: Submitted By

CSE DEPTT. ISHANK AGGARWAL

MIET 3910009

Modern Institute of Engineering and Technology, Kurukshetra University,

SESSION (2010 -2014)

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 2/69

DECLARATION

I, Ishank Aggarwal, a student of Bachelor of Technology (C.S.E.), in the Department of C.S.E.,

Modern Institute of Engineering and Technology, Kurukshetra University, Kurukshetra, under

class Roll No.3910009, for the session 2010-2014, hereby, declare that the project report (CSE-)

entitled ―ZappMailer‖ has been completed by me in VI semester.

The matter embodied in this Project Report has not been submitted earlier forward of any degree

or diploma to the best of my knowledge and belief.

Date: (Ishank Aggarwal)

ACKNOWLEDGEMENT

It has come out to be a sort of great pleasure and experience for all of us to work on the project

―Zapp Mailer ‖.

We would like to express our appreciations to all individuals who assisted us in any way and we

sincerely of that no one feel left out.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 3/69

At the very outset, I am highly indebted to Alpha-it CHD for giving me an opportunity to carry

out my project on “Zapp Mailer” at their esteemed organization. I would specially thank

Mr.Satnam Singh , Project Guide, Alpha-it chd for giving time and guidance throughout mytraining without whom it would have been impossible to attain success.

Finally, we also warmly thanks to all our colleagues who encouraged us to a extent, which made

the project successful.

I own my regards to the entire faculty of the department of computer science at M.I.E.T. from

where I have learnt the basics of Computer Science and whose informal discussions and able

guidance was a become light for me in the entire duration of this work.

I would also like to thank ER. RASHMI for constant support and encouragement provided by

her.

PREFACE

This project was undertaken at ALPHA-IT , during industrial training engineering to automate

the system .The project is named as ZAPP MAILER

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

planned, systematic way so as to develop and application after an analysis of requirement, so thatit will be commercially helpful. In terms of its ultimate objectives it gives an experience of

realistic application.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 4/69

The aim of this project is to realistic, efficient, web based software for remote applicant, by using

programming in Java.

The project was aimed to achieve full fledge user friendliness. We have tried a lot to achieve allthe characteristics of good software. In later version it will be more refined and integrated.

TABLE OF CONTENTS

1.INTRODUCTION

2.COMPANY DETAILS

3.INTRODUCTION TO PROJECT

4.SYSTEM ANALYSIS

5.FEASIBILITY STUDY AND PROPOSED OBJECTIVES

6.DESIGN AND DATA FLOW DIAGRAM SYSTEM

7.SOFTWARE ENVIRONMENTS

8.FRAMES

9.TESTING AND IMPLEMENTATION

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 5/69

1. INTRODUCTION

Definitions

User : Person who users this application.User can be Administrator, Operator, Registered

User and Guest user.

Operator : One who operates a machine or application. The person who manages the data

entry for the application.

Email : A system for sending and receiving messages electronically over a computer network,

as between personal computers.Template : It is generally refer to a model or standard for making comparisons. A master page

on which you can globally edit and format graphic elements and text common to each web

page.

Plan : It is a proposal, usually tentative idea for doing something.

SMS : It refer to short message service; a system used for sending text messages to and from

mobile phones.

Group : An assemblage of persons or objects gathered or located together.Sender : Someone who transmits a email/message.

Recipient : A person who receives email/message.

Request : It refers to the act of asking for specific required thing.

FAQ : It is a list of frequently asked questions and their answers about a given subject

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 6/69

2. COMPANY DETAILS

Alpha Net is a global software consulting and application development company specialized in

tackling the most complex business problems through the use of technology, maximizing

investment performance across portfolio of business critical applications, while reducing time

and risk, since 1999.

Our core portfolio comprises applications development. We deliver a broad portfolio of services

to clients in the manufacturing, financial services, healthcare, and communications with a team

committed to deliver innovation.

Alpha Net currently has development centers in Santa Clara, CA , US and Chandigarh, India.

The Alpha Net's development centers are state-of-the-art facilities in terms of their infrastructure,

data security, and physical location projection. The development centers have IT infrastructures

that span from Open Systems environments like Linux to the latest Windows-based systems. The

centers have high-speed data links that connect them with each other and with the clients to

create seamless virtual teams. Since we know security is important to you, the networks are

protected through multiple layers of firewalls and DMZ implementations to ensure our

customers' assets are protected .

Our multiple process models address specific customer and project needs and span Domain

Service, Maintenance, Testing, Conversion and Development process models. ―The hallmark of

The AlphaNet process is that we tailor our approach to meet the needs of each client. There are

no ‗cookie cutter‘ answers‖ We build personal relat ionships with our staff to understand their

goals, and we leverage their strengths to improve the services they provide. We pride ourselves

to be the Agile & Flexible solution delivery provider. Alpha Net & our developers could provide

services in most flexible environments.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 7/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 8/69

4. SYSTEM ANALYSIS:

Analysis means the study of existing system, in other words we can say that how the survey is

presently being conducted by any organization. It is a problem solving activity that requires

intensive communication between the system users and system developers. System analysis orstudy is an important phase of any system development process. The system is studied to the

minutest detail and analyzed. The system analyst plays the role of the interrogator and dwells

deep into the working of the present system. The system is viewed as a whole and the input to

the system are identified. The outputs from the organizations are traced to the various

processes. System analysis is concerned with becoming aware of the problem, identifying the

relevant and decisional variables, analyzing and synthesizing the various factors and determining

an optimal or at least a satisfactory solution or program of action.

A detailed study of the process must be made by various techniques like interviews,

questionnaires etc. The data collected by these sources must be scrutinized to arrive to a

conclusion. The conclusion is an understanding of how the system functions. This system is

called the existing system. Now the existing system is subjected to close study and problem areas

are identified. The designer now functions as a problem solver and tries to sort out the

difficulties that the enterprise faces. The solutions are given as proposals. The proposal is then

weighed with the existing system analytically and the best one is selected. The proposal is

presented to the user for an endorsement by the user. The proposal is reviewed on user request

and suitable changes are made. This is loop that ends as soon as the user is satisfied with

proposal.

Preliminary study is the process of gathering and interpreting facts, using the information for

further studies on the system. Preliminary study is problem solving activity that requires

intensive communication between the system users and system developers. It does various

feasibility studies. In these studies a rough figure of the system activities can be obtained, from

which the decision about the strategies to be followed for effective system study and analysis can

be taken.

Here a detailed study of existing system is carried along with all the steps in system analysis. An

idea for creating a better project was carried and the next steps were followed.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 9/69

5. FEASIBILITY STUDY AND PROPOSED OBJECTIVES

Feasibility study is made to see if the project on completion will serve the purpose of the

organization for the amount of work, effort and the time that spend on it. Feasibility study lets

the developer foresee the future of the project and the usefulness. A feasibility study of a system proposal is according to its workability, which is the impact on the organization, ability to meet

their user needs and effective use of resources. Thus when a new application is proposed it

normally goes through a feasibility study before it is approved for development.

5.1 TYPES OF FEASIBILITY STUDY :

1. Economic Feasibility

2. Technical Feasibility

3. Operational Financial Feasibility

5.1.1 ECONOMIC FEASIBILITY:

Economic analysis ascertains the cost and benefits from the proposed system.The development

cost, hardware and software cost etc. are determined. The expected benefits of the system are

also ascertains.

The following are some of the important financial questions asked during preliminary

investigation:

• The costs conduct a full system investigation.

• The cost of the hardware and software.

• The benefits in the form of reduced costs or fewer costly errors.

Since the system is developed as part of project work, there is no manual cost to spend for the

proposed system. Also all the resources are already available, it give an indication of the system

is economically possible for development.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 10/69

5.1.2 TECHNICAL FEASIBILITY:

The system must be evaluated from the technical point of view first. The assessment of this

feasibility must be based on an outline design of the system requirement in the terms of input,

output, programs and procedures. Having identified an outline system, the investigation must go

on to suggest the type of equipment, required method developing the system, of running the

system once it has been designed.

Technical issues raised during the investigation are:

• Does the existing technology sufficient for the suggested one?

• Can the system expand if developed?

The project should be developed such that the necessary functions and performance are achieved

within the constraints. The project is developed within latest technology. Through the technology

may become obsolete after some period of time, due to the fact that never version of same

software supports older versions, the system may still be used. So there are minimal constraints

involved with this project. The system has been developed using Java the project is technically

feasible for development.

5.1.3 BEHAVIORAL FEASIBILITY:

This includes the following questions:

• Is there sufficient support for the users?

• Will the proposed system cause harm?

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 11/69

The project would be beneficial because it satisfies the objectives when developed and installed.

All behavioral aspects are considered carefully and conclude that the project is behaviorally

feasible.

6. DESIGN AND DATA FLOW DIAGRAM SYSTEM DESIGN

Design is the first step into the development phase for any engineered product or system. Design

is a creative process. A good design is the key to effective system. The term ―design‖ is defined

as ―the process of applying various techniques and principles for the purpose of defining a process or a system in sufficient detail to permit its physical realization‖. It may be defined as a

process of applying various techniques and principles for the purpose of defining a device, a

process or a system in sufficient detail to permit its physical realization. Software design sits at

the technical kernel of the software engineering process and is applied regardless of the

development paradigm that is used. The system design develops the architectural detail required

to build a system or product. As in the case of any systematic approach, this software too has

undergone the best possible design phase fine tuning all efficiency, performance and accuracy

levels. The design phase is a transition from a user oriented document to a document to the

programmers or database personnel. System design goes through two phases of development:

Logical and Physical Design.

6.1 LOGICAL DESIGN:

The logical flow of a system and define the boundaries of a system. It includes the following

steps:

• Reviews the current physical system – its data flows, file content, volumes , Frequencies

etc.

• Prepares output specifications – that is, determines the format, content and Frequency of

reports.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 12/69

• Prepares input specifications – format, content and most of the input functions.

• Prepares edit, security and control specifications.

• Specifies the implementation plan.

• Prepares a logical design walk through of the information flow, output, input, Controls

and implementation plan.

• Reviews benefits, costs, target dates and system constraints.

6.2 PHYSICAL DESIGN:

Physical system produces the working systems by define the design specifications that tell the

programmers exactly what the candidate system must do. It includes the following steps.

• Design the physical system.

• Specify input and output media.

• Design the database and specify backup procedures.

• Design physical information flow through the system and a physical design

• Plan system implementation.

• Prepare a conversion schedule and target date.

• Determine training procedures, courses and timetable.

• Devise a test and implementation plan and specify any new hardware/software.

• Update benefits , costs , conversion date and system constraints

Design/Specification activities:

• Concept formulation.

• Problem understanding.

• High level requirements proposals.

• Feasibility study.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 13/69

• Requirements engineering.

• Architectural design

6.3 MODULE DESIGN:

The working of ZappMailer has been divided into following modules:

AdministrationRegistered User Manager

ZappMailer_Administration encapsulates the administrative part of the application.

Administrator can create account for operator(s), who will handle the operation process of

application. This module provides the Administrator with the functionality to manage all master

screens of the application like Country, state, city, email templates, email plan(s), SMS plan(s)

etc. An administrator can also maintain the FAQ information. In this, Operator is provided with

the functionality to view and post replies to requests sent by any registered user. Precisely,

ZappMailer_Administration targets to cover the following business functions of the application:-

Manage Email Templates

Manage Email Plans

Manage SMS Plan

Manage Operators

Manage Request

Manage Profile

Country Maintenance

State Maintenance

City Maintenance

Manage FAQ

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 14/69

View FAQ

Change Password

ZappMailer_Registered User Manager covers the end user area of the application. Here, user

can

register with the application through sign up form to become a registered user; whereas,

administrator

is provided with the functionality to activate or inactivate any registered user. In this, registered

users

have rights to manage various groups. User can also manage various contacts. User can also

view

or buy various SMS & Email Plans. ZappMailer_Registered User Manager targets to cover the

following business functions of the application:-

Manage Mail Accounts

Manage Groups

Manage Contacts

Available SMS Plans

SMS

◦ Create SMS

◦ Saved SMS

◦ Sent SMS

Available Email Plans

Email

◦ Create New Mails

◦ Compose Mail Page

◦ Select Template

◦ Greeting Option Page

◦ Title of the Mail Page

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 15/69

◦ Introduction Page

◦ Content Page

◦ Message Footer Page

◦ Select Sender & Recipient Page

Saved Mails

Sent Mails

Manage Users

Manage Profile

Send Request & View Response

Change Password

Users of the System

The application has following types of users:-

Administrator

Operator

Registered User

Guest

Administrator

Administrator is the super user o fthe application having all administrative rights of application.

He/she is allowed to manage other users of the application. Administrator is allowed to manage

the core part of application including email template plans management, user privilege

management etc.

OperatorIt covers those users who are working for the administrator as assistant or co-worker. Operator is

having right to manage various request(s) made by various registered users.

Registered User

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 16/69

Registered user of the application come under this category, registered user's can manage details

like Groups management, manage Contacts, view and buy SMS or Email plans, send SMS or

Email, view saved or sent email or SMS etc. He can also send the query as request to the

administration.

Registered User can maintain their own account.

Guest

Users, who are not yet registered with application, are Guest users. Guest user is having limited

access in the application. He/she is allowed to view & use the features available on the home

page like login etc.

7. Software Environments

JAVA

Introduction: Java is an object-oriented programming language with a built-in application

programming interface (API) that can handle graphics and user interfaces and that can be used to

create applications or applets. Because of its rich set of API's, similar to Macintosh andWindows, and its platform independence, Java can also be thought of as a platform in itself. Java

also has standard libraries for doing mathematics.

Much of the syntax of Java is the same as C and C++. One major difference is that Java does not

have pointers. However, the biggest difference is that you must write object oriented code in

Java. Procedural pieces of code can only be embedded in objects. In the following we assume

that the reader has some familiarity with a programming language. In particular, some familiarity

with the syntax of C/C++ is useful.In Java we distinguish between applications, which are programs that perform the same functions

as those written in other programming languages, and applets, which are programs that can be

embedded in a Web page and accessed over the Internet. Our initial focus will be on writing

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 17/69

applications. When a program is compiled, a byte code is produced that can be read and executed

by any platform that can run Java.

Characteristics Of JAVA:

1) Platform Independent:

Java is a platform for application development. A platform is a loosely defined computer

industry buzzword that typically means some combination of hardware and system software that

will mostly run all the same software.

Java byte code is exactly the same on every platform.. Java programs that have been compiled

into byte code still need an interpreter to execute them on any given platform. The interpreterreads the byte code and translates it into the native language of the host machine on the fly. Since

the byte code is completely platform independent, only the interpreter and a few native libraries

need to be ported to get Java to run on a new computer or operating system.

2) Object oriented

In object-oriented programs data is represented by objects. Objects have two sections, fields

(instance variables) and methods. Fields tell you what an object is. Methods tell you what an

object does. These fields and methods are closely tied to the object's real world characteristics

and behavior. When a program is run messages are passed back and forth between objects. When

an object receives a message it responds accordingly as defined by its methods.

3) Robust

Java implements a robust exception handling mechanism to deal with both expected and

unexpected errors. The worst that an applet can do to a host system is bringing down the runtime

environment. It cannot bring down the entire system.

Most importantly Java applets can be executed in an environment that prohibits them from

introducing viruses, deleting or modifying files, or otherwise destroying data and crashing the

host computer. A Java enabled web browser checks the byte codes of an applet to verify that it

doesn't do anything nasty before it will run the applet.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 18/69

4) Multithreaded

Java is inherently multi-threaded. A single Java program can have many different threads

executing independently and continuously. Three Java applets on the same page can run together

with each getting equal time from the CPU with very little extra effort on the part of the programmer.

5) High performance

Java byte codes can be compiled on the fly to code that rivals C++ in speed using a "just-in-time

compiler." Several companies are also working on native-machine-architecture compilers for

Java. These will produce executable code that does not require a separate interpreter, and that is

indistinguishable in speed from C++.

6) Dynamic

Java programs carry with them substantial amounts of run-time type information that is used to

verify and resolve accesses to objects at run-time. This makes it possible to dynamically link

code in a safe and expedient manner. The java programming language is unusual than other

programming languages it first compiles and then interprets the program. Compile first translate

the program into intermediate language called intermediate language called java byte code. Java

byte code is platform independent code, which is further interpreted by the interpreter on the java

platform. Interpreter parses and run each java byte code instruction on the computer.

Compilation occurs only once, interpretation occurs each time when the program is executed.

Java byte code helps in making the program ―write once, run anywhere‖. The program can be

compiled into byte code by any platform that is having the java compiler; the compiled java byte

code program is ready to run on any machine having the java virtual machine (JVM). JVM is an

interpreter for byte code .

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 19/69

Advantages of Java:

1) Simple

Java has the bare bones functionality needed to implement its rich feature set. It does not add lots

of syntactic sugar or unnecessary features.

2) Object-Oriented

Almost everything in Java is a class, a method or an object. Only the most basic primitive

operations and data types (int, for, while, etc.) are at a sub-object level.

3) Platform Independent

Java programs are compiled to a byte code format that can be read and run by interpreters on

many platforms including Windows 95, Windows NT, and Solaris 2.3 and later.

4) Safe

Java code can be executed in an environment that prohibits it from introducing viruses, deleting

or modifying files, or otherwise performing data destroying and computer crashing operations.

5) High Performance

Java can be compiled on the fly with a Just-In-Time compiler (JIT) to code that rivals C++ in

speed.

6) Multi-Threaded

Java is inherently multi-threaded. A single Java program can have many different things

processing independently and continuously.

Java platform:

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 20/69

A java platform is the hardware or software environment in which a program runs. The java

platform has two components: Java Virtual Machine (JVM)

1. Java Application Programming Interface (Java API)

2. JVM is a standardized hypothetical computer, which is emulated inside your computer by a program.

Java Source Code

Java Compiler

Java Source Code

Java Virtual Machine

The program by the interpreter

Java interpreter

Computer Operating System

The Java API is a large collection of ready-made software components that provide many useful

capabilities, such as graphical user interface (GUI). The java API is grouped into libraries of

related classes and interfaces these libraries are known as packages.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 21/69

AWT:

The Java programming language class library provides a user interface toolkit called the Abstract

Windowing Toolkit, or the AWT. The AWT is both powerful and flexible. Newcomers,

however, often find that its power is veiled. The class and method descriptions found in thedistributed documentation provide little guidance for the new programmer. Furthermore, the

available examples often leave many important questions unanswered. Of course, newcomers

should expect some difficulty. Effective graphical user interfaces are inherently challenging to

design and implement, and the sometimes complicated interactions between classes in the AWT

only make this task more complex. However, with proper guidance, the creation of a graphical

user interface using the AWT is not only possible, but relatively straightforward.

This article covers some of the philosophy behind the AWT and addresses the practical concern

of how to create a simple user interface for an applet or application.

User interface

The user interface is that part of a program that interacts with the user of the program. User

interfaces take many forms. These forms range in complexity from simple command-lineinterfaces to the point-and-click graphical user interfaces provided by many modern applications.

At the lowest level, the operating system transmits information from the mouse and keyboard to

the program as input, and provides pixels for program output. The AWT was designed so that

programmers don't have worry about the details of tracking the mouse or reading the keyboard,

nor attend to the details of writing to the screen. The AWT provides a well-designed object-

oriented interface to these low-level services and resources.

Because the Java programming language is platform-independent, the AWT must also be

platform-independent. The AWT was designed to provide a common set of tools for graphical

user interface design that work on a variety of platforms.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 22/69

The user interface elements provided by the AWT are implemented using each platform's native

GUI toolkit, thereby preserving the look and feel of each platform. This is one of the AWT's

strongest points. The disadvantage of such an approach is the fact that a graphical user interfacedesigned on one platform may look different when displayed on another platform.

Components and containers

A graphical user interface is built of graphical elements called components. Typical components

include such items as buttons, scrollbars, and text fields. Components allow the user to interact

with the program and provide the user with visual feedback about the state of the program. In the

AWT, all user interface components are instances of class Component or one of its subtypes.

Components do not stand alone, but rather are found within containers. Containers contain and

control the layout of components. Containers are themselves components, and can thus be placed

inside other containers. In the AWT, all containers are instances of class Container or one of its

subtypes.

Java AWT Components:

Java's Abstract Windowing Toolkit provides many of the user interface objects we find in the

Windows environment. These are called "Components" of the Java AWT. The applet below

contains most of the components we will use to create a graphical user interface (GUI) for our

applets. It simply initializes and creates the components but does not handle any of the events

they trigger. Click on the hyperlink to the right of the component in order to see an example of

the code that includes the event handlers.

Label Component

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 23/69

The Label component is the simplest of Java's AWT. Labels consist of a text string for display

only and they never call an action method. The syntax is as follows:

Label labelname = new Label("This label is for decoration only.");

The justification of a label can be left, right, or centered. The line below will create a label that isright justified.

Label labelname = new Label("This label is for decoration only.",Label.RIGHT);

We can change the text of a label or get the label's text using the labelname.setText("This is

new text."); or String labelText = labelname.getText(); methods. We can change the alignment or

get the alignment of a label with the labelname.setAlignment(Label.CENTER); or int label

Alignment = labelname.getAlignment(); methods.

import java.applet.*;

import java.awt.*;

public class label extends Applet

{

public void init()

{

Label firstLabel = new Label("Labels exist simply ");

add(firstLabel);

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 24/69

Label secLabel = new Label("to place text on the screen");

add(secLabel);

Label thirdLabel = new Label("They can be aligned left, right

or center.");

add(thirdLabel);

}

}

After compiling HYPERLINK "http://www.krhs.net/computerscience/java/gloss.htm" this

program we need to create an HTML page with a reference to the class file. It will require a

graphic window that is large enough to contain the labels (200 x 100 is a good size for this label).

Button Component

The Button component of Java's AWT is a workhorse of any GUI. The only decision you need to

make when you create one is whether or not you want it to have a label. The syntax is as follows

Button buttonname = new Button(button label);

Where 'buttonname' is the name you want to give the object and 'button label' is the text you

want to appear on the button. Once you create the button you add it to the applet (or other

container) by entering the command

add(buttonname);

We can change the button's label or get the label's text using the Button.setLabel or

Button.getLabel methods. Now that we can create the buttons and manipulate their labels we can

investigate the code that makes the button perform the operations we need.

The Applet below changes the background color by simply clicking on one of the labeled

buttons.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 25/69

import java.applet.*;

import java.awt.*;

public class button extends Applet

{

public void init()

{

add(new Button("Red"));

add(new Button("White"));

add(new Button("Blue"));

add(new Label("Hit a Button to

change the screen color");

}

public boolean action(Event evt, Object

whatAction)

{

if (!(evt.target instanceof

Button))

{

return false;

}

String buttonLabel = (String)

whatAction;

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 26/69

if (buttonLabel=="Red")

setBackground(Color.red);

if (buttonLabel=="White")

setBackground(Color.white);

if (buttonLabel=="Blue")

setBackground(Color.blue);

repaint();

return true;

}

}

Check Boxes

Check boxes are used as on-off or yes-no switches since every time you click on one, you toggle

to the opposite selection. You are able to select as many or as few check boxes as you like. Then

when you write your program, the state of each check box can be compared to determine an

action. A button is needed to trigger an event to check the state of the check boxes.

The following line will create a checkbox with 'Apples' as a label, null as a place holder for a

group argument, and false to indicate it is not selected. (The group argument is used for radio

buttons which are a special kind of check boxes.)

Checkbox apples = new Checkbox("Apples", null, false);

Once you create the checkbox just add it to the applet (or other container) by entering the

command

add(apples);

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 27/69

where apples is the Checkbox name. We can change the Checkbox label or get the Checkbox

text using the Checkbox.setLabel(String) or Checkbox.getLabel( ) methods. The getState(

)method returns true of false, depending on whether the Checkbox is selected or unselected. The

setState(boolean) method changes the Checkbox's state to true (for selected) or false(for

unselected.)

Consider the example below which illustrates how Checkboxes can be implemented.

The Applet below prints a list of fruits. Check as many or few as you like. The "Done" button

triggers an event in order to check which boxes were selected. A list of selected items is then

painted on the applet window.

Radio Buttons

Radio buttons or checkbox groups are special kinds of checkboxes. They look the same as

checkboxes but within a particular group of them, only one can be selected at a time.

The following line will create a series of radio buttons named 'colors'.

CheckboxGroup colors = new CheckboxGroup();

Once you create the series of radio buttons, add the individual checkboxes. There are three

arguments: the radio button label, the group, and true or false, depending on whether the button

is selected or unselected. Only one radio button in the group can be selected.

add(new Checkbox("Red",colors,false));

add(new Checkbox("White",colors,false));

add(new Checkbox("Green",colors,false));

add(new Checkbox("Blue",colors,false));

The same checkbox methods that were presented on the checkbox page can be implemented with

radio buttons in the group. These include:

Checkbox.setLabel(String)Checkbox.getLabel( )

getState( )

setState(boolean)

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 28/69

The methods getCheckboxGroup() and setCheckboxGroup() can be used to access and change

the group of a given checkbox. To get or set the currently selected checkbox, use the

getCurrent() or setCurrent(Checkbox) methods.

List Boxes

The List class allows the creation of a scrolling list of values that may be selected alone or

together. If you want to create a list that does not allow multiple selections, use the following

command line. Thelist is an instance of the list.

List thelist = new List();

If you want to create a list that does allow multiple selections, use the following command line

which creates a list with 8 visible entries and multiple selections turned on. .

List thelist = new List(8, true);

Once you have created the list, the addItem method enables you to add new entries.

thelist.addItem("Coffee");

thelist.addItem("Bananas");

thelist.addItem("Oranges");

If you want to add an item at a specific location in the list, for example the first position, use the

following line. Adding an item to position -1 or at a higher position than the number on the list,

adds it to the end of the list.

thelist.addItem("Coffee", 0);

Choice Boxes

The Choice class is a lot like lists but allows you to conserve space since it provides a pop-up

menu of text string choices. The menu title displays the current choice. To work with a choice

box, an instance of the Choice class must be created.

Choice theoptions = new Choice();

Once you have created the choice, the addItem method enables you to add new entries.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 29/69

theoptions.addItem("Red");

theoptions.addItem("Green");

The currently selected item can be changed by name or index.

theoption.select("Red");OR

theoption.select(0);

The getSelectedIndex and getSelectedItem methods would return the position of the selected

item and string name of the selected item respectively.

The Choice class calls the action method whenever a choice is made, regardless of whether it is a

new choice or not. The parameter whatAction contains the name of the selected item. The

following example shows how a choice box can be used to change the background color of an

applet window.

Text Area

The TextField and TextArea classes are two different Java classes for entering text data. The

TextField class handles only one line of text. The TextArea class handles multiple lines. The

example on this page illustrates text fields and a text echo. The following line will create a

TextField with 20 columns.

TextField plaintext = new TextField(20);

The text field can also be initialized with some text when it is created.

TextField plaintext = new TextField("First Name Last Name");

Scrollbars

The Scrollbar class provides a user interface to scroll through a range of integer values. These

values can then be associated with a range of colors, the months of a year or a variety of otheruses. The Scrollbar's maximum and minimum values can be initialized as well as its minor

changes (line increments) and major changes (page increments).

The following line will create a horizontal scrollbar.

Scrollbar colorscroll = new Scrollbar(Scrollbar.HORIZONTAL);

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 30/69

The following line will create a vertical scrollbar with a starting position of 0, a page size of 5, a

minimum value of 0, and a maximum value of 255.

Scrollbar colorscroll = new Scrollbar(Scrollbar.VERTICAL, 0, 5, 0, 255);

There are three different parts of a scrollbar that allow you to select a value between themaximum and minimum in different ways. The arrows increment or decrement with the line

update which can be set to a small unit. Its value is 1 by default. Clicking between the arrow and

scroll box increments or decrements by a page value which is 10 by default. The box in the

middle allows you to click and drag to traverse the scroll bar quickly from end to end.

Swing

Swing is the primary Java GUI widget toolkit . It is part of Oracle 's Java Foundation Classes

(JFC) — an API for providing a graphical user interface (GUI) for Java programs.

Swing was developed to provide a more sophisticated set of GUI components than the earlier

Abstract Window Toolkit (AWT) . Swing provides a native look and feel that emulates the look

and feel of several platforms, and also supports a pluggable look and feel that allows applications

to have a look and feel unrelated to the underlying platform.

It has more powerful and flexible components than AWT. In addition to familiar componentssuch as buttons, check boxes and labels, Swing provides several advanced components such as

tabbed panel, scroll panes, trees, tables and lists.

Unlike AWT components, Swing components are not implemented by platform-specific code.

Instead they are written entirely in Java and therefore are platform-independent. The term

"lightweight" is used to describe such an element

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 31/69

7.1 Hardware and Software Specification

7.1.1 Hardware Specification

1. Intel P4 processor with minimum 2.0Ghz Speed or any equivalent processor

2. RAM: Minimum 512MB

3. Hard Disk: Minimum 30GB

7.1.2 Software Specification

1. JDK 1.7

NetBeans 7.2.1

2. Database

MySQL Database Server 5.5

3. Reports

iReport plug-in 4.7

JasperReports 4.7

4. Web Server

Tomcat 7.0.27

5. Application Server

GlassFish v3.1

6. Testing Tool

JUnit 4.8.2

7. Deployment Tool

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 32/69

Ant 1.8

8. Operating System

Windows 7 / Vista / XP sp3 / Linux Fedora 14

8. FRAMES

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 33/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 34/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 35/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 36/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 37/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 38/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 39/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 40/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 41/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 42/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 43/69

Operator

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 44/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 45/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 46/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 47/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 48/69

Registered User

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 49/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 50/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 51/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 52/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 53/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 54/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 55/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 56/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 57/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 58/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 59/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 60/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 61/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 62/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 63/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 64/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 65/69

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 66/69

9. TESTING AND IMPLEMENTATION

9.1 TESTING

The most important activity at the implementation stage is the system testing with the objective

of validating the system against the designed criteria. During the development cycle, user was

involved in all the phases that are analysis, design and coding. After each phase the user was

asked whether he was satisfied with the output and the desired rectification was done at the

moment. During coding, generally bottom up technique is used. Firstly the lower level modules

are coded and then they are integrated together. Thus before implementation, it involves the

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 67/69

testing of the system. The testing phase involves testing first of separate parts of the system and

then finally of the system as a whole. Each independent module is tested first and then the

complete system is tested. This is the most important phase of the system development. The user

carries out this testing and test data is also prepared by the user to check for all possible

combinations of correct data as well as the wrong data that is trapped by the system. So the

testing phase consists of the following steps:

Unit testing:

In the bottom of coding technique, each module is tested individually. Firstly the module is

tested with some test data that covers all the possible paths and then the actual data was fed to

check for results.

Integration testing:

After all the modules are ready and duly tested, these have to be integrated into the application.

This integrated application was again tested first with the test data and then with the actual data.

Validation testing or System testing:

This is the final step in testing. In this the entire system was tested as a whole with all forms,

code, modules and class modules. This form of testing is popularly known as Black Box testing

or System tests. Black Box testing method focuses on the functional requirements of the

software. That is, Black Box testing enables the software engineer to derive sets of input

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

The testing will be performed considering the following points:

1. Software testing which involves testing of all the programs together. This involves the testing

of system software utilities being used and specifically develops application software.

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 68/69

2. Flow of data within the organization

3. Accuracy of report output

4. Incomplete data formats

5. Halts due to various reasons and the restart procedures.

6. Range of items and incorrect formats

7. Invalid combination of data records.

8. Access control mechanism used to prevent unauthorized access to the system.

9.2 IMPLEMENTATION

Implementation phase of the software development is concerned with translating the design

specifications into the source code. After the system has been designed, arrives the stage of

putting it into actual usage known as the implementation of the system. This involves putting up

of actual practical usage of the theoretically designed system. The primary goal of

implementation is to write the source code and the internal documentation so that conformance

of the code to its specifications can easily be verified and so the debugging, modifications andtesting are eased. This goal can be achieved by making the source code as clear and as

straightforward as possible. Simplicity, Elegance and Clarity are the hallmarks of good programs

whereas complexity are indications of inadequate design and misdirected thinking. The system

implementation is a fairly complex and expensive task requiring numerous inter-dependent

activities. It involves the effort of a number of groups of people: user and the programmers and

the computer operating staff etc. This needs a proper planning to carry out the task successfully.

Thus it involves the following activities:

Writing and testing of programs individually

Testing the system as a whole using the live data

Training and Education of the users and supervisory staff

8/14/2019 zapp maller

http://slidepdf.com/reader/full/zapp-maller 69/69

Source code clarity is enhance buy using structured coding techniques, by efficient coding style,

by appropriate supporting documents, by efficient internal comments and by features provided in

the modern programming language.

The following are the structured coding techniques:1) Single Entry, Single Exit

2) Data Encapsulation

3) Using recursion for appropriate problems