Você está na página 1de 90

ABSTRACT

The project entitled “BROADWALK REALERS NETWORK” is developed for


organization of “NAVEEN TILES Pvt. Ltd” located in Rajastan.The developed
system helps the organization to receive orders through online for product tiles that
can be supplied by the organization.

This Activity includes three modules customers,dealers and


administrator.Customer module facilitates the customers to place order through
online,and can view catalog information provide by organization.In this module
each customer order will be verified to determine whether author dealer existing
in the area specified by customer.If dealer existing then the customer order will be
redirected to corresponding dealer otherwise those orders will be registered as
direct customers orders to Administrator.

Dealer module facilitates authorized dealers to customer orders status in


their area,to place order ,to manage their details in Administrator records.

Administrator module facilitates the Administrator to view direct customers


order status,dealers order status and also to maintain transport charges info and
products catalog information.Administrator can also appoint new Dealer and
remove existing Dealer.

The project developed on platform windows98 using software HTML,JSP,JDBC,


JavaScript, JavaMail and jdk1.4 with backend database Oracle 8.0.

1
2. PROBLEM SPECIFICATION:
The goal of problem specification is for the project manager and the client
to agree on the scope of the system under construction.In the existing system the
Administrator of organization receiving orders from customers directly or through
authorized dealers usig tele and postal services.Due to lack of proper
communication facilities the company could not get expected quantum of orders
and good response.So they want to make their products available for online
ordering.The objective of preposed system is to build a system that registers
orders from multiple customers one time.The system should facilitate quick
communication between customers,dealers and administrator.

The preposed system must allow the customer to place order.It would
provide the following facilitates to authorized dealers .
o Customers order and dispatch status
o Placing order to Administrator
o Managing personal info such as address,phoneno etc.
The preposed system would also provide the following facilities to
Administrator.
o To view Customers orders and dispatch status.
o To view Dealers orders and dispatch status.
o Maintaining products catalog and transport charges info.
o Appoint and remove dealers.
o And to check mails.

This problem definition is preliminary requirements activity that establishes


common ground between clients and developers.

2
3. FEASIBILITY REPORT: Feasibility study is the high level capsule version of
the entire requirement analysis process.The objective of feasibility study is to
determine whether the proposed system can be developed with available resources.
There are three steps to be followed for determining the feasibility study of
proposed system.

 Technical Feasibility
 Operational Feasibility
 Economical Feasibility

Technical Feasibility: It is concerned with hardware and software feasibility. In this


study,one has to test whether the proposed system can be developed using existing
technology or not.If new technology is required ,what is the likely hood that it
can be developed ?The organization for which the system to be developed is not
yet computerized .Hence there is a requirement of new hardware and software
technology for the deployment of proposed system.As per client requirements the
system to be developed should have speed response because of fast change
info,programming productivity,reliability,security,scalability,integration and
availability.To meet these requirements I as a developer found jsp1.1 spn as a
right choice because of its features platform independence,modularity and
reusability.

Operational Feasibility: Operational feasibility determines whether the proposed


system satisfied the user objectives and can be fitted in to current system
operation.The proposed system “Online Order management system” can be justified
as operationally feasible basing on the following.
 The methods of processing and presentation are completely acceptable by the
clients because they meet all the user and client requirements.
 The clients have been involved during the preparation of requirement analysis
and design process.

3
 The system will certainly satisfy the user objectives and it will also enhance
their capability.
 The system can be best fitted into current operation and requires little training
to both administrator and dealer. With the help of this system customer to
place order requires simple data entry through forms provided.The proposed
system is completely user friendly.

Economical Feasibility: This includes an evaluation of all incremental costs and


benefits expected if proposed system is implemented. costs-benefit analysis which
is to be performed during economical feasibility delineates costs for project
development and weighs them against benefits of system. In this the proposed
system replaces the manual process of receiving orders which benefits the
organization to get more orders and good response. So developing this system is
economically feasible to organization.

4
6. SOFTWARE PROFILE:
Introduction to JAVA:
Java is a general-purpose concurrent object-oriented programming language.
Java allows application developers to write a program once and then be able to
run it everywhere on the internet. Its syntax is similar to c++,but it omits many
of the features that make c++ complex,confusing and unsafe.Java was initially
developed to address the problems of building software for networked consumer
devices. It was designed to support multiple host architectures and to allow secure
delivery of software components.
A Java program is created a test file with the file extension .java.It is compiled
into one or more files of bytecode with the extension .class.Bytecodes are sts of
instructions which can run on any computer system equipped to handle java
programs. Byte code is a highly optimized set of instructions designed to be
executed by the java runtime system called the JVM. The Java Virtual Machine is
the corner stone of sun’s Java programming language.It is a component of Java
technology responsible for Java’s cross platform delivery.JVM is an interpreter for
byte code.

Features of Java:
Small & Simple: Java follows object-oriented approach,and most of java’s syntax,is
adapted from c++.Programmer who are familiar with the concepts of object-
oriented programming will have a much easier time learning Java because of its
common features.Another feature that makes Java easy to learn is not having
surprising features. In java there are small no.of clearly defined ways to
accomplish a given task.

Safe & Secure:Another feature essential to Java success is safe & secure.Java
provides security on different levels.First, the language was designed to make it
extremely difficult to execute damaging code.In this regard java eliminating all
pointers concept except for a limited form of reference to objects,Java is much
more secure language.Another level of security is before a java program is run,a

5
bytecode verifier checks each byte code to make sure that nothing suspicious is
going on.

Object-Oriented:Java inherits its object-oriented concepts from c++ and other


languages such as smalltalk.Hence Java programs are reusable, clean, easier to
understand and more bugproof.The object model in Java is simple and easy to
extend, while simple types, such as integers, are kept as high performance
nonobjects.

Interpreted:Java enables the creation of cross-platform programs by compiling


into an intermediate representation called Java Bytecode.This code can be
interpreted on any system that provides a JVM.

Platform Independence:Platform independence is another way of saying that Java


is archietecture neutral.Platform Independence is the ability of the same program to
work on different operating system.Java is completely platform independent
because a Java .class file of bytecode instructions can execute on any platform
without any alteration.

Robust:The two main reasons for program failure are memory management
mistakes and mishandled exceptional conditions. Java virtually eliminates these
problems by memory management and by providing object oriented exception
handling.

Multithreaded:Java is multithreaded. Java is multithreaded language in which more


than one set of instructions can be executed concurrently.Java provides tools to
write multithreaded programs and to make these programs reliable in execution.

Distributed:Another feature of Java is its network-centric nature.Because Java


makes it possible to create applications that communicate across Internet in the

6
same way.”The thing that distinguishes Java is its approach to distributed
programming”.

Dynamic:Java programs carry with them substantial amount 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 manner.

Introduction to JavaScript:
The JavaScript Language, which was first introduced by Netscape, gives web author
another way to add interactively and intelligence to their web pages. JavaScript is
an interpreted language; the computer must evaluate the program every time it’s
run. Java Script allows web author to embed commands in an HTML page, and any
browser that supports JavaScript can interpret the commands and act on them.
JavaScript is powerful and simple.
Why Use a Scripting Language?
HTML provides a good deal of flexibility to page authors, but HTML is
static.HTML documents can not interact with the user other than by presenting
hyperlinks. CGI script which run on web server, has made it possible to create
more interactive site, but some applications demand scripts that are to be executed
by the client. JavaScript allows web authors to write small scripts that execute on
the user’s browser instead of on the server. By using JavaScript web author can
write an application that validate the data for completeness and correctness at
client side before sending it to the server. This can greatly improve the
performance of web applications.
JavaScript commands are embedded in your HTML documents. Embedding
JavaScript in your pages requires one new HTML element:<SCRIPT> and
</SCRIPT>.The Script element takes the attribute Language which specifies
language to use when evaluating the script.

The Script tag typically used as follows.


<script language=”JavaScript”>

7
Java Script Statements
</script>
The most important thing will be done using JavaScript is interacting with the
content and information on webpages, and through it with user.

When Script Executes:


When author put JavaScript code in a page,web browser evaluates the code as
soon as it is encountered. Functions, don’t execute when they’re evaluated, they just
get stored for later use. Web author still have to cal functions explicitly to make
them work.Some functions are attached to objects such as button or on forms, and
they are called when some event happens on the button or field.

The most important feature of JavaScript is that it is an object-based


language.This simplifies the design of JavaScript programs and enables them to be
developed in a more intuitive , modular and reusable manner.Objects are a simple
way of referring to parts of a webpage. For instance The String object type
allows strings to be accessed as objects. The document object is the container for
the information on the current page. The form object defines the form with which
user interact.It includes checkboxes, radio buttons and so on. You are the form
object to post the data to server.

Introduction to JDBC:
Databases constitutes the primary data resource in enterprise application.The JDBC
API facilitates access to relational data from Java.This API provides cross-vendor
connectivity and data access across relational database from different vendors.A
database vendor such as oracle, Sybase typically provides a set of proprietary API
for accessing the data managed by the database server.Client applications written in
C/C++ can make use of these API calls for database access directly.The JDBC
API provides a Java language alternative to these vendor-specific API.JDBC API
does not eliminate the access to native API’s for database access,the
implementation of JDBC API still make these native calls for data access.The

8
JDBC driver is middle layer that translates the JDBC calls to the vendor specific
APIs.The JVM uses the JDBC driver to translate the generalized JDBC calls into
vendor specific database calls.The following are four different approaches for
connection from client application to a database server via a databse driver.
Type1 JDBC-ODBC Bridge:Open Data Base Connectivity(ODBC) is Microsoft’s
API for database driver and is popular on windows platform.The first category of
JDBC drivers provides a bridge between the JDBC API and the ODBC API.This
bridge translates JDBC calls to corresponding ODBC calls , and sends them to
ODBC datasource via ODBC libraries.This solution for data access is inefficient
because it limits the functionality of JDBC API to ODBC driver.
Type2 Part Java,Part Native Driver:Type2 driver uses the mixture of Java
implementation and vendor specific API for data access.This is much faster than
Type-1.when a database call is made using JDBC, the driver translates the request
into vendor specific API calls.In this client must have some binary code to be
loaded into machine.
Type3 Intermediate Database Access Server:Type3 servers are based on
intermediate database server.In this the Java Client application sends a JDBC call
through JDBC driver to intermediate server Which handles request using another
driver to complete the request.This type of solution makes it possible to
implement a pure java client.
Type4 Pure Java Driver: This is pure Java driver that communicates directly with
data source. This simplifies and most efficient method of accessing database, both
in performance and development time.The JDBC Core API is specified in the
java.sql.package.
JDBC defines eight interfaces that must be implemented by a driver in order to be
JDBC complaint.
java.sql.Driver java.sql.CallableStatement
java.sql.Connection java.sql.ResultSet
java.sql.Statement java.sql.DatabaseMetadata
java.sql.PreparedStatement java.sql.ResultSetMetaData

9
The DriverManager uses the Driver a driver to determine whether it can handle
a given URL. If it can handle Driver should create a Connection object and return
it to DriverManager.Connection is a single database Session.This provides an
application with Statement, PreparedStatement, CallableStatement objects for
making calls to the database. Statement has subclass Prepared Statement which in
turn subclass of CallableStatement. After executing the statement JDBC returns
results in ResultSet object which holds the result of executed query that can be
retrieved using getXXX methods.DatabaseMetaData and ResultSetMetaData holds
meta-information about data and results.
Introduction to HTML:
The HyperTextMarkUp Language(HTML) is a simple MarkUp
language used to create hypertext documents with the theme of openness and
portability.The HTML documents are just plain text. Web authors can create, edit or
view the HTML code for a webpage in any text editor or on any computer
platform. The web browser do not show the actual HTML code if web page is
opened in any browser.Instead the web browser interprets the HTML code and
displays the page appropriately on the screen.Each browser has its own way of
interpreting the look of page.

A webpage is made up of elements ,each of which is defined by


an HTML code or tag.A tag is always enclosed in angle brackets, and most tags
come in pairs with an opening and closing tag.Every webpage must include a few
tags that define the page as a whole.so that browser recognizes the page as such.
<TAG> tells the browser to do some thing.An attribute goes inside the <TAG>
and tells the brower how to do it.

The following is description of few HTML tags.


<HTML> “This is the start of HTML document.and </HTML> this is the end of
HTML document.<HEAD>…</HEAD> defines the header area of the
page.<TITLE>..</TITLE> The text between these tags is title of the webpage that
will be displayed in the broser.<BODY>…</BODY> delineates the actual content

10
of the webpage that will be displayed in web browser.The combination of
symbols to create a comments are <!-- ...->.A common way to add structure to a
webpage is through use of headings.A webpage can have a maximium of six
levels of heading named <H1><H2>…<H6>.The <HTML anchor tag <A>..</A>
defines a hyperlink with in a webpage which can be clicked to jump to new
source.Another powerful way to structure the data with in a webpage is
table.<TABLE> begins table definition.<TR> define a new row in the table.<TD>
defines a single cell with in the table.With the HTML feature called frames, we
can create and display multiple webpages with in a single page.The HTML form
an element that not only affects the display but also allows the reader to send
information back to server. <FORM>..
</FORM> tags helps to layout the controls of the form.<INPUT> tag is used to
place the controls like button, text box,Radio button on page.

<FONT> sets font charactestics of the font the browser uses to display text.<B>
indicates that text should appear in boldface.<BR> breaks line of continuous
text.<CENTER> positions text an equal distance between the left edges and right
edges of the document.<HR> used to draw horizontal rule in webpage in
document.<IMG> places an inline image in a document.<P> indicates a paragraph
in a document.<SELECT> specifies a selection list with in a form.<TEXTAREA>
defines multiple-line text input field with in a form.<U> underlines text in a
document.
HyperTextTransferProtocol:
HTTP is an application protocol, generally implemented over TCP?
IP connection. The HTTP is a stateless protocol based on requests and responses.
The client application sends request to the server or to receive information or to
initiate specifies processing on the server.
HTTP defines certain types of requests that clients can send to
server.HTTP1.1 has eight request methods: GET, POST, HEAD, OPTIONS, PUT,
TRACE, DELETE and CONNECT. Out of these GET and POST requests meet the
most of common application development needs.

11
GET request method is the simplest and most frequently used
request method for accessing static resources and it can also used to retrieve
dynamic information.
POST request method is commonly used for accessing dynamic resources. This
can send large amount of complex information to the server.With
GET requests, the request parameters are transmitted as a query string appended to
the request URL. In this case POST request parameters are transmitted with in the
body of the request.
In response to a HTTP request, the server sends with the status of
response, and some meta information descrypting the response. In HTTP servers
and clients use MIME to indicate the type of content in requests and responses. In
this first part indicates type of data and second part indicates standard extension.
(Ex:- text/html).
JAVA SERVER PAGES:
Java Servlets and Java Server Pages are the building
blocks for developing web applications. These are called web components.Web
application is a collection of Java servlets and JavaServerPages, other class
libraries, and HTML document. The WebContainer is responsible for initializing,
invoking and managing the life cycle of JavaServlets and Jsp’s.The deployment
descriptor is an XML file that lets author to customize web application at
deployment time.Both Java servlets and JavaServerPages can be used for building
and managing web application.The JSP specification builds on functionality provide
by servlet specification.But there are certain differences existing.
 Servlets execute on the server side and intercepts browser requests. Servlets
tend to mix the dynamic content in to the static part to generate
HTML.Hence servlets are lumped applications and are not easy to maintain.
 JavaServerPages separate the static code and dynamic content , separating
the presentation logic in a web application.Java Server Pages uses beans with
scope to separate presentation and logic.
 Servlets are pure Java programs. Where as Java Server Pages are text-based
documents.

12
Apache Tomcat 4.1 implements the jsp2.1 specifications from java software and
includes many additional features that make it a useful platform for developing
and deploying webapplications and webservers.In order to install this tomcat
requires Java Development Kit ver1.2 or later.Tomcat includes webserver along with
webcontainer.This is available at http://jakarta.apache.org.
When first time a JSP is loaded by the JSP Container, the servlet code is
automatically generated, compiled and loaded in to the servlet container.from then
as long as the JSP asource for the page is not modified, this compiled servlet
processes any browser requests for that page.If the source code of JSP is
modified then it is automatically recompiled and reloaded the next time that page
is requested. The three major life event methods work together in a JSP are as
follows.
Jspinit() Initialize the JSP only once for first request.
_jspservice(request,response) Handle requests Invoked for every request including
first.
Jspdestroy() Invoked by container to clean up JSP.
JSP tags fall into three categories:
1.Directives:These affects the overall structure of the servlet that results from
translation.JSP directives serve as message sent to JSP Container from JSP
page.Directives have scope for the entire JSP file.Directives start with <%@ and
end with %>. There are three main directives that can be used in JSP.
Page directive is used to define and manipulate a no.of important page dependent
attributes that affect the whole JSP and communicates these attributes to the JSP
Container.
The general syntax of the page directives is :
<%@ page ATTRIBUTES %>
These attributes can be language, extends, import, session, buffer, autoflush,
isthreadsafe, info, errorpage, isErrorPage, ContentType.
Include directive instructs the Container to include the content of the Resource in
the current JSP, by inserting it inline in the JSP in place of directive.In this the

13
content of the included file is parsed by the JSP and this happens only at
translation time.
The general syntax of the include directives is :
<%@ include file=”filename” %>
TagLib directives allows the page to use Custom tags.
2.Scripting Elements: JSP scripting elements allow JavaCode variables or method
declaration, scriplets and expressions to be inserted in to JSP page.
Declarations is a block of code in a JSP used to define class wide variables and
methods in a generated servlet and these can be enclosed between <%! And %>
The syntax is as follows:
<%! Java variables and method declaration(s ). %>
Scriplet is a block of Java code that is executed during request processing time,
and is enclosed between <% and %> tags.
The syntax is as follows:
<% valid Java code statements %>
Expression is a short hand notation for a scriplet that sends the value of a Java
expression back to client.This can be enclosed between <%= and %> tags.
The syntax is as follows:
<%= Java expression to be evaluated %>
3.Standard Actions: Standard Actions are tags that affect the run time behaviour
of the JSP and the reponse sent back to the client. During compilation in to a
servlet, the Container come across this tag and replaces it with Java Code that
corresponds to the required predefined task.The standard action types are described
below.
<jsp:useBean> This action is used to instanitiate a JavaBean , or to locate an
existing bean instance, and assign it variable name.
Syntax of this action is
<jsp:useBean id=”name” scope=”scope name” beandetails />
<jsp:setProperty> to set the value of bean properties.
<jsp:getProperty> is used to access the properties of a bean.

14
In this scope defines how long and from which jsps the object will be available.
Scope can be page any object with a page scope is will page disappear as soon
as the current page finishes generating.By default all beans have page scope.Any
objects crated in the request scope will be available as long as the request object
is.A bean can have session scope. session is a period and is defined as all the
visits a user makes to a site between starting and exiting the browser.A bean can
have Application scope means it is available to whole application.
<jsp:include> This action allows the static or dynamic source specified by a URL,
to be included in the current JSP at request processing time.The Syntax is as
follows.
<jsp:include page=”URL” flush=”true” />
<jsp:forward> This action allows the request to be forwarded to another JSP, to
servlet or to a static resources. The syntax is as follows.
<jsp:forward page=”URL” />
Implicit Objects: JSP provides certain implicit objects, based on servlet API. These
objects are accessed using standard variables automatically available for use in
your JSP. The Implicit objects available in JSP page are request, response,
pagecontext, session, application, out, config and page.

JAVA MAIL:
The Internet’s most widely used service is electronic mail. This is a method of sending
message electronically based on mailbox address.The details necessary for
packaging, sending and receiving messages are complex and involve a different
protocols.

The JavaMail specification, provides a collection of abstract classes that define the
common objects and their interfaces for any general mail system. By defining
interfaces sun has given Java programmers an easy and extensible object oriented
view of many existing protocols currently in use. Java mail providers implement the
API that provide functionality need to communicate using specific protocols.
JavaMail implementation includes providers for some of the most essential
protocols and specifications. These include the Simple Mail Tranfer Protocol,Post

15
Office protocol 3 and Multipurpose Internet Mail Extension.A Transport is the sun’s
term for a service that has the capability to send messages to their destination. A
Store is a service used to retrieve messages that have been delivered to Mail Box.
javax.mail.session acts as a factory for the installed transport and store
implementation. Java Mail Session is a way to associate the providers with a
particular set of user properties and an authentication mechanism.The methods
getInstance() or getDefaultInstance() are used to get session instance. The abstract
class javax.mail.Message and its implemented interface javax.mail.part define the
general properties and content for mail message. Subclasses of Message Implement
the concrete functionality needed for specific messaging systems. Sun’s JavaMail
Implementation includes the javax.mail.internet. Mimemessage class that implements
both the standard for Internet messages and Multi Purpose Internet Mail
Extensions.The constructor MimeMessage(Session) used to construct a new and
empty MimeMessage in the specified session.Every message consists two parts
header and content .The header section includes the From address of senders at
which message originate. Message class provides setFrom() method by which from
header can be set. The recipients of a message generally come in three flavours.
Normal recipients are denoted by To header, CarbonCopy recipients are publicly
acknowledged as being sent a copy of message. Blind Carbon Copy recipients that
are not included in the list of primary and secondary recipients .The method
setRecipient( MessageRecipient Type, Address ) to set the above specified headers.
Most of the messages includes subject and date also. SetSubject(String) and
setDate(Date) can be used to set subject and date for the message. The second part
of the message is its content . Java Mail API uses Java Beans Activation
Framework .Its main purpose is to be able to identify arbitrary types of data, and
for obtaining actual instances of appropriate classes for those type. The method
setText(String text) sets the content for this part to the specified string with a
content type of “text/plain”. Sending a message is achieved using a Transport.The
method Transport.send(Message) sends the message using appropriate protocol for
each of the message’s recipient’s address type.

16
ORACLE:
Oracle is the name of the database management system developed by Oracle Corporation.
Oracle is a RDBMS as it stores and manages data using relational model. Oracle server
manages data in the database. Users access server using SQL commands so oracle server
receives SQL commands from the users and execute them on the database. Users of
oracle database user logical view of the data. Users are not aware of how the data is
actually stored on the disk by the oracle server. Users view the total data as a collection
of table where each table contains rows and columns. That means physical structure of
the database is hidden from the users. A user can access data without knowing anything
about the physical structure of the data.
FEATURES OF ORACLE:
The following are some if the important features of oracle server. Largest
databasesupport.oracle supports largest database, potentially hundreds of gigabytes.
Data concurrency.
Oracle supports concurrent access to database by multiple users It automatically locks
and unlocks rows to maintain integrity of data.
Partitioning.
It has improved performance via partitioning. A table can be divided into a number of
pieces called as partition based on the value of one or more columns.
It has new and improved data types portability.
Oracle software can be ported to different operating systems and it is the same on
systems. Application developed in the oracle can be ported to any operating system with
little or no modification.
Enforced integrity
Oracle allows users to define business rules and enforce them. These Rules need not be
included at the application level.
Data security.
Oracle provides security in different levels-system level and object level. It also makes
implementation of security easier through roles.

Support for client/server environment.

17
Oracle allows process to split between client and server. All Oracle servers do database
management where as client does user interaction. Oracle server allows code to be stored
in the database in the form of procedures and functions. This allows centralization of the
code and reduces network traffic.
Improved parallelism.
It has tremendous improvement in the area of parallelisation. Parallel recovery has been
improved by allowing rollback of parallel DML operations that have failed to be
performed in parallel. This parallel transaction recovery is supported on transaction and
process failures but not during instance recovery.
New index types.
With traditional indexes and tables, data and indexes are stored separately. With an index
only table, the data to which the index refers is stored in the leaf block or lowest level
block of index, so the data and indexes are stored together. Depending on our application,
this can be an advantage.
Application that access data primarily via a key value can see an advantage from the use
of index-only tables. Because the data is stored within index, the data is immediately
available when the index has reached its lowest level. This can speed data retrieval.
Enhanced recovery features.
Oracle has made tremendous improvements in the area of backup and recovery. Most of
these features revolve around the recovery manager. Another recovery feature is the
image copy backup, which can improve recovery time in the event of failure.
CONCEPTS OF RDBMS
DBMS is an organized collection of interrelated files and a set of programs
that allow users to access and modify these files. A major purpose of DBMS is
to provide users with an abstract view of the data where the system hides certain
details of how the data are stored and maintained.DBMS is an integrated software
system that has facilitates for defining logical and physical structure of data in a
database for accessing,entering and deleting the data.

Architecture Of DBMS:

18
Schema
A schema is an overall design of the database.At the lowest level is the
physical schema, at the intermediate level is the logical schema and at the highest
level is the external schema.
The DBMS Architecture can be divided into 3 levels as described below.
Internal/Physical Level
This is at the lowest level of the Database abstraction and closest to
physical storage method used, is defined by means of internal Schema.
Conceptual/Logical level
This is at the intermediate level of the Database and describes what data
are stored in the database and what relationships exists among those data, is
defined by means of conceptual schema.External/View level
This is at the highest level of database abstraction where only portions of
the database of concern to a user or application program are included, is defined
by means of external schema.
Relational Model
In the Relational model all the data is assumed to be organized in the
form of two dimensional tables and each table has multiple columns and each
column can be identified by unique name.

RDBMS (Relational DataBase Management System):


RDBMS is a DBMS bases on relational model. It is a set of programs that
manipulate data by storing data in the form of tables. It can be defined as a
DBMS where all data visible to the user organized strictly as tables of data and
where all the database operations work on these tables .For any RDBMS to be
accepted as a full-fledged RDBMS, it has to follow the relational theory in
mathematics and the 12 CODD’S Rules.

Advantages Of RDBMS:
The main advantages of RDBMS are:
• Redundancy can be reduced.

19
• Inconsistency can be reduced.
• Data can be shared.
• Standards can be enforced.
• Security restrictions can be applied.
• Integrity can be maintained.

20
6. ANALYSIS
6.1 REQUIREMENT ANALYSIS DOCUMENT
A requirement is a feature or constraint that the system must
satisfy to be accepted by the client. Defining the requirements which includes two
main activities ; requirement elicitation and analysis.
Requirement Elictation:This results in the specification of the system that client
understands.This is to improve communication among developers,clients and users for
defining a new system.If any errors involved during this process it is expensive to
correct them.This focuses on describing the purpose of the system.The client,the
developers,and the users identify a problem area and defines a system that
addresses the problem.This definition is called a system specification which serves
as a contract between client and developers.

Analysis:This results in an analysis model that the developers can easily


understand. The System specification is structured and formalized during analysis to
produce analysis model which serves as communication among developers.
The results of requirement elicitation activity and the analysis activity
are documented in the Requirement Analysis Document (RAD). The first part of
the document, including use cases and nonfunctional requirements,which written
during requirements elicitation. The formalization of specification in terms of object
model is written during analysis.
6.1.1 Introduction
6.1.1.1 Purpose of the system:
The system “On line Order Management” purpose is to receive orders from
customers and dealers through online and to maintain those details.This system
devised to reduce the time delay that occurs in the process of receiving orders
through tele services and postalservices.This system also provides order information of
customers to both dealers and Administrator to do their business efficiently.
6.1.1.2 Scope of the system:
This system stores all information regarding direct customers, customers through
dealers and dealers. It provides information regarding orders registered and

21
generates relative reports to both Administrator and to authorized dealers. The
scope of the system is only Online Ordering, maintaining Information regarding
authorized dealers and maintaining products catalog.
6.1.1.3 Objectives and Success Criteria:
The main objective of “On line Order Management” system is to replace the
manual process of receiving orders through tele services or postal services with
computerization , which helps the organization to get more orders and good
response in short time with accelerated results and error free data .
6.1.1.4 Definitions,Acronyms and Abbreviations:
HTTP: Hyper Text Transfer Protocol.
MIME: Multipurpose Internet Mail Extension.
SMTP: Simple Mail Transfer Protocol.
JDBC: Java Data Base Connectivity.
ODBC: Open Data Base Connectivity.
6.1.1.5 References: Problem specification,feasibility study prepared during analysis
as per client requirements.

6.1.2 CurrentSystem:
In current system the organization of HMR Electronics receiving orders from
customers and dealers through tele services and postal services and maintaining the
related details manually.The current system is paper based.Due to lack of
communication company loosing its orders and they are unable to dispatch
registered orders as per customers and dealers requirements.Also due to
unavailability of sufficient information about organization Customers sending their
orders directly to organization even though authorized dealer existing in their
area.And also due to lack of communication organization is not able to provide
updated catalog information to dealers and customers.

Limitations of the Existing system:


 Enormous amount of time consuming for receiving orders.
 Errors can occur during registration of orders through teleservices.

22
 Maintaining details of various customers and dealers Manually is complex.
 Difficult to generate required reports.

So in order to overcome all these limitations and to meet all their requirements
organization planned to replace this manual process of receiving and maintaining
order information with computerization.

6.1.3.ProposedSystem:
6.1.3.1 Overview: A system has been devised for the company for receiving orders
online as detailed here under.This proposed System can be described in five
modules.
• Registering CustomerOrder.
• Applying For Dealership.
• Existing Dealer Module.
• Products Catalog.
• Management Module.

Registering CustomerOrder:
The aim of this module is to provide the customer with order form and in turn
receives order from customer as well as his information. customer can place order
by viewing catalog provided by the Adminitrator.After receiving order
Administrator verifies whether there exists dealer in the area specified by customer
or not.If authorized dealer exists then corresponding customer order can be
redirected to that dealer.Otherwise the customer will be treated as direct
customer,Customer can also specify his requirement,basing on which, dispatching
will be done.Customer should also specify his mode of payment for each order.

Applying For DealerShip:


The Dealership application is presented in the module to enable the applicants to
apply for dealership. These applications are valid for only 6 months from the date

23
of applying. Administrator whenever needs to appoint new dealer for particular
area verifies applications received from that area and not expired.Basing on the
Marketing Experience of the applicants Administrator will appoint the new
dealer.After appointing the dealer,Administrator send DealerId and password to the
newly appointed dealer.At any time the administrator will have the right either to
appoint or remove a dealer.
Existing Dealer Module:
This module deals with providing information to existing dealer.Any authorized
dealer can login using his dealerid and password.If he is an authorized dealer he
can view the information in respect of the customer and his order and also the
payment details.Basing on the availability of stock and requirement of customers
he can place order to Administrator. Dealer can also view products catalog which
is different from catalog provided to customers.By viewing this catalog he can
estimate the profit.Dealer has also been provided with facility of modifying his
Information currently existing in Administrator records.
Products Catalog:
Administrator maintains catalog information for providing to Dealers and
Customers differently.Administrator can change the products information,add new
product,and remove any product’s information from the catalog.

Management Module:
This module facilitates the Administrator with complete information of direct
customers’ order,payment and etc at any particular time.He can also view the dealers
information as well as their order and payment particulars.Administrator can also
view the orders for dispatch between specific dates.He can also view the comment
and suggestions sent by customers and dealers.Administrator also need to maintain
transport charges Information and Products Information.Administrator is also
provided with data on authrozied and unregistered dealers list which helps him to
appoint new authorized dealer.In this way by maintaining all the information
regarding customers and dealers the organization can get expected orders and good
response.

24
6.1.3.2 Functional requirements: Functional requirements describes the interaction
between the system and its environment independent of its implementation.
Customer Order Registration: In this process of registration,system interacts with
customer and receives input and commands and performs its function.The system
should accept the following input from customer
 Customer Details:The system takes the following details as input from
customer.
First name Address
Last name Country
Phone Number State
Fax Number District
Email Id Zip Code
 Order Details:The System takes the following details as input while customer
specifying his order.
Product Id
Price
Quantity
 Payment Details:The system takes the following details as input while customer
specifying his payment details.
Mode of payment
Comments
If customer mode of payment is ‘DD’ then the system must take following details
as input.
DD number
Bank Name
With the help of proposed system customer can place any no.of orders basing on
his requirements.After placing order system responds with order information.
Apply For Dealership: The system should accept the following as input from
applicant of New Dealership.
 Applicant Details:The system takes the following details as input from
applicant.

25
FirstName Address
LastName Country
FirmName State
Phone Number District
Fax Number ZipCode
EmailId
 Experience Details:The system takes the following information regarding
marketing experience of applicant as input.
Products Dealing
AnnualTurnOver
Marketing Experience
After registering application system responds with expiry date of application.
Authorized Dealer: The should accept the following input from authorized dealer
for his successful login.
DealerCode
Password
After successful login system provides the following options which requires input
from dealer.
 Order Details:The system takes the following details as input while dealer
placing order.
ProductId
Price
Quantity
Mode of payment
Comments
If dealer mode of payment is ‘DD’ then system must accept the following details
as input.
DDnumber
BankName
 Modify Details:The system allows the following details for modification.
Name of Dealer Addresss

26
Phone Number ProductsDealing
Fax Number AnnualTurnover
EmailId
Administrator Module: The system should accept the following as input from
Administrator of organization for successful login.
Administrator Id
Password
After successful login system provides the following options which requires
various types of data entry from Administrator.
 Appoint New Dealer:To appoint new dealer the system receives the following
as input from Administrator.
Country
State
District
 Remove Dealer: To remove any authorized dealer Administrator need to input
following information.
Coutry
State
District
 Update Catalog: If this option selected by Administrator system responds with
three options which requires various types of input.
Add New Product:To add a new product information to catalog system accepts the
following input from Administrator.
ProductId Description
Productname CustomerPrice
Capacity DealerPrice
Electrical input
Warranty
Remove Product : To remove a product from catalog Administrator must select the
following information.
ProductId

27
Modify Product Info: System allows the Administrator to modify the following
information about products existing in catalog.
Capacity CustomerPrice
Warranty DealerPrice
Description
Reports: The main advantage of computerization should be early access to
information.
The following is the list of reports expected from the proposed system.
 List of authorized dealers.
 List of Unregistered dealers(applications received for dealership).
 Direct customers order Info on specified date.
 Dealers order Info on specified date.
 Direct customers order info which are to be dispatched between specified
dates.
 Dealers order info which are to be dispatched between specified dates.
 Suggestions and comments received between specified dates.
 Products Catalog Information.

6.1.3.3 Nonfunctional requirements:


Nonfunctional requirements describe user-visible aspects of the system that are not
directly related to functionality of the system.

6.1.3.3.1 User Interface and Human factors:


The proposed system should provide a user- friendly interface to customers and
dealers as well as Administrator. ease of use is important.The userinterface must
be suitable for easy and fast data entry.With the help of the interface customers
even without adequate knowledge of systems would make order for the
stocks.Administrator needs little training about the system inorder to utilize the
facilities being provided by the system efficiently.

28
6.1.3.3.2 Documentation: The proposed system requires three levels of
documentation,user level documentation which helps the customers,dealers and
administrator how to interact with the system.This documentation includes how to
fill the forms provided and get reports that can be generated by the system.In the
proposed system help link provides the user level documentation.The RAD
prepared during analysis phase helps the developer inorder to develop the system
as per client’s requirements. The system design documentation prepared during
development process provides information regarding design goals and about
subsystems into the proposed system which also helps in testing process.In
addition to user level and development level documentation proposed system also
requires technical documentation for maintainers of the system.This technical
documentation includes the port number on which server is running and listening
clients requests and also includes any other configuration required for maintainers.

6.1.3.3.3 HardwareConsideration: Hardware Considerations includes the virtual


machine on which the system should be built. Virtual machine includes operating
system and any software components needed. Virtual machine minimum required for
webserver is WINDOWS xp system and web browser is IE3.And the system is
compatible with Linux, Unix based systems.

6.1.3.3.4 Performance Characteristics: The proposed system is server applications


and server applications are inherently multi-threaded.Every request creates new
thread hence the system supports any no.of concurrent users.Hence this system
offers good performance and easy solutions to problems.This is the static
requirement.The Dynamic requirement is system response.As the proposed system
developed using JavaServerPages which reduces response problems.

6.1.3.3.5 Error handling and Extreme conditions: The proposed system should
handle exceptions that originate at low level components and exceptions at high
level components. The high level components in proposed system should handle
exceptions that occur while connecting to databaseserver,IOExceptions etc.The end

29
user should not be bother about exceptions at lowlevel.When low level Exceptions
arises user should be shown with appropriate message.Errors that arises during
data entry should be handled by performing client side validations.In the proposed
system all client side validations will be done using JavaScript.

6.1.3.3.6 Quality Issues: Quality issues refers to how reliable,available and robust
should the system be?While developing the proposed system the developer must be
able to guarantee the reliability transactions so that they will be processed
completely and accurately.
The ability of system to detect failures and recovery from those failures refers to
the availability of system.
Robustness of system refers to the capability of system providing information
when concurrent users requesting for information.
As the proposed system’s capability of handling various exception it is reliable
and it will be developed using JSP which supports multithreading. hence it
satisfies the requests from concurrent users. So it is robust.

6.1.3.3.7 System modification: As the proposed is not implementing stock


maintenance so it can be extended and this updation can be done by any
developer familiar with specified hardware and software constraints followed for
development of proposed system.

6.1.3.3.8 Physical Environment: The proposed system can be deployed and


withstand in any physical environment.

6.1.3.3.9 Security Issues: Security and confidentiality are the top most concerns
of the client.The proposed system should provide the following.

 Administrator should be provided with id and password for secured access of


information regarding dealers and customers.

30
 Each authorized dealer should also be provided with code and password for
controlled access of information regarding customers in their area.
 Access to database should also be restricted.

6.1.3.4 Pseudo Requirements: No design and implementation constraints imposed


by the client before the development of “Online order management system”.

6.1.3.5
SOFTWARE REQUIREMENTS:
Operating System : Windows xp
Client Side : HTML,JavaScript.
ServerSide : JDK 1.5,JSP2.1,JAVA MAIL 1.1.3
Back-end : Oracle 10g
Server : Apache Tomcat 5.0

HARDWARE REQUIREMENTS:
PROCESSOR : Pentium 2 366mhz
Monitor : SVGA Color monitor
HardDisk : 10GB
RAM : 32MB
Mouse : Digital
Keyboard : 105 keys digital

31
6.2 SYSTEM MODELS:
6.2.1 USECASE MODEL: The functional model, represented in UML with use
case diagrams,describes the functionality of the system from the user’s point of
view. Use cases are used during requirements elicitation and analysis to represent
the functionality of the system.A use case describes a function provided by the
system that yields a visible result for an actor.An actor describes any entity that
interacts with the system.An actor can be human or an external system.In this
proposed system actors are customer,applicant for dealership,authorized dealer
and administrator.
The customer interacts with the system in different ways.
• Request to view products catalog information.
• Request to place order.
• Request to view placed order.
• Request to send comments and suggestions to organization.
The Applicant interacts with the system in different ways.
• Request to send application for dealership to administrator.
The Dealer interacts with the system in different ways.
Request to view catalog information.
• Request to place order.
• Request to view placed order.
• Request to view customer order status in his area.
The Administrator interacts with the system in different ways.
• Request to view customer order status and dispatch status info.
• Request to view dealer order status and dispatch status info.
• Request to view received comments and suggestions.
• Request to view registered and unregistered dealers list.
• Request to manage catalog information.
• Request to manage transport charges information
• Request to appoint new dealer.
• Request to remove existing dealer.

32
UseCase Descriptions:
Description of use case view catalog: This use case can be initiated by customer
by clicking view catalog link on homepage.Then system responds with catalog
information to customer by retrieving information from database.By viewing this
information customer can place order.
Description of use case Add item to Order: This use case can be initiated by
customer to add items to order.Customer can add any no.of items to order.When
each item added to order system responds with info about no.of items so far
added to order.
Description of usecase PlaceOrder: This usecase can be initiated by customer by
clicking customer order form link on home page.System responds with order
form .This form accepts both customer info and order info from customer.The
placed order will be verified whether authorized dealer existing in the area
specified by customer or not.If existing corresponding order will be redirected to
dealer otherwise it will be registered as direct customer order to administrator.
Description of usecase ViewOrder: This usecase can be initiated by customer
after placing order to view order .Then after initiating , system responds with order
info by calculating total amount to be paid including transport charge.
Description of usecase MailUs: This usecase can be initiated by customer or any
other person who visits the site by selecting MailUs link. MailUs form accepts
sender information and any comments or suggestions to Administrator.
Description of usecase Dealer Login: This usecase can be initiated by authorized
dealer.Dealer initiates this usecase by clicking dealerlogin link on homepage.Then
system responds with login form.Dealer fills the form with code and password .If
he is an authorized dealer then he can avail services provided by the
system.otherwise system responds with message as ‘Invalid login’.
Description of usecase viewcatalog: This usecase can be initiated by dealer after
his successful login.Then system responds with catalog information provided by
the organization which include all information regarding products including
prices.

33
Description of usecase Add item to order: This usecase can be initiated by
dealer after his successful login.Dealer can add any no.of items to his order.When
each item added to order system responds with information about items so far
added to order.
Description of usecase PlaceOrder: This usecase can be initiated by Authorized
Dealer by clicking Dealer order form link after his successful login.Then System
responds with order form .This form accepts order info from Dealer.The placed order
will be registered in to administrator records.
Description of usecase ViewOrder: This usecase can be initiated by Dealer after
placing order to view order .Then after initiating , system responds with order info
by calculating total amount to be paid including transport charge.
Description of usecase managing personal details: This usecase can be initiated
by dealer after his succeful login.Then system responds with info about dealer in
administrator records.System allows the dealer to modify some of his personal
details.
Description of usecase IndirectCustomer Order status:This usecase can be
initiated by dealer after his successful login.Then system responds with form
which accepts the date from dealer.Then system responds with information about
all customers who placed orders on specified date.
Description of usecase AdminLogin: This usecase can be initiated by the
Administrator of the organization.Administrator initiates this usecase by clicking
adminlogin link on homepage.Then system responds with form which accepts
administrator id and password.System verifies info submitted by administrator.If he
is an authorized person then he can avail services provided by the
system.otherwise system responds with error message ‘Invalid login’.
Description of usecase directCustomerOrderStatus: This usecase can be initiated
by Administrator of organization after his successful login.Then system responds
with form which accepts date from administrator.Then system responds with
information about direct customers orders on specified date.
Description of usecase DealerOrderStatus: This usecase can be initiated by the
administrator of organization after his successful login.Then system responds with

34
form which accepts date from administrator.Then system responds with information
about authorized dealers orders on specified date.
Description of usecase DirectCustomerOrderDisatch status:This usecase can be
initiated by the administrator of organization after his successful login.Then
System responds with form that accepts dispatch date.Then system responds with
information about direct customers orders which are to be dispatched between
specified dates.
Description of usecase DealerOrderDispatch status:This usecase can be initiated
by the administrator of organization after his successful login.Then System
responds with form that accepts dispatch date.Then system responds with
information about dealers orders which are to be dispatched between specified
dates.
Description of usecase Mailstatus: This usecase can be initiated by the
administrator of organization after his successful login.Then system responds with
form which accepts two dates.Then system responds with information about
comments and suggestions received between specified dates.
Description of usecase appoint New dealer: This usecase can be initiated by the
administrator of organization after his successful login.Then system responds with
form that accepts the area in which new dealer is to be appointed.After
specifying area system responds with all applications from that area.Administrator
need to select the code of applicant who will be appointed as a dealer.
Description of use case Remove dealership: This use case can be initiated by the
administrator of organization after his successful login. Then system responds with
form that accepts the area in which dealership is to be removed. after specifying
area system responds with message that ‘dealership successfully removed’.
Description of use case managing catalog information: This use case can be
initiated by the administrator of the organization after his successful login. Then
System responds with options such as add product, remove product and modify
product Information of catalog to Administrator.
Description of usecase managing transport charges Information: This usecase
can be initiated by administrator of the organization after his successful login.Then

35
system responds with options such as extend availability of product new area
,modify transport charges info.
Description of usecase Unregistered dealers list:This usecase can be initiated
by the administrator of organization after his successful login.Then system
responds with all applicants information.
Description of usecase registered dealers list:This usecase can be initiated by the
administrator of organization after his successful login.Then system responds with
all registered dealers information.
Description of usecase changeid&password: This usecase can initiated by the
administrator of the organization after his successful login.Then system responds
with current information of administrator login.Administrator can change desired
information.
Description of usecase Apply for dealership: This usecase can be initiated by
any person visits site and need to apply for dealership.Then system responds with
form which is to be filled by the applicant.Administrator receives all applications
which helps him to appoint new dealer.
6.2.2 DOMAIN ANALYSIS: The objective of the domain analysis is to define a
set of classes that are encountered throughout an application domain. In the
domain analysis the relation ship among different classes can also be
identified.The model prepared during domain analysis is object model.
Object model: The object model,represented in UML with class diagrams,
Describes the structure of system in terms of objects, attributes, associations.
A class is a category or group of things that have similar attributes and common
behaviors.The class diagrams helps analysts to talk to clients in the client’s
terminology and thus stimulate the clients to reveal important details about the
problems they want to be solved.The domain classes of “online order management
system” in various modules are as following.
In Customer module classes identified are as follows.
• Procls
• Cudetails
• View catalog

36
• Catalog.
In Dealer module classes identified are as follows.
• Dealer
• Applicant
• Dealer login
• Chekdcode
• Orddte
• Custinfo
• Orderinfo
• Paymentinfo
• Pupdate
• Drocls
• Drdetails
• Dcatalog
• Dvieworder
In Administrator module classes identified are as follows.
• Admin
• Dlcustinfo
• Dlorderinfo
• Dlpaymentinfo
• Delchges
• Ddispatch
• Dldispatch
• Delprds
• Appdlr
• Deldlr
• Mails

37
Some more classes may be identified during design.The operations and attributes
are not the final ones.Some of the operations have been defined by sketching
sequence diagrams over the usecases.
6.2.3 Dynamic Models: Dynamic model, represented in UML with sequence
diagrams, state chart diagrams and activity diagrams which describes the internal
behavior of the system.

Sequence Diagrams:
Sequence diagrams describes behavior as as a sequence of messages exchanges
among set of objects.The sequence diagrams consists of objects represented in the
usual way as named rectangles with underlined,messages represented as solid-line
arrows and time represented as a vertical progression.

State Chart Diagrams:


State chart diagrams describe behavior in terms of states of individual objects and
the possible transition between states.one way to characterize the change in a
system is to say that its objects change their state in response to events and
time.This also shows the starting and end point of a sequence of state
changes.State chat diagrams helps during system design to describe domain objects
with interesting behavior.It is not necessary to describe statechart diagrams for
each object it is enough to show the state transition for those objects that shows
complex behavior.

Activity Diagrams:
An activity diagram describes a system in terms of activities. Activities are states
that represent the execution of set of operations.These can be used to represent
control flow i.e the order in which operations occur and dataflow.This is useful
for showing what happens in a business process or an operation.

38
39
6.3VERIFICATION PROCEDURES OF ANALYSIS:
Once the analysis model becomes stable the analysis model is reviewed, jointly by
the developers and client. The goal of the review is to make sure that the system
specification is correct, complete, consistent and realistic.
The RAD prepared for this system is correct because it handling errors as per
client requirements, and all descriptions are in accordance with user’s definitions.
RAD prepared is complete because all usecases ,classes and their associations are
identified.
RAD prepared during analysis is complete and all the entities are described at the
same level of detail.And also RAD prepared is realistic, feasibility report is
prepared to ensure their Feasibility.
7.DESIGN
Design is the first step to moving from the problem domain towards the solution
domain.Design is essentially the bridge between requirement specification and the
final solutions for satisfying the requirements.It is the most critical factor affecting
the quality of the software.
The design process for the software system has two levels.
• SystemDesign or toplevel design.
• Detailed design or logical design.
7.1 SYSTEM DESIGN: The System design focuses on software architecture and the
definition of subsystem.The design phase expands & details the analysis model by
taking into account all technical implementations and restrictions.It specifies a
working solution that can easily translated into programming code.The classes
defined in the analysis are detailed.
7.1.1 PREPOSED SYSTEM ARCHITECTURE: This section documents the system
design model of the new system as described below.
7.1.1.1 Subsystem Decomposition:This describes the decomposition into subsystems
and the responsibilities each. The subsystems defined in “Online Order Management
System” are as follows.
Userinterface package : It enables the user to interact with the system and to
view the information provided by the system.The user interface in the proposed
system developed using HyperTextMarkUpLanguage .This package calls operations
on the business objects which defines the functions to retrieve data and to
manipulate data in the database.
Business Objects Package: This includes domain classes from analysis model such
as customer,procls,cudetails,drdetails,admin etc.These classes are detailed in the
design process so that their operations are completely defined.It interacts with the
database package to retrieve and update the information in the “Online Order
Management Database”.All beans defined in this proposed system comes in to this
package.
Database Package: This includes the Database API which is responsible for
establishing connection,creating statement and executing queiries.This package
includes classes DriverManager,Connection etc.This package is imported by the
business objects package inorder interact with database of “Online Order
Management System”.
7.1.1.2 Hardware/Software mapping: This includes the issues such as how
subsystems are assigned to hardware configurations and the software reuse.From
requirements the subsystems deduced are user interface and business logic runs on
two different nodes.User interface runs on onboard computer and business logic on
webserver. As a developer I select windows 98 machine as the virtual machine for
the webserver and webbrowser InternetExplorer as the virtual machine for
OnBoardcomputer. In this proposed system defined in business objects subsystem
can be reused.
7.1.1.3 Persistent data management: In this proposed system the data regarding
customers, dealers and products represents persistent data to be stored by the
system. The proposed system should support concurrent access of data , and data
can be accessed from multiple platforms and also there is a need of multiple
applications work on same data. Hence to meet these requirements this system
maintains data as relational database.
7.1.1.4 Access Control and Security: This section describes who can access which
type of data of system and how their access is controlled and how security of
data is provided. In this proposed system customers can only place order and can
not access any data related to system. Where as dealers can access data regarding
customers in their scope . Dealer’s access to data is secured and controlled by
providing code and password to each dealers. Administrator can access any type of
data related to system.
7.1.4.5 Control Flow: This section describes can more than one user access the
system at same time and the choice of control flow. As the proposed system is
online more than one user can access the system at same time for instance
customers can place order at the same time dealers or administrator can view the
order status. So the system should handle multiple requests at same time. The
control flow is threads because this system is a web application it creates arbitrary
no.of threads for each request.
7.1.4.6 Boundary Conditions: Boundary conditions describes the start up, shut
down and error behavior of the system. In this system starting up and shutting down
the server need to be done by administrator .These are the actions recognized
during the design phase of the system. Also In this system alert messages are
defined to handle the errors during user input and the functionality of the system
handling various types of exceptions .
7.2.3 DATABASE DESIGN:
The data pertaining to proposed system is voluminous hence a careful design of
the database must proceed before storing the data in the database.
A database management system provides flexibility in the storage and retrieval of
data.The DBMS is a bridge between the application program,which determines
what data data are needed and how they are processed, and the operating system
of the computer,which is responsible for placing data on the magnetic storage
devices.A schema defines the database and a subschema defines the portion of the
database that a specific program will use.
Normalization: Normalization results in the formation of tables that satisfy certain
specified constraints and represent certain normal forms.The normal forms are used
to ensure that various types of anomalies and inconsistencies are not introduced in
the database.Normal forms are table structures with minimum redundancy.
The most important and widely used normal forms are
• First Normal Form (1NF)
• Second Normal Form (2NF)
• Third Normal Form (3NF)
• Boyce-Codd Normal Form (BCNF)
We have to apply each of these normal forms on “Online Order Management
System” database.
First Normal Form (1NF): First Normal form states that the domain of an attribute
must include only atomic values and that the value of any attribute in a tuple
must be a single value from the domain of that attribute.
All the relations in this proposed system satisfy the First Normal Form.
Second Normal Form(2NF): Second Normal Form is based on the concept of
functional dependency. A relation is said to be in 2NF when it is 1NF and every
non-primary key attribute should depend on entire primary key but not on part of
primary key.All the relational schemas obtained after applying 1NF are satisfying
2NF.
Third Normal Form(3NF): Third Normal Form is based on the concept of
transitive dependency.A relation is said to be in 3Nf when it is in 2NF and every
non key attribute is non transitively dependent on the primary key.
The relational schemas obtained after applying 2NF are satisfying 3NF.
Boyce-Codd Normal Form(BCNF): A relation is said to be in BCNF if none of
the attribute of a composite key are dependent on an attribute of other composite
key.
All relations obtained after applying 3NF are satisfying BCNF.
DATA DICTIONARY:
A Data Dictionary is a collection of metadata,that is,data about data.In addition to
storing catalog information about schemas and constraints,the data dictionary stores
other information, such as design decisions, usage standards, application program
descriptions, and user information.
TABLE STRUCTURES:
Table Name: DCUSTOMERS
Description: This table contains all the details about direct customers.
Constraints: DCID PRIMARY KEY
Field Description Data Type NOT NULL/NULL
Name
Dcid Customercode Varchar2(15) Not Null
Fname First Name Varchar2(15)
Lname Last Name Varchar2(15)
Phone PhoneNumber Varchar2(15)
Fax Fax Number Varchar2(15)
Email Email Id Varchar2(25)
Address Address Varchar2(65)
State State Varchar2(15)
Country Country Varchar2(15)
District District Varchar2(15)
Zip Zip code Varchar2(10)

Table Name: ADMIN


Description: This table contains details about Administrator.
Constraints: USERID PRIMARY KEY
Field Description Data Type NOT NULL/NULL
Name
UserId Administrtor ID Varchar2(15) Not Null
PassWord Password Varchar2(15)
Table Name: RDEALERS.
Description: This table contains all the details about Registered Dealers.
Constraints: RDCODE PRIMARY KEY
Field Name Description Data Type NOT NULL/NULL
Rdcode DealerId Varchar2(15) Not Null
Pwd Password Varchar2(15)
Fname First name Varchar2(15)
Lname Last name Varchar2(15)
Frmname Firm name Varchar2(25)
Phone Phone number Varchar2(15)
Fax Fax number Varchar2(15)
Email Email id Varchar2(25)
Country Country Varchar2(15)
State State Varchar2(15)
District District Varchar2(15)
Zip Zip code Varchar2(10)
Dtoreg Date of regstn Date
Adr Address Varchar2(65)
Table Name: REXPER
Description: This table contains registered dealers Experience Info.
Constraints: RDCODE PRIMARY KEY
RDCODE FOREIGN KEY RDEALERS(RDCODE)
Field Name Description Data Type NOT NULL/NULL
Rdcode Dealer code Varchar2(15) Not Null
Prodeal Products dealing Varchar2(25)
Anntrv Annual turnover Number(12,3)
Me Mktg exprnce Number(5,3)
Table Name: ICUSTOMERS
Description: This table contains all the details about Indirect customers.
Constraints: ICID+RDCODE PRIMARY KEY
RDCODE FOREIGN KEY RDEALERS (RDCODE)
Field Name Description Data Type NOT NULL/NULL
Icid Customer Id Varchar2(15) Not Null
Rdcode Dealer code Varchar2(15) Not Null
Fname First name Varchar2(15)
Lname Last name Varchar2(15)
Phone Phone number Varchar2(15)
Fax Fax number Varchar2(15)
Email Email Id Varchar2(25)
Address Address Varchar2(65)
State State Varchar2(15)
Country Country Varchar2(15)
District District Varchar2(15)
Zip Zip code Varchar2(10)

Table Name: MAILUS


Description: This table contains all comments and suggestions recieved.
Constraints: MAILNO PRIMARY KEY

Field Name Description Data Type NOT NULL/NULL


Mailno Mail Number Number(5) Not Null
Maild MailId of sender Varchar2(35)
Dom Date of mail Date
Cmt Content Varchar2(300)
Uname Name of sender Varchar2(15)

Table Name: DEALERS


Description: This table contains all the details of unregistered dealers.
Constraints: DCODE PRIMARY KEY
Field Name Description Data Type NOT NULL/NULL
Dcode Dealer code Varchar2(15) Not Null
Fname First name Varchar2(15)
Lname Last name Varchar2(15)
Firm Firm name Varchar2(25)
Phone Phone number Varchar2(15)
Fax Fax number Varchar2(15)
Email Email id Varchar2(25)
Address Address Varchar2(65)
District District Varchar2(15)
State State Varchar2(15)
Country Country Varchar2(15)
Zip Zip code Varchar2(10)
Dtaply Date of Apply Date
Status Expiry status Varchar2(1)
Table Name: EXPER
Description: This table contains unregistered dealers Experience Info.
Constraints: DCODE PRIMARY KEY
Field Name Description Data Type NOT NULL/NULL
Dcode Dealer code Varchar2(15) Not Null
Prodeal Products dealing Varchar2(25)
Anntrv Annual turnover Number(12,3)
Me Mktg exprnce Number(5,3)
Table Name: CHRGES.
Description: This table contains all comments and suggestions recieved.
Constraints: COUNTRY PRIMARY KEY
Field Name Description Data Type NOT NULL/NULL
Country Country name Varchar2(15) Not Null
Trchge TransportCharge Number(12,3)
Table Name: PRODUCTS.
Description: This table contains all details about products available.
Constraints: PRODID PRIMARY KEY
Field Name Description Data Type NOT NULL/NULL
Prodid Product id Varchar2(10) Not Null
Proname Product name Varchar2(20)
Capacity Capacity Number(5)
Eleinput Electrical Input Varchar2(15)
Warrenty Warrenty Varchar2(10)
Cmt Description Varchar2(25)
Cschge Customer price Number(12,3)
Dschge Dealer price Number(12,3)
Table Name: DIORDER.
Description: This table contains direct customer order Information.
Constraints: DCID+DORDID+PRODID PRIMARY KEY
PRODID FOREIGN KEY PRODUCT(PRODID)
DCID FOREIGN KEY DCUSTOMERS(DCID)
Field Name Description Data Type NOT NULL/NULL
Dcid Customer id Varchar2(15) Not Null
Dordid Order number Varchar2(10) Not Null
Prodid Product id Varchar2(10) Not Null
Quantity Qty ordered Number(5)
Didamt amount Number(12,3)
Table Name: DPAYS.
Description: This table contains direct customer Payment Information.
Constraints: DCUSTID+DORID PRIMARY KEY
DCUSTID FOREIGN KEY DCUSTOMERS(DCID)
Field Name Description Data Type NOT NULL/NULL
Dcustid Customer id Varchar2(15) Not Null
Dorid Order number Varchar2(10) Not Null
Mdp Modeofpayment Varchar2(10)
Amount Order amount Number(12,3)
Need Time specd Varchar2(10)
Cmt Comments Varchar2(25)
Dor Date of order Date

Table Name: DDDINFO.


Description: This table contains directcustomers DD Information.
Constraints: DCUSTID+DORID PRIMARY KEY
DCUSTID FOREIGN KEY DCUSTOMERS(DCID)
Field Name Description Data Type NOT NULL/NULL
Dcustid Customer id Varchar2(15) Not Null
Dorid Order id Varchar2(10) NotNull
Ddno Ddnumber Varchar2(15)
Bankname Bank name Varchar2(25)

Table Name: IDRORDERS.


Description: This table contains indirect customer order Information.
Constraints: ICID+IORID+RDID+PRODID PRIMARY KEY
ICID,RDID FOREIGN KEY ICUSTOMERS(ICID,RDCODE)
PRODID FOREIGN KEY PRODUCTS(PRODID)
Field Name Description Data Type NOT NULL/NULL
Icid Customer id Varchar2(15) Not Null
Rdid Dealercode Varchar2(15) Not Null
Iorid Order number Varchar2(10) Not Null
Prodid Product id Varchar2(10) Not Null
Quantity Quantity Number(5)
Idamt Amount Number(12,3)
Table Name: IDPAYS.
Description: This table contains indirect customer Payment Information.
Constraints: ICID+IORDID+RDID PRIMARY KEY
ICID,RDID FOREIGN KEY ICUSTOMERS(ICID,RDCODE)
Field Name Description Data Type NOT NULL/NULL
Icid Customer id Varchar2(15) Not Null
Iordid Order number Varchar2(10) Not Null
Rdid Dealer code Varchar2915) Not Null
Mdt Modeofpayment Varchar2(10)
Amount Order amount Number(12,3)
Need Time specd Varchar2(10)
Cmt Comments Varchar2(25)
Dor Date of order Date
Table Name: DDINFO.
Description: This table contains indirect customers DD Information.
Constraints: ICID+IORID+RDID PRIMARY KEY
(ICID,RDID) FOREIGNKEY ICUSTOMERS(ICID,RDCODE)
Field Name Description Data Type NOT NULL/NULL
Dcustid Customer id Varchar2(15) Not Null
Dorid Order id Varchar2(10) Not Null
Rdid Dealer code Varchar2(15) Not Null
Ddno Ddnumber Varchar2(15)
Bankname Bank name Varchar2(25)
Table Name: DTRANS.
Description: This table contains direct customers dispatch Info.
Constraints: TRID PRIMARY KEY
(DORDID,DCID) FOREIGN KEY DPAYS(DORID,DCUSTID)
Field Name Description Data Type NOT NULL/NULL
Trid Transaction id Number(10) Not Null
Dordid Order no Varchar2(10)
Dcid Customer id Varchar2(15)
Dot Date of transtn Date
Table Name: IDTRANS.
Description: This table contains Indirect customers dispatch Info.
Constraints: TRID PRIMARY KEY
(IDORID,RDID,IDCID) FOREIGN KEY IDPAYS(IDORDID,
RDID,ICID)
Field Name Description Data Type NOT NULL/NULL
Trid Transaction id Number(10) Not Null
IDorid Ordernumber Varchar2(10)
Rdid Dealer code Varchar2(15)
IDcid Customer id Varchar2(15)
Dot Date of transtn Date
Table Name: DLORDER.
Description: This table contains Dealers order Information.
Constraints: RDID+DORDID+PRODID PRIMARY KEY
PRODID FOREIGN KEY PRODUCT(PRODID)
RDID FOREIGN KEY RDEALERS(RDOCDE)
Field Name Description Data Type NOT NULL/NULL
Rdid Dealer code Varchar2(15) Not Null
Dordid Order number Varchar2(10) Not Null
Prodid Product id Varchar2(10) Not Null
Quantity Qty ordered Number(5)
Idamt amount Number(12,3)
Table Name: DPAYS.
Description: This table contains dealer Payment Information.
Constraints: RDID+DORDID PRIMARY KEY
RDID FOREIGN KEY RDEALERS(RDCODE)
Field Name Description Data Type NOT NULL/NULL
Rdid Dealer code Varchar2(15) Not Null
Dordid Order number Varchar2(10) Not Null
Mdp Modeofpayment Varchar2(10)
Amount Order amount Number(12,3)
Need Time specd Varchar2(10)
Cmt Comments Varchar2(25)
Dor Date of order Date

Table Name: DEDDINFO.


Description: This table contains dealers DD Information.
Constraints: RDID+RORDID PRIMARY KEY
RDID FOREIGN KEY RDEALERS(RDCODE)
Field Name Description Data Type NOT NULL/NULL
Rdid Dealercode Varchar2(15) Not Null
Rordid Order Number Varchar2(10) NotNull
Ddno Ddnumber Varchar2(15)
Bankname Bank name Varchar2(25)
Table Name: DLTRANS.
Description: This table contains dealers dispatch Info.
Constraints: TRID PRIMARY KEY
(DORDID,RDID) FOREIGN KEY DPAYS(DORDID,RDID)
Field Name Description Data Type NOT NULL/NULL
Trid Transaction id Number(10) Not Null
Dordid Order no Varchar2(10)
Rdid Dealercode Varchar2(15)
Dot Date of transtn Date

7.1.3 Design Verifications:


In this we need to ensure that the system design model is correct, complete,
consistent ,realistic and readable. In this proposed system the analysis model can be
mapped to the system design model.Such as hardware configuration selected as per
hard ware considerations specified in non functional requirements.
The proposed system is complete because all usecases are examined and all the
three subsystems are defined.The proposed system is consistent because objects
exchanged among subsystems in a consistent manner.As the proposed system can
be implemented it is realistic.
This system design model is readable because all subsystems names are
understandable for instance userinterface package provides an interface to users
involved in the system. Similarly business logic consists the functional logic of
the system.
8.CODING:
8.1 SampleCode:For DealerLogin Form.
<html><body bgcolor="a3a352" text="black" vlink=blue alink=pink>
<form action="http://localhost:8080/project/ilogin.jsp" name="f1" method="get"
onsubmit="return check()">
<br><br><br>
<script language="JavaScript">
function check()
{ if(f1.dcode.value=="")
{ alert("Please enter dealer code");
f1.dcode.focus();
return false;
} if((f1.pwd.value)=="")
{ alert("Please enter Password");
f1.pwd.focus();
return false;
} return true; }
</script>
<A href="http://localhost:8080/project/helpme.html#DealerLogin">HelpMe</A>
<center> <hr width=350 color=black size=4>
<h2><b><i>DEALER LOGIN FORM </i></b></h2>
<hr width=350 color=black size=4>
</center><br><br><br><br><table><tr><td><b><i>
Please enter Your Dealer Code:&nbsp;&nbsp;</b></i></td>
<td><input type="text" name="dcode" size=15 style="background:ffffb0"></td></tr>
<tr><td><b><i>Please enter Your Password:&nbsp;&nbsp;</b></i></td>
<td>
<input type="password" name="pwd" size=15 style="background:ffffb0"></td></tr>
</table><br><table><tr><td width=4%></td>
<td><input type="submit" name="login" value="Login"></td></tr>
</table></form></body></html>
<html><body bgcolor="a3a352" text="black">
<form action="http://localhost:8080/project/ilogin.jsp" name="f1" method="get"
onsubmit="return check()"> <br><br><br>
<script language="JavaScript">
function check()
{ if(f1.dcode.value=="")
{ alert("Please enter dealer code");
f1.dcode.focus();
return false; }
return true; }
</script><center>
<hr color=black size=5 width=350><h2><i>DEALER LOGIN FORM</i></h2>
<hr color=black size=4 width=350></center><br><br><br><br>
<table><tr><td><b><i>
Please Enter Your Dealer Code:&nbsp;&nbsp;</b></i></td><td>
<input type="text" name="dcode" size=15 STYLE="background:ffffb0"></td></tr>
<tr><td><b><i>Please Enter Your PassWord:&nbsp;&nbsp;</b></i></td><td>
<input type="password" name="pwd" size=15 STYLE="background:ffffb0"></td></tr>
<table><tr><td width=4%></td>
<td><input type="submit" name="login" value="Login"></td></tr>
</table></form></body>
<jsp:useBean id="dlr" scope="session" class="mytags.checkdcode"/>
<jsp:setProperty name="dlr" property="*"/>
<%
int flag=dlr.check();
if(flag==1)
{%><jsp:forward page="dealerlogin.jsp"/>
<% } else { %>
<jsp:include page="nlogin.html" flush="true"/>
<% } %>

package mytags;
import java.io.*;
import java.sql.*;
public class checkdcode
{ String dcode,dist,coun,pwd; int flag;
public void setDcode(String dcode)
{ this.dcode=dcode; }
public void setPwd(String pwd)
{ this.pwd=pwd; }
public String getDcode()
{ return this.dcode; }
public String retdcode()
{ return this.dcode; }
public int check()
{ try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:hmr","project","saua");
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select rdcode,district,country from rdealers where
rdcode='"+dcode+"' and pwd='"+pwd+"'");
if(rs.next())
{flag=1;dist=rs.getString(2);coun=rs.getString(3);}
else flag=0; }
catch(Exception e)
{ System.out.println(e.getMessage()); }
if(flag==1) return 1;
else return 0; }
public String getDistrict()
{ return dist; }
public String retcoun()
{ return coun; } }
Code For CustomerOrder:
<HTML><HEAD>
<%@ page language="Java" import="java.sql.*"%>
<SCRIPT language=JavaScript>
function checkinput()
{if(f1.fname.value=="")
{ alert("please enter firstname!");
f1.fname.focus();
return false; }else {
if((f1.fname.value).length>15)
{ alert("please enter your first name in 15chars");
f1.fname.value="";
f1.fname.focus();
return false; }}
if(f1.lname.value=="")
{ alert("please enter lastname!");
f1.lname.focus();
return false; }else {
if((f1.lname.value).length>15)
{ alert("please enter your last name in 15chars");
f1.lname.value="";
f1.lname.focus();
return false; }}
if(f1.phn.value=="")
{ alert("Please Enter phone number!");
f1.phn.focus();
return false; }
if(f1.phn.value!="")
{if((f1.phn.value).length>15){
alert("please enter valid phone number");
f1.phn.value="";
f1.phn.focus();
return false;}
if((f1.phn.value).indexOf('-')==-1)
{ alert("please enter valid phone number\nformat STD/ISD-phoneno");
f1.phn.focus();
return false; }
if((f1.phn.value).substring(1,(f1.phn.value).indexOf('-'))<3)
{ alert("Please enter valid phone number\nSTD/ISD-phonenum");
f1.phn.focus();
return false; }
if(((f1.phn.value).substring((f1.phn.value).indexOf('-')+1,f1.phn.length))==-1)
{alert("Please Enter Valid Phone Number");
return false;}}
if((f1.fax.value!="")&&(f1.fax.value!="not existing"))
{if((f1.fax.value).length>15){
alert("please enter valid fax number");
f1.fax.value="";
f1.fax.focus();
return false;}
if((f1.fax.value).indexOf('-')==-1)
{ alert("please enter valid fax number\nformat STD/ISD-faxnum");
f1.fax.focus();
return false; }
if((f1.fax.value).substring(1,(f1.fax.value).indexOf('-'))<3)
{ alert("Please enter valid fax number\nSTD/ISD-faxnum");
f1.fax.focus();
return false; }}
if(f1.fax.value=="")
{f1.fax.value="not existing";}
if((f1.eml.value!="")&&(f1.eml.value!="not existing"))
{if((f1.eml.value).length>25){
alert("please enter mailid in 25chars");
f1.eml.value="";
f1.eml.focus();
return false;}
if((((f1.eml.value).indexOf("@"))==-1)||(((f1.eml.value).indexOf("."))==-1))
{ alert("Please Enter Valid Mail id!");
f1.eml.focus();
return false; }}
if(f1.eml.value=="")
{ f1.eml.value="not existing"; }
if(f1.adr.value=="")
{ alert("Please enter your address!");
f1.adr.focus();
return false; }
else
if((f1.adr.value).length>65)
{alert("please enter your address in 65chars");
f1.adr.value="";
f1.adr.focus();
return false;}
if(f1.dst.value=="")
{ alert("Please enter your district!");
f1.dst.focus();
return false;}
else
if((f1.dst.value).length>15)
{alert("please enter valid district name");
f1.dst.value="";
f1.dst.focus();
return false;}
if(f1.sta.value=="") {
alert("state is not specified\nwe consider you as local to Karnataka");
f1.sta.value="Karnataka";
f1.country.value="India";
f1.sta.focus();
return false;}
else
if((f1.sta.value).length>15)
{alert("please enter valid state name");
f1.sta.value="";
f1.sta.focus();
return false;}
if(f1.lentxt.value>25)
{ alert("please check:\nyou have only 25 chars limit for comments");
return false; }
if(f1.zip.value!="")
{if((f1.zip.value).length>15){
alert("please enter valid zip number");
f1.zip.value="";
f1.zip.focus;
return false;}
if(isNaN(f1.zip.value))
{alert("please enter valid zip code");
f1.zip.focus();
return false;} }
if((f1.pido.value!=""))
{if(f1.qtyo.value=="")f1.qtyo.value="0";f1.hideo.value="true";f1.hide.value="true";
}else f1.hideo.value="false";
if((f1.pidf.value!=""))
{if(f1.qtyf.value=="")f1.qtyf.value="0";
f1.hide.value="true";
f1.hidef.value="true";}else f1.hidef.value="false";
if((f1.pids.value!=""))
{if(f1.qtys.value=="")f1.qtys.value="0";
f1.hide.value="true";
f1.hides.value="true";}else f1.hides.value="false";
if((f1.pidt.value!=""))
{if(f1.qtyt.value=="")f1.qtyt.value="0";f1.hidet.value="true";f1.hide.value="true";
}else f1.hidet.value="false";
if(f1.mop.value=="dd")
{if(f1.ddn.value==""){alert("please enter DD number!");f1.ddn.focus();return false;}
else
if(f1.ddn.value!=""){
if((f1.ddn.value).length>15)
{alert("please enter valid DD Number");f1.ddn.value="";f1.ddn.focus();
return false;}}
if(f1.bnm.value==""){alert("please specify BankName");f1.bnm.focus();return false;}
else if(f1.bnm.value!=""){
if((f1.bnm.value).length>25)
{alert("please enter valid BankName in 25chars");f1.bnm.value="";f1.bnm.focus();return
false;}}}
if(f1.comments.value=="")
{f1.comments.value="No Comments";}
return true; }
function clearall()
{ f1.fname.focus(); }
document.onkeyup=countchars;
function countchars()
{f1.lentxt.value=f1.comments.value.length;}
</SCRIPT>
<FORM name=f1 onreset="return clearall" onsubmit="return checkinput()"
action="http://localhost:8080/project/npr.jsp">
<BODY text=black vLink=blue aLink=red bgColor="a3a352">
<A href="http://localhost:8080/project/helpme.html#CustomerOrder">HelpMe</A>
<A href="http://localhost:8080/project/home.html">Home</A>
<CENTER>
<HR width=400 color=black SIZE=5>
</HR><H1><I>CUSTOMER ORDER FORM</I></H1>
<HR width=400 color=black SIZE=5>
</HR></CENTER>
<P><FONT face=verdana>
<TABLE border=0> <TBODY> <TR>
<TD width="35%">
</TD><TD width="25%"><FONT color=red>*</FONT>FirstName:</TD>
<TD><INPUT name="fname"></TD></TR>
<TR> <TD></TD>
<TD><FONT color=red>*</FONT>LastName:</TD>
<TD><INPUT name="lname"></TD></TR>
<TR> <TD></TD>
<TD><FONT color=red>*</FONT>Phone:</TD>
<TD><INPUT name="phn"></TD></TR>
<TR> <TD></TD>
<TD>Fax:</TD>
<TD><INPUT name="fax"></TD></TR>
<TR> <TD></TD>
<TD>Email:</TD>
<TD><INPUT name="eml"></TD></TR>
<TR> <TD></TD>
<TD><FONT color=red>*</FONT>Address:</TD>
<TD><TEXTAREA name="adr" rows=5></TEXTAREA></TD></TR>
<TR> <TD></TD>
<TD>Country:</TD>
<TD><SELECT size=1 name="country">
<% try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:hmr","project","saua");
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select country from chrges");
while(rs.next())
{ String coun=rs.getString(1);
out.println("<option value="+coun+" selected>"+coun+"</option>");
} }
catch(Exception e)
{out.println(e.getMessage());}
%>
</SELECT></TD></TR> <TR>
<TD></TD> <TD><FONT color=red>*</FONT>State:</TD>
<TD><INPUT name="sta"></TD></TR> <TR> <TD></TD>
<TD><FONT color=red>*</FONT>District:</TD>
<TD><INPUT name="dst"></TD></TR> <TR> <TD></TD>
<TD>Zip:</TD> <TD><INPUT name="zip"></TD></TR></TBODY></TABLE>
<CENTER><BR>To place order fill the Info and click
<B>ADD TO CART</B>for each
item. <BR>For further Information regarding products view <A
href="http://localhost:8080/project/catalog.jsp"><B>CATALOG</B></A> <BR>
<TABLE border=1 bordercolor=brown bgcolor=ffffb0>
<TR bgcolor=b75b00>
<TD><B><U>ITEM CODE#:</B></U> </TD>
<TD><B><U>PRICE EACH:</U></B></TD>
<TD><B><U>QUANTITY :</B></U></TD>
<TD><B><U>ACTION :</B></U></TD></TR>
<TR>
<TD><INPUT size=12 name="pido"></TD>
<TD><INPUT size=12 name="preo"></TD>
<TD><INPUT size=10 name="qtyo"></TD>
<TD><input type="submit" name="submit" value="1.ADD TO CART"></TD></TR>
<tr> <TD><INPUT size=12 name="pidf"></TD>
<TD><INPUT size=12 name="pref"></TD>
<TD><INPUT size=10 name="qtyf"></TD>
<TD><input type="submit" name="submit" value="2.ADD TO CART"></TD></TR>
<TR> <TD><INPUT size=12 name="pids"></TD>
<TD><INPUT size=12 name="pres"></TD>
<TD><INPUT size=10 name="qtys"></TD>
<TD><input type="submit" name="submit" value="3.ADD TO CART"></TD></TR>
<TR> <TD><INPUT size=12 name="pidt"></TD>
<TD><INPUT size=12 name="pret"></TD>
<TD><INPUT size=10 name="qtyt"></TD>
<TD><input type="submit" name="submit" value="4.ADD TO CART"></TD></TR>
</TABLE></center>
<input type="hidden" val="false" name="hide">
<input type="hidden" val="false" name="hideo">
<input type="hidden" val="false" name="hidef">
<input type="hidden" val="false" name="hides">
<input type="hidden" val="false" name="hidet">
<TABLE border=0> <tr><td width="42%"></td><td>For more info</td>
<td><A href="http://localhost:8080/project/vieworder.jsp">
VIEW ORDER</A></td></tr>
<tr> <TD width="40%"></TD>
<TD>Mode Of Payment:</TD>
<TD><SELECT name="mop"> <OPTION value="dd" selected>DD<OPTION
value="vpp">VPP</OPTION></SELECT></TD></TR></TBODY></TABLE>
<TABLE border=0> <TBODY> <TR> <TD width="28%"></TD>
<TD>(In case modeofpayment is <B>DD</B> fill the details marked with
<B>'&spades;'</B>)</TD></TR></TBODY></TABLE>
<TABLE border=0>
<TBODY> <TR> <TD width="37%"></TD>
<TD><B>&#9824;</B>DD Number:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
<TD><INPUT name="ddn"></TD></TR> <TR> <TD width="33%"></TD>
<TD><B>&#9824;</B>Bank Name: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
<TD><INPUT name="bnm"></TD></TR> <TR> <TD width="33%"></TD>
<TD>Need: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
<TD><SELECT size=1 name="ned"><OPTION value=immediate
selected>Immediate<OPTION value=urgent>Urgent<OPTION
value=late>Late</OPTION></SELECT></TD></TR></TBODY></TABLE>
<TABLE border=0> <TBODY> <TR> <TD width="26%"></TD>
<TD><FONT color=red>'*'</FONT><B>fields are compulsory.</B></TD></TR>
<TR> <TD></TD> <TD>Enter any<B> comments</B> below:
<B>You've Typed<INPUT size=2 value=0 name=lentxt>characters so
far</B></TD></TR><TR><TD></TD>
<TD><TEXTAREAname="comments"rows=2cols=41
onchange=countchars()></TEXTAREA>
</TD></TR> <TR> <TD></TD><TD><INPUT type="submit" name="submit"
value="Submit Form"><B>to order.</B></TD></TR>
<TR> <TD></TD> <TD><INPUT type=reset value=Clear><B>
to startup.</B></TD></TR>
</TBODY></TABLE></FORM></FONT></BODY></HTML>
9.TESTING
9.1 Testing Techniques:

Testing is the process of analyzing a system or system component


to detect the diffenences between specified and observed behavior. Testing performs
a critical role for quality assurance and ensuring the reliability of the system. It is
impossible to completely test a nontrivial system. Because testing is not decidable
and it needs to be peformed under time and budget constraints.

Testing is a fault detection technique that tries to detects errors.A


successful test is a test that identifies errors. The characteristics of a good test
model is that it contains it contains test cases that identifies errors .

TestCases:-
A TestCase is a set of input data and expected results that excercises a
component with the purpose of causing failures and detects faults.
A TestCase has five attributes :
Name : Name of the TestCase .
Location: Full path name of the executable.
Input : Input date or commands.
Oracle : Expected test results.
Log : Output produced by the test.
Test Cases are classified into Blackbox tests and Whitebox tests. Blackbox tests
focus on the input/output behaviour of the components.Whitebox tests focuses on
the internal structure of the component.

Testdrivers and Teststubs are used to substitute for the missing parts of the
system. A test driver simulates the part of the system calling the component under
the test. A test stub simulates the components that are called by the tested
component.

Testing Activities :
The following are the basic levels of Testing.
• Inspecting Components.
• Unit testing.
• Integration testing.
• System testing.
Inspecting Components:
Inspections find faults in a component by reviewing its source code in a formal
meeting.This method consists of five steps .
Overview: In this phase the author states objective of the inspection.
Preparation: In this phase the reviewers become familiar with sourcecode
Inspection meeting: A reader paraphrases the source code of the component.
Rework: The author revises the component.
Follow-up: Moderator checks the qulity of the rework..

UnitTesting:
Unit testing focuses on the building blocks of the software system,that is, objects
and subsystems.
It has the following advantages:
UnitTesting allows user to focus on smaller units of the system.
Unit testing makes it easier to detect and correct faults.
Unit testing allows parallelism in the testing activities.
There are various types of Unit testing techniques and the following are the most
important ones:
Equivalence testing:
This is a blackbox testing technique that minimizes the number of test cases.In
this the possible inputs are partitioned into equivalence classes,and a test case is
selected for each class.Equivalence testing consists of two steps: identification of
equivalence classes and selection of the test inputs.
Boundary testing:
Boundary testing is a special case of equivalence testing which focuses on the
conditions at the boundary of the equivalence classes. A disadvantage of
equivalence and boundary testing is that these techniques that these do not explore
combination of test input data.

Path testing:
Path Testing is a whitebox testing technique that identifies faults in the
implementation of the component.The assumption behind path testing is that, by
excercising all possible paths through the code atleast once.
State-based testing:
State-based testing is a recent testing technique,which focuses on object-oriented
systems.State-based testing, however, focuses on comparing the resulting state of
the system with the expected state.

Integration Testing:
Integration testing detects faults that have not been detected during unit
testing,by focusing on small groups of components.Two or more components are
integrated and tested, and once tests do not reveal any new faults,additional
components are added to the group.
The following are the various approaches to implement an integration testing:
Bigbang testing:
The bigbang testing strategy assumes tahat all components are first tested
individually and then tested together as a single system.The advantage is that no
additional test stubs or drivers are needed and it is simple. The
disadvantage is expensiveness.
Bottom-up testing:
The bottom-up testing strategy first individually tests each component of the
bottom layer and then integrates them with components of the next layer up. The
advantage of bottom-up testing is that interface faults can be more easily found.The
disadvantage of bottom-up testing is that it tests the most important components
last.
Top-down testing:
The top-down testing strategy unit tests the components of the top layer first and
then integrates the components of the next layer down.The advantage of top-down
testing is that it starts with user interface components .The disadvantage is that the
development of test stubs is time consuming.
Sandwich testing:
The sandwich testing strategy combines the top-down and bottom-up
strategies,attempting to make use of the best of both strategies.During sandwich
testing,the subsystem decomposition into three layers,a target layer,a layer above
the target layer and below the target layer.
Problem with sand-which testing is it does not thoroughly test the individual
components of the target layer before integration.The modified sandwich testing
strategy tests the three layers individually before combinig them in incremental
tests with one another.

SystemTesting:
System testing ensures that the coplete system ensures that the complete
system complies with the functional and nonfunctional requirements of the
system.This is blackbox technique.
Functional testing:
This is called requirements testing,finds differences between the functional
requirements and the system.
Performance testing:
Performance testing find differences between the design goals selected during
system design and the system.
Piolet testing:
During the piolet test,also called the field test,the system is installed and used by
a selected set of users.An alpha test is piolet test with users exercising the system
in the development environment.In a beta test, the acceptance test is performed by
a limited number of end users in the target environment.
Acceptance testing:
There are three ways the client evaluates a system during acceptance testing.In a
benchmark test,the client prepares a set of test cases that represent typical
conditions under which the system should operate.
In competitor testing, the new system is tested against an existing system.
In shadow testing , a form of comparison testing, the new and the legacy systems
are run in parallel and their outputs are compared.
Installation testing:
After the system is accepted, it is installed in the target environment A good
system testing plan allows the reconfiguration of the system from the development
environment to target environment .The outcome of installation testing is that
installed system correctly addresses all requirements.
9.2 Test Cases:
TestCase 1:
Test case If month=february and day>=30
Input month=february and day>=30

Expected Result Message “Invalid date”


Obtained Result alert message “Invalid date”

TestCase 2:
Test case If month=april/ june/september/November and day>30
Input month=april/june/September and day>30

Expected Result Message “Invalid date”


Obtained Result alert message “Invalid date”

TestCase 3:
Test case If month=February and year%4=0 year%100=0 and year%400!=0
and day>28
Input month=February year=1900 and day>28

Expected Result Message “Invalid date”


Obtained Result alert message “Invalid date”

TestCase 4:
Test case If dealercode lessthan 15 figures
Input dealercode lessthan 15 figures

Expected Result Message “Invalid code”


Obtained Result alert message “Invalid code”

TestCase 5:
Test case If ‘@’ not found in mailid
Input Mailid without ‘@’ character

Expected Result Message “Invalid mailId”


Obtained Result alert message “Invalid mailId”

TestCase 6:
Test case If dealercode not existing in database rdealers
Input Incorrect dealercode

Expected Result Message “Invalid login”


Obtained Result Error page with message “Invalid login”

TestCase 7:
Test case If productid not existing in catalog
Input Incorrect productid

Expected Result “no items added to order”


Obtained Result Error page with message “no items added to order”

TestCase 8:
Test case If delaer not exiting in the area specified while removing
Input Incorrect Area

Expected Result Message “Dealer not existing in the specified area”


Obtained Result Error page with message “Dealer not existing in the specified
area”

TestCase 9:
Test case If admin id or password not existing in database admin
Input Incorrect Login information

Expected Result Message “Invalid login”


Obtained Result Error page with message “Invalid login”

TestCase 10:
Test case If mode of payment is ‘DD’ and ddnumber or bank name not
specified
Input Incomplete payment details

Expected Result Message “please specify DDnumber and BankName”


Obtained Result alert message “please specify DDnumber and BankName”

TestCase 11:
Test case If STD code lessthan 3 figures
Input Incorrect phone nuber

Expected Result Message “Invalid phone number”


Obtained Result alert message “Invalid phone number”
10. Implementation
Class Cudetails:
An object of this class is created when customer tries to place
order.This class has the functionality of registering the order , payment details and
storing the customer details in database.
Field Summary:
public String fname;
public String lname;
public String phn;
public String fax;
public String eml;
public String adr;
public String zip;
public String country;
public String dst;
public String state;
public String mop;
public String need;
public String cmts;
public String ddn;
public String bnm;
Method Summary:
public int submitorder();
This method establishes connection to database and verifies if authorized dealer
existing in the customer specified area or not.if existing this method returns one
otherwise it returns zero.
public void isubmitorder();
This method registers customer order as indirect customer orderinfo in database
basing on the result of submitorder().
public void insidpays();
This method stores the indirect customer order’s payment information into the
correspond table.
public void dsubmitorder();
This method registers customer order as direct customer order info in database
basing on the result of submitorder().
public void dsidpays();
This method stores the direct customer order’s payment information into the
correspond table.
public void setfname(String);
This method sets the value of property named fname.
public void setLname(String);
public void setPhn(String);
public void setFax(String);
public void setEml(String);
public void setAdr(String);
public void setZip(String);
public void setCountry(String);
public void setState(String);
public void setDst(String);
public void setMop(String);
public void setNeed(String);
public void setCmts(String);
public void setDdn(string);
public void setBnm(String);
public String retaddr();
This method returns the value of property addr.
Public String retfrm();
This method returns the value of property frm.
Class Procls: An object of this class is created whenever customer adds item to
order.This class has the functionality of calculating transportcharge to be paid by
the customer and provides information regarding order placed by the customer.
Field Summary:
public Vector pnm;
public Vector prc;
public Vector pid;
public Vector cap;
public Vector amt;
public Vector pid;
public Vector tqt;
Method Summary:
public void setCountry(String);
This method sets the value to the property named country.
public void processrequest(HttpServletRequest);
This method retrives the information regarding product that is added to order by
the customer.
public double transcharge();
This method calculates and returns the transport charge required for order placed
by the customer.
public String[] retpids();
This method returns distinct product id’s so far added to order by the customer.
public String[] retprices();
public String[] retcapcity();
public String[] retamounts();
public String[] retquantity();
public String[] retpronames();
public void reset();
This method removes the products information so far added to order.
Class Catalog:
This class has the functionality of listing products catalog information by
retrieving database.
Method Summary:
public void _jspx_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method lists the catalog information provided by the organization .
Class ViewOrder:
This class has the functionality of visualizing items info in order which is placed
by the customer.
Field Summary:
public String[] pnms;
public String[] prcs;
public Sting[] tcap;
public String[] tamt;
public String[] tqty;
Method Summary:
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method performs calculation of order placed by the customer.This provides
the customer to vieworder so far placed by the customer.
Class Dealer:
This class has the functionality of providing application form for dealership.
Method Summary:
Public void _jspservice(HttpServletRequest request,HttpServletResponse);
This method provides the format of application form to applicants who would like
to apply for dealership .This method also transfers the submit request to Applicant
class.
Class Applicant:
This class has the functionality of storing submitted details of applicants into
database.
Field Summary:
public String frmne;
public String frmne;
public String pdg;
public String me;
public int ato;
Method Summary:
public void setFname(String);
This method set the value to the property named Fname.
public void setLname(String);
public void setFrmne(String);
public void setPhn(String);
public void setFax(String);
public void setEml(String);
public void setAdr(String);
public void setDst(String);
public void setSta(String);
public void setCty(String);
public void setZip(String);
public void setAto(int);
public void setMe(String);
public void setPdg(String);
public void processrequest(HttpServletRequest request);
This method performs connection establishment and stores the received applicant
details in dealers table.
public String retdate()
This method returns expiry date of received application.
Class DealerLogin:
This class has the functionality of providing login form to Authorised dealer.
Method Summary:
public void _jsp_init();
public void _jspservice(HttpServletRe quest,HttpServletResponse);
This method has the functionality of providing interface to Delaer to perform
login.This method transorms the request for verification to CheckDcode class.
Class Checkdcode:
This class has the functionalitiy of verifying dealer’s code and password for
validation.
Field Summary:
public String dcode;
public String pwd;
Method Summary:
public void setDcode(String);
This method sets the value to the property named Dcode.
public void setPwd(String);
This method sets the value to the property named Pwd.
public String retdcode();
This method returns the value of the property named dcode.
public int check();
This method verifies the dcode and password values submitted by the dealer
against the database information.if dcode and password are incorrect values then
method returns zero otherwise it returns value one.
Class Orddte:
An object of this class is created when dealer specifies the date to view customer
order stauts.
Field Summary:
public String day;
public String month;
public String year;
Method Summary:
public void setDay(String);
This method sets the value to the property named Day.
public void setMonth(String);
public void setYear(String);
public String retDay();
This method returns the value of property named Day.
public String retMonth();
public String retYear();
Class Custinfo:
This class has the functionality of providing customers info who placed orders to
authorized dealers in their area.
Methods Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method has the functionality of providing customers information who placed
order on specified date to authorized dealer.
Class Orderinfo:
This class has the functionality of providing customers order info who placed orders
to authorized dealers in their area.
Methods Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method has the functionality of providing customers order information who
placed order on specified date to authorized dealer.
Class Paymentinfo:
This class has the functionality of providing customers order payment info who
placed orders to authorized dealers in their area.
Methods Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method has the functionality of providing customers order payment information
who placed order on specified date to authorized dealer.
Class Pupdate:
This class has the funtionalitiy of allowing dealer to change his information
existing in administrator records.
Methods Summary:
Public void _jsp_init();
Public void _jspservice();
This method updates the information about dealer in database according to dealer
request.
Class drocls: An object of this class is created whenever Dealer adds item to
order.This class has the functionality of calculating transportcharge to be paid by
the Dealer and provides information regarding order placed by the Dealer.
Field Summary:
public Verctor pnm;
public Vector prc;
public Vector pid;
public Vector cap;
public Vector amt;
public Vector pid;
public Vector tqt;
Method Summary:
public void processrequest(HttpServletRequest);
This method retrives the information regarding product that is added to order by
the Dealer.
public double transcharge();
This method calculates and returns the transport charge required for order placed
by the dealer.
public String[] retpids();
This method returns distinct product id’s so far added to order by the dealer.
public String[] reprices();
public String[] retcapcity();
public String[] retamounts();
public String[] retquantity();
public String[] retpronames();
Class Drdetails: An object of this class is created when dealer tries to place
order. This class has the functionality of registering the order , payment details and
storing those details in database.
Field Summary:
public String need;
public String mop;
public String ddn;
public String bnm;
public String comments;
Method Summary:
public void establishconnection();
This method performs connection to database.
public void placeorder(HttpServletRequest,String[],String[],String[],int,float);
This method has the functionality of storing dealer order information and payment
information into the database.
public void setNeed(String);
This method sets the value to the property named Need.
public void setMop(String);
public void setDdn(String);
public void setBnm(String);
public void setComments(String);

Class DviewOrder:
This class has the functionality of visualizing items info in order which is placed
by the dealer.
Field Summary:
public String[] pnms;
public String[] prcs;
public Sting[] tcap;
public String[] tamt;
public String[] tqty;
Method Summary:
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method performs calculation of order placed by the dealer.This provides the
dealeer to vieworder so far placed by the dealer.
Class Admin:
This class has the functionalitiy of verifying administrator’s Id and password .
Field Summary:
public String uid;
public String pwd;
Method Summary:
public void setUid(String);
This method sets the value to the property named Uid.
public void setPwd(String);
This method sets the value to the property named Pwd.
public String retdcode();
This method returns the value of the property named Uid.
public int check();
This method verifies the admin id and password values submitted by the
Administrator against the database information. if adminid and password are
incorrect values then method returns zero otherwise it returns value one.
Class Dcustinfo:
This class has the functionality of providing direct customers info who placed on
date specified by the administrator.
Methods Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method has the functionality of providing Direct cutomers information who
placed order on date specified by Administrator.
Class Dcorderinfo:
This class has the functionality of providing direct customers order info who placed
orders to Administrator on specified date.
Methods Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method has the functionality of providing direct customers order information
who placed order on date specified by Administrator.
Class Dcpayinfo:
This class has the functionality of providing Direct customers order payment info
who placed orders to Administrator on specified date.
Methods Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method has the functionality of providing Direct customers order payment
information who placed order on date specified by Administrator.
Class Dlcustinfo:
This class has the functionality of providing dealers info who placed on date
specified by the administrator.
Methods Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method has the functionality of providing Dealers information who placed
order on date specified by Administrator.
Class Dlorderinfo:
This class has the functionality of providing dealers order info who placed orders to
Adminstrator on specified date.
Methods Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method has the functionality of providing dealers order information who
placed order on date specified by Administrator.

Class Dlpaymentinfo:
This class has the functionality of providing Dealers order payment info who placed
orders to Administrator on specified date.
Methods Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method has the functionality of providing dealers order payment information
who placed order on date specified by Administrator.

Class Ddispatch:
This class has the functionality of providing direct customers info whoose orders
need to be dispatched between dates specified by administrator.
Method Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method provides direct customers info whoose orders need to be dispatched
between dates specified by the administrator by retrieving data from database.

Class Dldispatch:
This class has the functionality of providing direct dealers info whoose orders
need to be dispatched between dates specified by administrator.
Method Summary:
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method provides direct dealers info whoose orders need to be dispatched
between dates specified by the administrator by retrieving data from database.
Class Delprds:
This class has the functionality of removing product info from catalog specified
by the Administrator.
Field Sumamry:
public String pid;
Method Summary:
public void setPid(String);
This method sets the value to the property named Pid.
public void delproduct();
This method performs connection to the database and deletes the product
information from database which is to be specified by the Administrator.
public String retpid();
This method returns the value of property named pid.

Class Delchges:
This class has the functionality of removing availabily of product in country
specified by the Administrator.
Field Summary:
public String country;
Method Summary:
public void setCountry(String);
This method sets the value to the property named Country.
public String retCountry();
This method returns the value of the property named country.
public void Delchges();
This method deletes the transport charges information from database using the
area information specified by the Administrator.

Class Deldlr:
This class has the functionality of removing dealership in the area specified by
the Administrator.
Field Summary:
public String coun;
public String sta;
public String dst;
Method Summary:
public void estconnection();
This method establishes connection to the database.
public int existing();
This method verifies whether authorized dealer existing in the area specified by
the Administrator by accessing data from database.
public void removeall();
This method removes all the customers info in the area of the dealer whoose
dealership is to be removed. then it deletes information regarding that dealer from
the records.
Class Appdlr:
This class has the functionality of appointing new dealer in the area specified by
the Administrator.
Field Summary:
public String coun;
public String sta;
public String dst;
Method Summary:
public void estconnection();
This method includes function calls required for establishing connection to
database.
public int existing();
This method verifies in the database whether authorized dealer exiting in the area
specified by the Administrator.
public void expire();
This method updates the expiry status of the applications received for
dealership.This method also provides with applications received from the area
specified by the Administrator.
Class Mails:
This class has the functionality of providing Mails information which includes
comments and suggestions received from both customers and dealers between the
dates specified by the Administrator.
Method Summary:
public void _jsp_init();
public void _jspservice(HttpServletRequest,HttpServletResponse);
This method provides information regarding people who send their comments or
suggestions using mailus option between the dates specified by the administrator
by retrieving data from database.
11. MAINTENANCE:
Maintenance is an extremely important activity in the life of a software product.
Maintenance includes all the activities after the installation of software that are
performed to keep the system operational. Two major forms of maintenance
activities are adaptive maintenance and corrective maintenance .Maintenance
activities related to fixing errors that occur after the system is installed fall under
corrective maintenance. Removing errors is one of the activities of maintenance.
Maintenance is also needed due to the change in the environment or the
requirements of the system. The change in environment often changes what is
desired from the system.
After the system is installed, some of the needs that were not discovered during
requirement analysis phase may be recognized. These needs include changes in the
input data, the system environment and the output formats. All these require
modification of the software. The maintenance activities related to such
modifications fall under adaptive maintenance. Maintenance revolves around
understanding existing software and maintainers spend most of their time trying to
understand the software they have to modify. Understanding the software includes
not only understanding the code, but also related documents. In the developed
system “BroadWalk Dealers network” the documentation and coding prepared helps
the maintainer to perform any modification easily. During the modification of the
software the effects of the change have to be clearly understood by the maintainer.
Since introducing undesired side effects in the design during the modification is
easy.

Thus the maintainers involve understanding the existing code and related
documents, understanding the effects of change, making the changes both in code
and to the documents, testing the new parts and retesting

12. CONCLUSION:

The computerized order management system has been validated by the client and
is functioning satisfactorily.

The solution has succeeded in achieving the following.


 Providing customers to place order for waterpurifier through online.
 Providing dealers the order status of customers in their area and also to place
order through online to Administrator.
 Reducing the work load on Administrator and staff of the organization by
computerizing entire process of report generation, and maintainance of dealers
and customers information.

Scope for the future enhancements:


The present software solution is limited to receiving orders through online and
maintaining customers and dealers information. This solution can be extended to
mainataining information regarding stock availability.
13. BIBLIORAPHY

JAVA COMPLETE REFERENCE :HERBERT SCHILDT


&PATRICK NAUGHTION.

OBJECT ORIENTED
SOFTWARE ENGINEERING : BERND BRUEGGE &
ALLEN H. DUTOIT

DATABASE MANAGEMENT
SYSTEMS : RAMEZ ELMASRI &
SHAMKANT B.NAVATHE

JAVA SERVER PROGRAMMING :WROX PUBLICATIONS.

HTML COMPLETE :BPB PUBLICATIONS.

Internet Resources:
 http://java.sun.com
 http://www.JSPInsider.com

Você também pode gostar