Walk THIS way. ~The WAR of the Walk ~The WAY of the Walk ~The Walk of the Walk.
Broad Walk Docs
-
Upload
puspala-manojkumar -
Category
Documents
-
view
213 -
download
0
Transcript of Broad Walk Docs
-
8/14/2019 Broad Walk Docs
1/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
-
8/14/2019 Broad Walk Docs
2/90
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
-
8/14/2019 Broad Walk Docs
3/90
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
-
8/14/2019 Broad Walk Docs
4/90
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
-
8/14/2019 Broad Walk Docs
5/90
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 suns Java programming language.It is a component of Java
technology responsible for Javas cross platform delivery.JVM is an interpreter for
byte code.
Features of Java:
Small & Simple: Java follows object-oriented approach,and most of javas 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
-
8/14/2019 Broad Walk Docs
6/90
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
-
8/14/2019 Broad Walk Docs
7/90
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 its
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 users 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: and
.The Script element takes the attribute Language which specifies
language to use when evaluating the script.
The Script tag typically used as follows.
7
-
8/14/2019 Broad Walk Docs
8/90
Java Script Statements
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, dont execute when theyre 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 APIs for database access,the
implementation of JDBC API still make these native calls for data access.The
8
-
8/14/2019 Broad Walk Docs
9/90
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 Microsofts
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
-
8/14/2019 Broad Walk Docs
10/90
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.
tells the browser to do some thing.An attribute goes inside the
and tells the brower how to do it.
The following is description of few HTML tags.
This is the start of HTML document.and this is the end of
HTML document. defines the header area of the
page... The text between these tags is title of the webpage that
will be displayed in the broser. delineates the actual content
10
-
8/14/2019 Broad Walk Docs
11/90
of the webpage that will be displayed in web browser.The combination of
symbols to create a comments are
-
8/14/2019 Broad Walk Docs
12/90
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 Jsps.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
-
8/14/2019 Broad Walk Docs
13/90
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 . 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 :
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
-
8/14/2019 Broad Walk Docs
14/90
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 :
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
The syntax is as follows:
Scriplet is a block of Java code that is executed during request processing time,
and is enclosed between tags.
The syntax is as follows:
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 tags.
The syntax is as follows:
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.
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
to set the value of bean properties.
is used to access the properties of a bean.
14
-
8/14/2019 Broad Walk Docs
15/90
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.
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.
This action allows the request to be forwarded to another JSP, to
servlet or to a static resources. The syntax is as follows.
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 Internets 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
-
8/14/2019 Broad Walk Docs
16/90
Office protocol 3 and Multipurpose Internet Mail Extension.A Transport is the suns
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. Suns 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 messages recipients address type.
16
-
8/14/2019 Broad Walk Docs
17/90
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
-
8/14/2019 Broad Walk Docs
18/90
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
-
8/14/2019 Broad Walk Docs
19/90
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 CODDS Rules.
Advantages Of RDBMS:
The main advantages of RDBMS are:
Redundancy can be reduced.
19
-
8/14/2019 Broad Walk Docs
20/90
-
8/14/2019 Broad Walk Docs
21/90
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
-
8/14/2019 Broad Walk Docs
22/90
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.5References: 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 fromcustomers 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
-
8/14/2019 Broad Walk Docs
23/90
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
-
8/14/2019 Broad Walk Docs
24/90
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 products 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
-
8/14/2019 Broad Walk Docs
25/90
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
-
8/14/2019 Broad Walk Docs
26/90
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
-
8/14/2019 Broad Walk Docs
27/90
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
-
8/14/2019 Broad Walk Docs
28/90
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
-
8/14/2019 Broad Walk Docs
29/90
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 clients 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
-
8/14/2019 Broad Walk Docs
30/90
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 systems 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
-
8/14/2019 Broad Walk Docs
31/90
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 : 10GBRAM : 32MB
Mouse : Digital
Keyboard : 105 keys digital
31
-
8/14/2019 Broad Walk Docs
32/90
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 users 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
-
8/14/2019 Broad Walk Docs
33/90
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
-
8/14/2019 Broad Walk Docs
34/90
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
-
8/14/2019 Broad Walk Docs
35/90
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
-
8/14/2019 Broad Walk Docs
36/90
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 clients
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
-
8/14/2019 Broad Walk Docs
37/90
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
-
8/14/2019 Broad Walk Docs
38/90
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
-
8/14/2019 Broad Walk Docs
39/90
39
-
8/14/2019 Broad Walk Docs
40/90
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 users 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.
-
8/14/2019 Broad Walk Docs
41/90
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 toview 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
-
8/14/2019 Broad Walk Docs
42/90
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 . Dealers 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.
-
8/14/2019 Broad Walk Docs
43/90
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 .
-
8/14/2019 Broad Walk Docs
44/90
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.
-
8/14/2019 Broad Walk Docs
45/90
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
Name
Description Data Type NOT NULL/NULL
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
-
8/14/2019 Broad Walk Docs
46/90
Field
Name
Description Data Type NOT NULL/NULL
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)
-
8/14/2019 Broad Walk Docs
47/90
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)
-
8/14/2019 Broad Walk Docs
48/90
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 NullProdeal 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/NULLDcid 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)
-
8/14/2019 Broad Walk Docs
49/90
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 NullIorid 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.
-
8/14/2019 Broad Walk Docs
50/90
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 NullRdid 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)
-
8/14/2019 Broad Walk Docs
51/90
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/NULLRdid Dealercode Varchar2(15) Not Null
Rordid Order Number Varchar2(10) NotNull
Ddno Ddnumber Varchar2(15)
Bankname Bank name Varchar2(25)
-
8/14/2019 Broad Walk Docs
52/90
-
8/14/2019 Broad Walk Docs
53/90
8.CODING:
8.1 SampleCode:For DealerLogin Form.
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; }
HelpMe
-
8/14/2019 Broad Walk Docs
54/90
DEALER LOGIN FORM
Please enter Your Dealer Code:
Please enter Your Password:
function check()
{ if(f1.dcode.value=="")
{ alert("Please enter dealer code");
f1.dcode.focus();
return false; }
return true; }
DEALER LOGIN FORM
Please Enter Your Dealer Code:
Please Enter Your PassWord:
-
8/14/2019 Broad Walk Docs
55/90
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+"'");
-
8/14/2019 Broad Walk Docs
56/90
-
8/14/2019 Broad Walk Docs
57/90
f1.lname.value="";
f1.lname.focus();
return false; }}
if(f1.phn.value=="")
{ alert("Please Enter phone number!");
f1.phn.focus();
return fals