Você está na página 1de 86

1

Project Description:

1.2.1 Admin

Admin enter his Login name and password. He views these five items.

Add Product, Shipping, Tax

Admin can add the product, shipping charges of the product and add the tax of product.

View Product List

Admin can view the product of the list.

View Pending Order

Admin can view the pending product.

View Pending Shipping Order

Admin can view the pending shipping order of the product.

View Order Detail

Admin can view the order detail of the product.

Generate Voucher

Admin can generate the voucher of the client.

2
1.2.2 User

Login

User first enter his Login_name and password then after user can purchase any product.

Purchase Product

User first has to login, and then after user purchase any product from this site and pay

3
4
1 Introduction:

The important components of this document are the functional requirements, the nonfunctional
requirements, and the goals of implementation. Documenting the functional requirements
involves the identification of the functions to be supports by the system. Each function can be
characterized. By the input data, the processing required on the input data and the output data to
be produced.

2 Requirements:

1:- Add, Edit and Delete Product

Description: This task can only be carried out by the administrator only.

Input: Admin can add the new products, name, price, image etc. Previously entered

Details of the product can also be updated and deleted by the admin.

Output: Updated data that was carried out by the admin will be

2:- Order Pending

Description: Past order made by the client is maintained and can be viewed by the administrator
in future.

Input: Admin can put certain things in comments for his/her future reference such as weather
cheque is received from the client etc.

Output: All the pending order will be displayed to the administrator.

3:- Pending Shipping

5
Description: Shipping charges that are levied on a particular product are described in detail

Input: Admin can put in comment shipping charges to levy on a particular

Product for future reference.

Output: The total amount to be collected from the client will be displayed.

4:- Order Detail

Description: Entire detail of products will be displayed to administrator for

Example name, address, cell number, product display, shipping charges applied

etc.

Output: Admin can enter voucher number that will contain all the details order to

take print out.

5:- Open New Account

Description: This is for new user of site. Ask to user to enter name and password to open the
new account.

Input: New user will have to enter the name and password for providing future identification.
Use shall have to provide the required necessary information during the time of opening the new
account.

Output: New account will be created for the new user. All the information provided by the new
user will be stored inside the site's database

6 :- Purchase New Product

Description: To purchase the new product user will have to select the new product.

Input: Name of the product which is selected by the client

Output: The details of the new product like shipping charge applied, cost, features etc. will be
included.

6
7
4.1 Preliminary Investigation

When the request was made by Bonrix Clients, our Project Guide Mr. Renish Ladani assigned us
the project since this was the time we had approached him regarding our requirement of a project
work. After reviewing the request we set about with the first of the system activity: the
preliminary investigation. We can divide the task in three steps as...

4.1.1 Request Analysis

The request was studied carefully to assess what was exactly required. The focus being on the
task of determining precisely what originator wants.

4.1.2 Feasibility Study

An important outcome of the preliminary investigation is the determination that the system
requested is feasible. There are three aspects in the feasibility study of the preliminary
investigation.

Introduction

Planning activities must be done before starting the project. Once the project is started, project
control begins. During planning, all the activities that management needs to perform are planned.
While during project control, the plan is executed and updated. The project monitoring and
control activities are spread over the development life cycle of the software, and their basic goal
is to ensure that the plan is being followed.

The basic goal of planning is to look into the future, identify the activities that need to be done to
complete the project successfully, and plan the scheduling and resource allocation for these
activities.

The input to the planning activity is the requirements specifications. The output phase is the plan,
which is a document describing different aspects of the plan.

8
As our overall solution is divided into number of independent subsystem, below shows the
framework for major activities. Developing these subsystems needs high level of technical
understanding and in-depth knowledge of JSP, it is very hard to estimate the detailed description
of sub activities.

It is important to go through a series of predictable steps that helps you to create a timely and
high quality results. To provide stability, control and organization for our project development
we adopted a linear sequential model. It is also known as classic life cycle' or water-fall model'.

It suggests a systematic, sequential approach to software development that begins at analysis and
progresses through design, coding and testing.

The Linear Sequential Model

Linear Sequential Model

• Analysis

To understand the nature of the project, we had discussions with our technical head about the
payroll management system. As a result of these discussions, we analyzed the information
domain for the project. We also analyzed the current Online Software and Hardware Shopping of
the Bonrix Software Systems and understood the flow of the project as well as the behavior and
interface it.

• Design

Software design is actually a multi step process that focuses on data structure, software
architecture, interface representation and procedural details.

• As a data structure design - database design is very crucial part of developing a Payroll
Management System. We designed different databases as per requirement analysis. We also
decided the fields of a record, primary key for the database, field according to which the database
should be sorted etc.

• As a software architecture design We used three-tiered application for developing a Payroll


Management System. The biggest benefit is distribution and support of the applications.
Basically there are 3 layers in this application.

9
Client-tier

Application server tier

Data-server-tier

• Coding

The design must be a trusted into an executable file. The code generation step performs this task.
We decided to use JSP language and Windows 2000 to accomplish code generation.

• Testing

Once code has been generated, program testing begins. The testing process focuses on the logical
internals of the project, ensuring that all statement had been tested. We decided to use unit
testing, integration testing and validation testing to made our project.

Software Development Process Model:

• The goal of any development effort is to procedure some product. A development process is a
ser of activities, together with an ordering relationship between activities, which if performed in
a manner that satisfies the ordering relationship, will procedure the desired product. A process
model is an abstract representation of a development process.

• In a software development effort, the goal is to produce high quality software. The
development process is, therefore the sequence of activities that will produce such software. A
software development process model specifies how these activities are organized in the entire
software development effort.

• The purpose of specifying a development process model is to suggest an overall process for
developing software.

• A simplest process model is the waterfall model , which states that are phases are organized in
a linear order. A project begins with a feasibility study. On successfully demonstration the
feasibility of the project, the requirement analysis and project planning begins. The design starts
after the requirements analysis is complete, the code is integrated and testing is done. On
successfully testing, the system is installed. After this, the regular operation and maintenance of
the system takes place.

• There are some other model also, via . Prototyping, iterative enhancement, the spiral model
etc. the basic idea behind prototyping is that instead of freezing the requirements before any
design of coding can proceed, a throw away prototype is built to help understand the
requirements.

10
• Development of prototype undergoes design, coding, and testing. But each of these phases is
not done in a formal manner. By using this prototype, the client can get a feel of the system,
since the interactions with the prototype helps client gets a better understanding of the
requirements.

• Prototyping is an attractive idea for complicated and large systems for which there is not
existing manual process.

• In the iterative enhancement model of software development process, the basic idea is that
the software should be developed in increments, each increment adding some functional
capability of the system is fully functional.

• In spiral model of software alternatives that ate possible for achieving the objectives that are
achieving the objectives, and the imposed constraints. The next step in the cycle is to evaluate
these different alternatives based on the objectives and involved. The next step is to develop
strategies that will resolve the uncertainties and risks. This step may involve act ivies such as
benchmarking, simulation and prototyping. Next, the software is developed, keeping in mind the
risks.

• The software development model, adopted for the proposed system, is the waterfall model
(linear sequential model).

Reason:

Waterfall model stipulates that the requirements should be completely specified before the rest
of the system development is processed. In the proposed system, the requirement are fixed and
known beforehand and hence this model is suitable and adopted for the proposed system.

Request Approval:

The requested project was both desirable and feasible. It was put into schedule and development
started immodestly since we were available for the project management.

4.2 Requirement analysis

As this was not an existing system we need to start everything from the beginning. We started
from the basic study of this system and go on Analyzing it. Then as per the system's requirement
we carried out the designing, coding and testing.

The requirement determination was conducted in 3 pats.

a). Requirement anticipation :

As we had no experience in this field, the anticipation was purely intuitive based on general
sense and had no bias introduced.

11
b). Requirement investigation:

According to the requirement, we went about collecting information form the system users. It
was from the point of view of information requirement, system requirement and user
requirements. It is in term of input available and output required.

The investigation phase was done primarily through seeking answers to these major questions;

• What is basis process?

• What data are used or produced during that process?

• What are the limits imposed by time and the volume of the work?

• What performance controls are used?

Also methods for documenting and describing system features were established. This was
followed by a series of interviews with our guide Mr. Renish Ladani

c).Requirement specification:

The data collected were then analyzed to determine requirement specifications, the description
features for a new system. This activity has three interrelated parts:

• Analysis of Factual data: The data collected during the fact-finding study and included in the
data flow and decision analysis documentation were examined to determine how well the system
is performing and whether it will meet the organization's demand.

• Identification of Essential Requirement: features that must be included in the new system,
ranging form operational details to performance criteria, were specified.

• Selection of Requirement Fulfillment Strategies: The methods that we wanted to use to achieve
the stated requirements were selected. There being the basis of the system design were done very
carefully, with due consideration being given to all aspects.

4.3 System Environment

As this was not an existing system we need to start everything from the beginning. We started
from the basic study of this system and go on analyzing it. Then as per the system's requirement
we carried out the designing, coding and testing.

Advantages of This New System

Flexibility

12
To meet any future requirement arising due to expansion of the project the system has been
modulated so as to facilitate any expansion.

Fast Information Retrieval

Automation results in time saving as a result of faster queries. The time wastage incurred in work
done manually is avoided.

Accuracy

Automation leaves no room for errors due to the validation checks and control applied to the
data, before and \during processing. Correct and unambiguous data is being passed and
processed, which ensures high degree of accuracy and reliability.

Use friendly

As the system is developed by the opinion and the consent of the proposed user, and as the
system provides easy to user interface the system is quite user friendly, menu driven option are
provided so as to have a greater access control over data.

Ease of Navigation

As web pages are dynamically generated along with the homepages, a particular user may get
only the information what he requires and thus avoids any room of boredom. It is an exciting
experience to work with the system.

Use of Web Technology

The use of Intranet application leads to no extra software installation and the scope of the system
are widened by haps and bounds. It is possible that similar system may be incorporated into other
systems as well.

13
User Sitemap

User

Home

Advanc
Registe Contact About Service
Login Search e Product
r Us uS s
Search

Product
Product
Detail

Product
Detail

Buy

Pay

14
Admin Sitemap

15
16
5.1 Design strategy:

Introduction to Three-Tier Architecture:

It is becoming clear that the issue is not one of simply processing transactions and generating
reports, but rather of creating an information system that can change with business needs, that
mandate tighter budgets and higher quality.

To respond to the challenges being presented by the business environment, a new three tiers or
N-tier Client/Server approach has been introduced. N-tier refers to the idea that there are no
limits to the number of tiers that could be introduced to the Client/Server model. To begin this
discussion, it is important to review the current Two-Tier approach.

Two-Tier Client/Server Model:

The Two-Tier model is tied to the physical implementation, a desktop machine operating as a
client and a network server housing the back-end database engine. In the Two-Tier model, logic
is split between these two physical locations, the Client and the Server. In a Two-Tier modal, the
Front-end piece is commonly being developed in Power Builder, Visual Basic, or some other
4GL. The key point to remember is that, in a Two-Tier Model, business logic for your
application must physically reside either on the Client or be implemented on the back-end within
the DBMS in the form of triggers and stored procedures. Both triggers and stored are
precompiled collections of SQL statements and control-of-

flow statements. Consider a situation in which you set up a series of stored procedures to support
a particular application's needs. Meanwhile, the developers of five other applications are making
similar efforts to support their own needs, all in the same database. Sure, they are naming
conventions and definitions of who owns what objects, but the bottom line is that this scenario
makes implementing and maintaining business rules downright ugly.

Paradigms, which implement a strict Two-Tier architecture, make developing Client/Server


applications look easy, such as the data windows in Power Builder where a graphical window of
fields is magically bound to the back-end data source. In Visual Basic, using any of the data
controls that provide a graphical link to the back-end data source creates a Two-Tier
Client/Server application. This is because these implementations of application directly tie the
graphical user interface to back-end data access. The upside is that data access is simplified,

17
allowing very rapid development of applications. The GUI is bound directly to the data source
and all the details of data manipulation are handled automatically. This strength is also its
weakness. While data access is simplified, it is also less flexible. Often you will not have
complete control over your interactions with the data source because it is being managed for you.
Of course, this extra management costs resources on the Client and can result in poor
performance of your applications.

Limitation of Two-Tier Client/Server Model:

There are three critical limitations of Two-Tier Client/Server model.

• Not Scalable The inability of a Two-Tier approach to grow beyond the physical boundaries of
a client machine and a server machine prevents this model from being scalable.

• Unmanageable Since you cannot encapsulate business rules and deploy them centrally, sharing
common processes and reusing your work is difficult at best.

• Poor Performance The binding of the graphical interface to the data source consumes major
resources on the client machine, which results in poor performance and, unfortunately, unhappy
clients.

5.1.1 User Services (Client-tier)

Is responsible for the presentation of data, receiving user events and controlling the user
interface. The actual business logic has been moved to an application-server. A Logical layer of
a distributed system that typically presents data and process input from the user, sometimes
referred to as the front end. Usually, the client tier requests data from a server based on input,
and then formats and displays the result.

5.1.2 Business Services (Application-server-tier)

This is the logical layer in a distributed system between user interface or Web client and the
database. This is typically where business objects are instantiated. It is a collection of business
rules and functions that generate and operate upon receiving information. They accomplish this
through business rules, which can change frequently, and are thus encapsulated into components
that are physically separate from the application logic itself.

Business-objects that implement the business rules "live" here, and are available to the client-tier.
This level now forms the central key to solving 2 tier problems. This tier protects the data from
direct access by the clients. Furthermore, the term "component" is also to be found here. In the
non-visual area of the system, components on the server-side can be defined as configurable
objects, which can be put together to form new application processes.

5.1.3 Data Services (Data-server-tier)

18
This tier is responsible for data storage. Besides the widespread relational database systems,
existing legacy systems databases are often reused here. It is important to note that boundaries
between tiers are logical. It is quite easily possible to run all three tiers on one and the same
(physical) machine. The main importance is that the system is neatly structured, and that there is
a well-planned definition of the software boundaries between the different tiers.

Advantages of Three-Tier Client/Server Model:


• Reuse:

The time you invest in designing and implementing components is not wasted because you can
share them among applications.

• Performance:

Since you can deploy your components on machines other that the client workstation, you have
the ability to shift processing load from a client machine that may be under powered to a server
with extra horsepower. This flexibility in deployment and design allows you, as a developer, to
take advantage of the best possible methods for each aspect of your application's execution,
resulting in better performance.

• Manageability:

Encapsulation of your application's services into components allows you to break down large,
complex applications into more manageable pieces.

• Maintenance:

Centralizing components for reuse has an added benefit. This become easier to redeploys when
modifications are made, this keeps pace with business needs.

• Relatively simple to use wrapping techniques :

As implementation changes are transparent from the viewpoint of the object's client, a forward
strategy can be developed to replace legacy system smoothly.

19
Figure 5.1 Flows of Layers

5.2 Context Diagram

Figure 5.2 Context Diagram

20
5.3 Data Flow Diagram

User Diagram

Figure 5.3.1 User Diagram

21
Admin Diagram

Figure 5.3.2 Admin Diagram

22
5.4 Entity - Relationship Diagram

Registration and User_login Relationship Diagram

Figure 5.4.1 Registration and User_login Relationship Diagram

23
5.4.2 Master and Product table Relationship Diagram

Figure 5.4.1 Master and Product table Relationship Diagram

5.5 Data Dictionary

• Introduction

Data dictionary lists the purpose of all data items and the definition of composite data items in
terms components data items.

24
A data dictionary provides a standard terminology for all relevant data for use by all engineers
working in the same project. A consistent vocabulary for data items is very important.

The data dictionary provides the analyst with a means to determine the definition of different
data structure in terms of their component element.

• Tables

User_Regstration

This table work as backend when new user enters his/her profile which store in this table.

Field Name Type Description Size Constraints


User_id Varchar Unique identification of 10 Not Null
the User
User_Fname Varchar User First Name 20 Not Null
User_Lname Varchar User Last Name 20 Not Null
User_Eid Varchar User Email Id 30 Not Null
User_Bdate Numeric User Birth Date 9 Not Null
User_Bmonth Varchar User Birth Month 10 Not Null
User_Byear Numeric User Birth Year 9 Not Null
User_Add Varchar User Address 200 Not Null
User_City Varchar User City 20 Not Null
User_Zip_code Numeric Zip code 9 Not Null
User_Country_code Varchar Country code 10 Not Null
User_Std_code Numeric STD code 9 Not Null
User_Telno Numeric Telephone Number 9 Not Null
User_Mob Numeric Mobile Number 9 Not Null

User_ Login

This table confirms the authentication of the user if user already exists else user will not be
allowed to access or share any of the company's information.

Field Name Type Size Description Constraints


User_id Varchar 10 User id Not null,

Primary key
User_login Varchar 20 Login name of the User Not Null
User_pw Varchar 20 Password of User Not Null

Admin_Login

This table stores the information of administrator like Admin id, login password etc. to maintain
the privacy. Any other end users are strictly prohibited to have access to this table.

25
Field Name Type Size Description Constraints
Admin_id Varchar 10 Unique identification of the Not null,
Admin
Primary key
Admin _login Varchar 20 Login name of the Admin Not Null
Admin _pw Varchar 20 Password of Admin Not Null

Pro_Master

All the details of items shorted in to categories are stored in this table including product item and
all of its sub product items. This table provides the general information behaves like master
table.

Field Name Type Size Description Constraints


Pro_id Numeric 9 Unique identification of the Not null
Product

Pro_category Varchar 500 Product item Not null

Pro_type Varchar 50 Product type like Not null

(Software,Hardware,Service
)
Pro_pid Numeric 9 Unique identification of the Not null,
Item
Primary key
Pro_cid Numeric 9 Identification of sub item Not null,

Pro_Software

Details of Software category that is selected from the pro-master table are maintained in to pro-
software table that maintains all the details like Software name, Software prize, Number of
software purchased etc. are maintained into this table.

Field Name Type Size Description Constraints


Pro_soft_id Numeric 9 Unique identification Not null,
of the S/W item
Primary key
Pro_soft_name Varchar 20 Software name Not Null
Pro_soft_price Numeric 9 Software price Not Null
Pro_soft_url Varchar 20 Add mage by url Null
Pro_soft_bigurl Varchar 20 Add big image url Null
Pro_soft_qty Numeric 9 Item quantity Not Null

26
Pro_soft_image Image 16 Software image Null
Pro_soft_shipping Varchar 50 Software shipping Not Null
name
name
Pro_soft_description Varchar 200 Description about Null
software
Pro_soft_display Smallint 2 Display pro Not null

Pro_Hardware

Details of Hardware category that is selected from the pro-master table are maintained in to pro-
hardware table that maintains all the details like hardware name, hardware prize, Number of
hardware purchased etc. are maintained into this table.

Field Name Type Size Description Constraints


Pro_hard_id Numeric 9 Unique identification of Not null,
the H/W item
Primary key
Pro_ hard _name Varchar 20 Hardware name Not Null
Pro_ hard _price Numeric 9 Hardware price Not Null
Pro_ hard _url Varchar 20 Add mage by url Null
Pro_hard_bigurl Varchar 20 Add big imag url Null
Pro_ hard _qty Numeric 9 Item quantity Not Null
Pro_ hard _image Image 16 Hardware image Null
Pro_ hard _shippingname Varchar 50 Hardware shipping Not Null
name
Pro_ hard _description Varchar 200 Description about Null
hardware
Pro_hard_display Smallint 2 Display pro Not Null

Pro_Service

Details of Service category that is selected from the pro-master table are maintained in to pro-
service table that maintains all the details like service name, service prize, Number of service
purchased etc. are maintained into this table.

Field Name Type Size Description Constraints


Pro_ser_id Numeric 9 Unique identification of Not null,
the Service item
Primary key
Pro_ ser _name Varchar 20 Service name Not Null
Pro_ ser _price Numeric 9 Service price Not Null
Pro_ ser _url Varchar 20 Add mage by url Null
Pro_ser_bigurl Varchar 20 Add big image url Null
Pro_ ser _qty Numeric 9 Item quantity Not Null
Pro_ ser _image Image 16 Service image Null

27
Pro_ ser _shippingname Varchar 50 Service shipping name Not Null
Pro_ ser _description Varchar 200 Description about service Null
Pro_ser_display Smallint 2 Display pro Not Null

Pro_Shipping

Store vendor name and access for generate voucher number per software, which access given by
admin.

Field Name Type Size Description Constraints


Ship_name Varchar 100 Shipping name Not Null
Ship_local_fqty Float 8 Shipping first quantity for Not Null
local
Ship_local_aqty Float 8 Shipping additional Not Null
quantity for local
Ship_rest_fqty Float 8 Shipping first quantity for Not Null
rest of India
Ship_rest_aqty Float 8 Shipping additional Not Null
quantity for rest of India
Ship_out_fqty Float 8 Shipping first quantity for Not Null
out of India
Ship_out_aqty Float 8 Shipping additional Not Null
quantity for out of India

Pro_Tax

As per the new taxation rules, taxes applied on each of the products are maintained in this table.

Field Name Type Size Description Constraints


Soft_taxname Varchar 20 Software tax name Not Null
Hard_taxname Varchar 20 Hardware tax name Not Null
Ser_taxname Varchar 20 Service tax name Not Null
Soft_tax Int 4 Software tax Not Null
Hard_tax Int 4 Hardware tax Not Null
Ser_tax Int 4 Service tax Not Null

Pro_Pending

User's request to buy a particular product is first maintained in to this table. Only administrator
will have right to access this table.

Field Name Type Size Description Constraints


Pen_orederid Numeric 9 Unique identification of the Not null,
order
Primary key
Pen_trade Varchar 200 Display Item purchased by Not Null

28
user
Pen_itemprice Numeric 9 Purchased item price Not Null
Pen_paymethod Varchar 50 How to pay user payment Not Null
like (Cheque, D.D.)
Pen_buydetial Varchar 200 User personal detail Not Null
Pen_buyaddr Varchar 100 User address Not Null
Pen_buycity Varchar 20 User city Not Null

Pro_PandingShipping

Once the request accepted by the administrator after verifying about the payment made, detail of
product shipping are maintained into this table.

Field Name Type Size Description Constraints


Pen_Ship_invoiceid Numeric 9 Unique identification of Not null,
the bill no
Primary key
Pen_Ship_orederid Numeric 9 Unique identification of Not null,
the order no

Pen_ Ship_trade Varchar 200 Display Item purchased Not Null


by user
Pen_ Ship_itemprice Numeric 9 Purchased item price Not Null
Pen_ Ship_paymethod Varchar 50 How to pay user Not Null
payment like (Cheque,
D.D.)
Pen_ Ship_buydetial Varchar 200 User personal detail Not Null
Pen_ Ship_buyaddr Varchar 100 User address Not Null
Pen_ Ship_buycity Varchar 20 User city Not Null
Pen_Ship_comment Varchar 100 Description about user
payment

UML Diagram

UML is not simply a notation for drawing diagrams, but a complete language for capturing
knowledge about a subject and expressing knowledge regarding the subject for the purpose of
communication. Applies to modeling and system. Modeling involves a focus on understanding a
subject and capturing and being able to communication. Applies to a multitude of different types
of systems domains and methods or processes.

Purposes of these variety models,

Analysis

Specification

29
Design

Visualize and understand the problem and the working of a system

Use-Case Diagram

Use cases are classes that define units of functionality of behavior provided by a system. They
specify the external requirements of the system and the functionality offered by the system, the
set of use cases may be enclosed by a system boundary of rectangle labeled with the system
name. The system container is actor. Actor plays important role in this diagram. The system is
enclosed by a boundary and performs the functionality for actors.

Figure : Use-Case Diagrams

30
31
Function

• Admin

This module contain the following function

Note:- All the functions given beneath are for administrator manipulation only.

Loginadmin():-

This function takes the two arguments that is Admin_Name and Admin_password to verify the
authentication of administrator. If either of the two expected parameter provided is not correct
the user will not have right to access. An authenticate user will have right to modify any part of
the software.

AddProduct():-

Once the authentication has been verified for admin, administrator can add the new product as
per his/her desire. This function will add product in database that is entered by the administrator.
No other user accepts administrator can add a new product.

UpdateProduct():-

Administrator can update and manipulate the product that is price value of product, taxation
levied on the products, changing the name of product etc. This function will reflect the changes
made by the user .

DeletProduct():-

Changes made in this portion are strictly by Administrator only. That is product can be deleted
from the product list database by administrator.

32
Note: - Product once deleted from the Product List will not be retrieved back.

PendingProduct():-

The entire request made by the client to purchase the particular product is listed by this function.
Once the admin has sort listed the pending product the product will be deleted.

PendingShipping():-

The sort listed product from PendingProduct list will migrate to PendingShipping table in
database by this function. This function is manipulated by administrator only.

OrderDetail():-

All the past transactional information is maintained by this function. Administrator can view the
past record maintained in the database table by this function. Past transaction includes past
payment made or not by the client on purchase of the particular product, product ID, client name,
address etc.

• User

Note: - All the functions mentioned below are of the user level function

Registration():-

This function handles the user registration, all the information about user like name, address,
phone number etc. are few of the variables that this function handles and maintain.

Login():-

Once the user has registered on site user name and password variables are stored by this
function. Registered user will have to provide the correct variable information asked by this
function at the time of login.

Function's two variable that is User-Name and User-Password is maintained in database table.

Search():-

Based on the String value supplied by the user upon the selection of an individual product
Search() function will find the product from the product database. The String value supplied by
the user to this function will fetch the result that matches the search criteria from all the products
tables.

Advancesearch ():-

33
This function takes the String argument that is specified and is supplied by the user. The
specified value supplied by the user will than search the result of match from the product tables.

6.2 Screen Layouts

• Home

Figure 6.2.1 Homepage

This is the main page of the Bonrix Software System. One can register himself to this site for the
online-shopping, and even the registered member can login. One can view different items on the
home page which are kept for the sale. This home page also provide the user with a good search
engine, by which he can search different items/products available on this site.

• Admin

34
Figure 6.2.2Admin Login

This is the very first screen appears in front of administrator. The administrator login screen
confirms authentication of admin, hence other user who will try to enter id and password will not
be allowed to login into site.

Administrator will have to enter the id and password to prove authentication.

Figure. 6.3.2 AdminChangePassword

Administrator will have to change the password .

35
Figure 6.2.4 AdminHome

Once the password and id of administrator has been confirmed the very next page will be the
Home page that appears in front of admin.

All the types of the manipulation by the admin can be done from here onwards like adding the
new product, deleting the existing products, editing the products detail, shipping charges applied
on a particular product etc.

36
Figure 6.2.5 Add Product

Once the add product option is selected by the admin this screen appears to admin in which he
can add a particular product and the rest of it's necessary details like category, service provided
(software, hardware and other types of the services provided by the company).

37
Figure 6.2.6 Edit Product

Upon clicking the edit option admin can edit the products details like category of products,
service provided etc.

38
Figure 6.2.7 Delete Product

To delete the product from the product site's database admin has to go for this option.

Once the product is deleted from the database it will not be retrieved later in any of the case.

39
Figure 6.2.8 Add Product Detail

Once the product is added up, all of it's sub product can be added through this menu. This screen
will ask the admin to enter all the types of detail like sub product of the main product, product
price, image URL, shipping charges applied and it's description.

40
Figure 6.2.9 Add Shipping Charges

To add the shipping charges for products this option is selected. Shipping charges applied are
different for different products like local area selling, rest of the country states charges and
international charges applied on the product.

41
Figure 6.2.10 Add Product Tax

All the types of taxes applied on software, hardware and company services taxes are entered in to
this form by admin.

42
Figure 6.2.11 Pending Payment

All the pending payments of client are described in this form. Once the payment has been made
by the client user can shift the records in this form to Shipping Pending form by clicking Submit
button.

43
Figure 6.2.12 Pending Shipping

After migrating from Pending Payment form the records will appear in this form to admin.
Admin can add extra comments to types of payment made by the client in this form for his/her
future reference. Once the comments have been placed the admin will sent the same records to
Order Detail form by clicking Submit Shipping Detail button.

44
Figure 6.2.12 Order Detail

This form will behave as Bill Book page. It consist all the type of details like Order ID, client's
detail like address, cell no. etc. This will be the last form that appears to admin because he can
directly take print of the same form as receipt.

• User

45
Figure 6.2.13 User Login

Once the user has registered on sites domain he/she will be asked to enter the Email-ID and
password that was entered at the time of creating the new account. All the types of the
information provided by the user has to be correct else the access will be denied.

46
Figure 6.2.14 User Registration

This is user registration form, in which user has to enter all the types of the detail like name,
Email-ID, password etc. to open the new account on site. Once the user clicks on the submit
button all the data entered by the user will be stored into sites database.

47
Figure 6.2.15 Product View

On the home page, user can view different categories like software, Hardware, Services etc. In
the Hardware category, user can click on different sub-categories provided. And it also displays
the item related to that category with full detailed information. Once the item is viewed by the
user, he can even buy that item.

Figure 6.2.16 Search and Advance Search

Once the user has been verified by site, this form appears in front of the user. In this user can
search for a particular product or services that are provided by the company.

48
Figure 6.2.17 Product Detail

This is Product Detail form in which all the details of a product or services appeared to user.
Details like shipping charges, price, and service charges will be included in this.

49
Figure 6.2.18 Buy Now

If user is interested to buy a particular product/service this form will ask the user to confirm the
order after having glance to all the details of product/service by clicking Commit to Buy button.

Figure 6.2.19 Pay Now

If user is interested to buy he can go for further transaction with the company by clicking Pay
Now.

50
Figure 6.2.20 Payment Option

Once the user will click on Pay Now button this form will display certain types of options like
mode of payment that will be made, address, quantity ordered, price etc

51
Figure 6.2.21 Payment Method

User can pay to company for a particular product/services through Credit Card by entering
certain information that are necessary.

Any wrong entry in this form will not allow user to go for further transaction with the company.

52
Figure 6.2.22 Send Information

This is for client asking to client for their valuable suggestion. It also play role of feed back and
confirmation form that will be send back to the company.

TESTING

53
Introduction

Correctness is the degree to which a software system performs its required function.

Correctness is the extend to which a software system is free from faults.

As we haven't any experience at starting in real time software development, obviously we face
much more error from which we are not familiar. And also we don't know what kind of testing
has to do. Thanks a lot to our Project Guide Mr. Renish Ladani who have given a lot of idea
about testing, and given solution for non familiar errors.

I understand that Testing is one of the major parts in software development.

First of all, I would like to introduce testing and its importance.

A correct system must accomplish the following:

• Compute accurate results.


• Operate safely, and cause the system containing the software to operate
safely.
• Perform the tasks required by the system containing the software, as
explained in software applications.
• Achieve these goals for All inputs.
• Recognize inputs outside its domain.

We shall see that satisfying these 5 pre-requisites depends on a variety of things, one of these, for
example is the fact that to satisfy, the first thing that should be provided is a clear and correct
software specification. We shall also see how a correct system is built, and the various stages,
which determine the software development life cycle. When we are going for testing we have
following meter in mind.

Functionality

Are the site application and its components linked and working together? Does the site perform
to stated requirements? Does a visitor have full functional capability of the displayed page? Can
orders be serviced? Are notifications sent?

Serviceability

54
Does the site work over a range of expected conditions including individual user platforms,
operating system, browsers, communication protocols and Internet service providers? Are
multiple users visiting the same area serviced predictably under all operating conditions? Does
the application respond consistently end to end without degradation of service and speed?

Performance

Is your site performing to its maximum potential? Slow response is costly in terms of the known
problems reported to customer service and in unknown missed opportunities. The competition
may only be one click away at a similar and more responsive site.

9.2 Validation and Verification

Validation and verification is major part of testing. Even we go through find problems and solve
it, there is many type of errors in program. So we have to follow validations and verifications for
our software.

Validation:

The process of evaluating software at the end of its development process to ensure that it is free
from failures and compiles with its requirements. Often this validation occurs through the
utilization of various testing approaches.

Verification:

The process of determining whether or not the products of a given phase of a software
development process fulfill the requirements established during the previous phase. Verification
approaches attempt to identify product faults or errors, which give rise to failures.

Validation and Verification Techniques

We first decide specific validation and verification objectives for our project. At deciding time
we determine the critical of the product, its constraints, and its complexity. In general, the
objective of the validation and verification function is to ensure that the product satisfies the
target of some validation and verification activity.

We try best to conduct Validation and Verification to be systematic and technical evaluation of
software and associated products of the development and maintenance process. For that Reviews
and tests are done at the end of each phase of the development process to ensure software
requirements are complete and testable and that design, code, and data satisfy those
requirements.

Reviews, Inspection and Walkthrough

Reviews

55
We always Reviews our project at the end of each phase of the life cycle to determine whether
established requirements, design concepts and specifications have been met or not. Our company
guide and our college guide provided us with their beneficial suggestions.

For example when a member comes for registering its details we first check the username and
password and if all the constraints are matched then only the registration form for the member is
opened.

Also we regularly surfed the net the give the most advanced utilities to our project.

Inspection or Walkthrough

An inspection or Walkthrough is a detailed examination of a product on a step-by-step or line-of-


code by line-of-code basis. The purpose of conducting inspection and walkthroughs is to find
errors. The group that does that does and inspection or walkthrough is composed of peers from
development, test and quality assurance.

Software Testing

Software testing is the process of exercise a product to verify that is satisfied specified
requirement of to identify between expected and actual results.

Testing is the operation of the software with real or simulated inputs to demonstrate that a
product satisfies its requirement and if it does not to identify the specific differences between
expected and actual results. There are varied levels of software test, ranging from unit or element
testing through integration testing and performance testing, up to software system and
acceptance tests.

Informal Testing

Informal test may be requirements driven or designer driven. Requirement driven or black-box
testing is done by selecting the input data and other parameters based on the software
requirements and observing the outputs and reactions of the software. Black box testing can be
done at any level of integration. In addition to testing for satisfaction of requirements, some of
the objectives of requirement driven testing are to ascertain.

• Computational correctness.

• State transitioning as expected,

• Proper behavior under stress or high load.

• Adequate error detection, handling and recovery.

Design-driven or white box testing is the process where the tester examines the internal working
of codes. Selecting the input data does design driven testing and other parameters based on the

56
internal logic paths that are to be checked. The goals of design driven testing includes
ascertaining correctness of:

• All paths through the code. For most software products, this can be feasibly done only at the
unit test level.

• Bit-by-bit functioning interfaces.

• Size and timing of critical elements of code.

We have performed both types of informal test. For example when we perform program for one
page, we check design, and compare it with it, time we have spend for that we determine and if it
is more than we think how to do fast. We also determine time to load and if it is not good enough
then we go through the code to optimize as possible.

Formal Testing

We have done formal testing to demonstrate that the software is ready for its intended use. We
have included an acquirer approved test plan and procedure, quality assurance witness, a record
of all discrepancies and a test report. Formal testing is always requirement-driven, and its
purpose is to demonstrate that the software meets its requirements.

When out most work had been complete up to this we have done the test only on our PC. Then
we go to test it on different computer through LAN. Then our guide did the testing and told us
the various changes that were to be done.

Level of Testing

In this section we will overview various level of testing activities, each we have done,

Module Testing

Module or unit testing is the lowest level of testing and involves the testing of a software module
or unit. We have done module testing to insure that the components being tested conforms to its
specification and is ready tobe integrated with other components of the product.

Integration Testing

It consists of the systematic combination and execution of product components. Multiple levels
of integration testing are possible with a combination of hardware and software at several
different levels. We have done integration testing is to insure that the interface that the interfaces
between the components are correct and that the product components combine to execute the
product's functionality correctly.

In our chat application when a valid authentication is done then the integration of the all the
members is done in one applet and every member could chat with each other.

57
Regression Testing

Regression testing can be defined as a process of executing previously defined test cases on a
modified program to assure that the software changes have not adversely affected the program's
previously existing functions. The error-prone nature of software modification demands that
regression testing can be performed.

We include following error checking test for regression test.

• Data corruption errors: These errors are side effects due to shared data.

• Inappropriate control sequences: These errors are side effects due to change in execution
sequences.

• Resource contention: Example of these types of errors are potential bottlenecks and deadlocks.

• Performances deficiencies: These include timing and storage utilization errors.

An important regression testing strategy is so place a higher priority on testing the older
capabilities of the product that on testing the new capabilities provides by modifications. This is
especially important when consider that a recent study found that half of all failures detected by
users after modification were failure of old capabilities, as a result of side effects of
implementation of new functionality.

Step By Step Testing Done In This Project

When we are going for testing, we use above strategies.

• We first decide where to put validation and where the validation is required.

• We first put validation require to put. For example if required e-mail address then that must
be'@' symbol I sentence and .' Before logical name like com' or edu' so on.

• We first verify our whole design using review, inspection and walkthrough technique.

• We also verify our project after completion using same method.

• We go to verify each and every function that we have implemented.

• We always test our code after completion of each program or module or integration of module
or integration of program.

• We use assert statement, to put validation in our code. And check our code to assure that assert
is right or not.

• We use informal test after completion of each module.

58
• We go for formal testing after completion of each module and each part.

• We always check our graphical design with our project guide and colleague, and change it as
per the requirement.

• After completion we check each hyperlink is correct or not and modify if as per requirement.

• After completion of page programming, we use extreme input data and check whether it right
or not.

• We check for our application whether it is working perfectly in a multi user environment or
not.

Errors Faced During Implementation And Testing

As we used a simple editor to implement our Java Program, we face much more errors due to
logical mistake and typing mistake. So it is hard to remember all errors and list it.

But following are some most frequent errors and hard logical errors.

1.We face frequent SQL errors as we had been using SQL sever 2000 at times we

had errors where the query field types did not match exactly the fields as been specified in the
tables. Also there kind of errors cannot be

2.We frequently get javawebserver internal error ode 500 because of out bad implementation
code.

59
60
7.1 JAVA

Java is a programming language and a platform.

The Java Programming Language

Java is a high-level programming language that is all of the following:

• Simple

• Object Oriented

• Distributed

• Secure

• Robust

• Portable

• Architecture-neutral

• High performance

• Multithreaded

• Dynamic

Simple

Java was designed to be easy for the professional programmer to learn ad use effectively.

61
Object-Oriented

As C++, Java is object-oriented. The object model in java is Simple and easy to

Extend. It follows the three basic mechanisms of object-oriented Language.

• Encapsulation

• Inheritance

• Polymorphism

Robust

The multiplatform environment of the web places extraordinary demands on a program, because
the program must execute reliably in a variety of system. Thus, the ability to create robust
programs was given a high priority in the design of java.

Multithreaded

Java was designed to meet the read world requirement of creating interactive, networked
programs. To accomplish this, java supports multithreaded programming, which allows you to
write programs that do many things simultaneously.

Architecture-Neutral

A central issue for the java designers was that of code longevity and portability. One of the main
problem facing programmers is that no guarantee exists that if you write a program today, it will
run tomorrow- even on the same machine. Operating system upgrades, processor upgrades, and
changes in the core system resources can all combine to make a program malfunction. The java
designers made several hard decisions in the java language and java VM in an attempt to alter
this situation.

Distributed

Java is designed for the distributed environment of the internet, because it handles TCP/IP
protocols. In fact, accessing a resource using a URL is not much different from accessing a file.

Dynamic

Java programs carry with them substantial amounts of run-time type information that is used to
verity and resolve accesses to objects at run time. This makes it possible to dynamically link
code in a safe and expedient manner.

• Java is also unusual in that each java program is both complied and interpreted. With a
compiler, you translate a java program into an intermediate language called Java byte code �the

62
platform independent code instruction is parse and run on the computer. Compilation happens
just once; interpretation occurs each time the program is executed.

• You can think of java byte code as the machine code instructions for the Java Virtual Machine
(Java VM). Every java interpreter, whether it's a java development tool or a web browser that can
run java applets, is and implementations of the java VM. The Java VM can also be implemented
in hardware.

Java byte code help make write once, run anywhere possible. You can compile your java
program into byte codes on any platform that has a java compiler. The byte codes and then be
run on any implementation of the java VM. For example, the same java program can run on
Windows NT, Solaris, and Macintosh.

The Java Platform

• A platform is the hardware or software environment in which a program runs. The java
platform differs from most other platforms I that it's software-only platform that runs on top of
other, hardware-based platforms. Most other platforms are described as a combination of
hardware and operating system.

• The Java platform has two components :

• The J ava Virtual Machine (Java VM).

• The Java Application Programming Interface (Java API).

• The java API is a lager collection of ready-made software Components that provide many
useful capabilities, such as graphical user interface (GUI) widgets. The Java API is grouped into
libraries ( packages ) of related components.

Why Java is important to the Internet

• The Internet helped catapult java to the forefront of programming, and Java, in turn, has had a
profound effect on the Internet. The reason for this is quite simple: Java expands the universe of
objects that can move about freely in cyberspace.

• In a network, two very broad categories of object are transmitted between the server and your
personal computer: passive and dynamic, active programs. For example, when you read your
email, you are viewing only passive data. Even when you download a program, the program's
code is still only passive data until you execute it. However, a second type of object can be
transmitted to your computer: a dynamic, self-executing program. Such a program is an active
agent on the client computer, yet it initiated by the sever. For example, a program might be
provided by the sever to display properly the data that the sever is sending.

63
• As desirable as dynamic, networked programs are, they also present serious problem in the
areas of security and portability. Prior to Java, cyberspace was effectively closed to half the
entities that now live there.

7.2 JSP

What is JSP?

Java Server Page (jsp) is a template for a Web page that uses Java code to generate an HTML
document dynamically. JSPs are run in a server-side component know as JSP container, which
translate them into equivalent Java Servlet. For this reason, Servlet and JSP pages are intimately
related. What's possible in one is, in large part, also possible in the other, although each
technology has its individual strengths.

Advantages:

• They have better performance and scalability than ordinary CGI scripts because they are
persistent in memory and multithreaded.

• No special client setup is required.

• They have built-in support for HTTP session, which makes application programming possible.

• They have full access to Java technology-network awareness, thread, and database
connectivity-without the limitation of client-side applets.

• They are automatically recompiled when necessary.

• Because they exist in the ordinary Web server document space, no special URL mapping is
required to address them.

• Because JSP pages are HTML-like, they have greater compatibility with Web development
tools.

How JSP Works

• JSP source code

64
This is the version the developer actually writes. It consists of a text file with an extension of
.jsp, and contains a mix of HTML template code, Java language statements, and JSP directives
and action that describe how to generate a Web page to service particular request.

• Java source code

The JSP container translates the JSP source code into the source code for an equivalent Java
Servlet as needed. This source code is typically saved in a work area and is often helpful for
debugging.

• Compile Java class

Like any other Java class, the generated servlet code is compiled into byte codes in a .class file,
ready to be loaded and executed.

JSP and Servlet

If you've worked with Java servlets, you know that servlets allow you to create dynamically-
generated web pages that include data from server-side Java objects. But you also know that the
servlet approach to generating web pages is to embed HTML tags and presentation code within a
Java class. This means that changes to presentation code requires modification and recompilation
of the servlet source file. Because web authors who design HTML pages may not be the same
folks as the developers who write servlet code, updating servlet-based web applications can be
an involved process.

While JSP pages mainly provide a higher-level method of creating servlets, they bring other
benefits as well. Even if you're already content writing servlets for web applications, there are
plenty advantages to using JSP:

• JSP pages easily combine static templates, including HTML or XML fragments, with
code that generates dynamic content.
• JSP pages are compiled dynamically into servlets when requested, so page authors can
easily make updates to presentation code. JSP pages can also be precompiled if desired.
• JSP tags for invoking JavaBeans components manage these components completely,
shielding the page author from the complexity of application logic. Developers can offer
customized JSP tag libraries that page author access using an XML-like syntax.
• Web authors can change and edit the fixed template portions of pages without affecting
the application logic. Similarly, developers can make logic changes at the component
level without editing the individual pages that use the logic.

JSP comparedto ASP

JSP and ASP are fairly similar in the functionality that they provide. JSP may have slightly
higher learning curve. Both allow embedded code in an HTML page, session variables and

65
database access and manipulation. Whereas ASP is mostly found on Microsoft platforms i.e. NT,
JSP can operate on any platform that conforms to the J2EE specification. JSP allow component
reuse by using JavaBeans and EJBs. ASP provides the use of COM / ActiveX controls.

7.3 Introduction to JDBC

JDBC is a Java API (Application Programming Interface) that documents a standard framework
for dealing with tabular and, generally, relational data. While JDBC 2.0 begins a move to make
SQL semi-transparent to the programmer, SQL is still the lingua franca of the standard database
engines and represents a major industry victory in the effort to separate data from code. Before
getting into the course proper, it's worth taking a few moments to provide sine background on the
movement form straight-ahead SQL to JDBC.

SQL

• SQL is a Standardized language used to Create, manipulate, examine, and manage relational
databases. This course will not extensively explain SQL, although a very basic SQL Resources
are provided.

• However, you should understand the following:

• A database is essentially a smart container for tables.

• A table is container comprise of rows.

• A row is (conceptually) a container comprised of columns.

• A column is a single data item having a name, type and value.

• While you should review the definitions and understand the important differences, initially you
can use the following analogs: A database approximates a file ; a row approximates a record or
structure; and a column approximates a field or variable. If these terms are unfamiliar, you
should review some programming resources, particularly in the area of Input/Output(I/O)
operations, before proceeding with the course.

• Because SQL is an application-specific language, a single statement can be very expressive


and can initiate high-level actions, such as sorting and merging, on as entire set of data. SQL was
standardized in 1992 so that a program could communicate with most database systems without
having to change the SQL commands. However, you must connect to a database before sending
SQL commands, and each database vendor has a different interface to do so, as we;; as dofferemt
extensions of SQL. Enter ODBC.

ODBC

• ODBC (Open Database Connectivity), a C-base interface to SQL-base database engines,


provides a consistent interface for communicating with a database and for accessing database

66
metadata (information about the database system vendor, how the data is stored, and so on).
Individual vendors provide specific drives or bridges to their particular database management
system. Consequently, thanks to ODBC and SQL, you can connect to a database and manipulate
it in a standard way. It is no surprise that, although ODBC began as a PC standard, it has become
nearly an industry standard.

• Although SQL is well-suited for manipulating databases, it was not designed to be a general
application language; rather, it was intended to be used only as a means of communicating with
databases. Another more general and complete programming language is needed to host and feed
SQL statements to a database and process results for data manipulation, visual display, or report
generation. Unfortunately, you cannot easily write a program that will run n multiple platforms,
even though the database connectivity standardization issue has been largely resolved. For
example, if you wrote a database client in C++, as a language is not portable because C++ is not
completely specified (for example, how many bits does an int hold ?. Second, and more
importantly, support libraries such as network access and GUI (Graphics User Interface)
frameworks are different on each platform. Enter the Java programming language and JDBC.

The Java TM Programming Language and JDBC

• A Java programming, written and according to specification can run on any Java technology-
enabled platform without recompilation. The java programming language is completely specified
and, by definition, a java technology-enabled platform must support a known core of libraries.
One such library is the java.sql package or JDBC, which you can think of as a portable version of
ODBC, and is itself a major standard. Using the Java programming language in conjunction with
JDBC provide a truly portable solution to writing database applications.

• A JDBC driver is a class that implements the JDBC Driver interface and understands how to
convert program (and typically SQL) requests for a particular database. Clearly, the driver is
what makes it all work. There are four different driver types, which are discussed in the JDK
(Java Development Kit) documentation at JDBC Driver Types. This course uses type 4 drivers
because of their nearly zero installation requirements and dynamic nature. Another driver type
may make more sense for your particular project. Most database vendors now provide drivers to
implements the JDBC API for their particular systems. These are generally provided free of
charge. Third party drivers are also available, ranging in cost from free to very expensive. For
links to JDBC driver resources, see Specific information and the other Resource.

The JDBC API

The JDBC API is expressed as series of abstract Java interfaces that allow an applications
programmer to open connections to particular database, execute SQL statements, and process the
result.

The most important interfaces are:

• Java.sql.DriverManager which handles loading of drivers and provides support for creating
new database connections.

67
• Java.sql.Connection which represents a connection to a particular database

• Java.sql.Statement which acts as a container for executing a SQL statement on a given


connection.

• Java.sql.ResulSet which controls access to the row results of a given Statement.

The java.sql.Statement interface has two important sub-types:

• Java.sql.PreparedStatement for executing a pre-compiled SQL statement, and

• Java.sql.CallableStatement for executing a call to a database stored procedure.

The JDBC Driver Interface

• For the most part the database driver simply needs to provide implementation of the abstract
classes provided by the JDBC API. Specifically, each driver must provider implementations of
java.sql.Connection, java.sql.Statement, and java.sql.ResultSet.

• In addition, each database driver needs to provide a class which implements the java.sql.Driver
interface used by the generic java.sql.DriverManager class when it needs to locate driver for a
particular database URL.

• Another useful driver is one that goes directly to a DBMS-independent network protocol to
allow multiple sever implementations, e.g. on top of ODBC or on specific DBMSs (although
there are already products that use a fixed protocol such as this, we are not yet trying to
standardize it). Only a few optimizations are needed on the client side, e.g. for schema caching
and topple look-ahead, and the JDBC Manager itself is very small and efficient as well. The net
result is a very small and fast all-java client side implementation that speaks to any severs
speaking the published protocol.

7.4 Java Script

• JavaScript is an easy-to-use programming language that can be embedded in the header of


your web pages. It can enhance the dynamics and interactive features of your page bye allowing
you to perform calculations, check forms, write interactive games, add special effects, customize
graphics selections, created security passwords and more.

• JavaScript is a lightweight object-base scripting language created by Netscape


Communications Corporations for developing Internet applications. JavaScript is lightweight in
that there isn't a great deal to learn and you can be productive with it very quickly, in contrast to
much more complex languages such as Java. As a scripting language, JavaScript is meant to tell
an application what to do. Unlike languages used to create applications, it cannot do anything
without the application.

68
• You can develop sever applications or client applications with JavaScript. In this book, the
term server refers to the computer where your web pages reside. The term client refers to the
browser application that loads and displays your web pages. This book focuses on teaching you
to create client application with JavaScript specifically, documents (Web pages) on the World
Wide Web.

• You can embed JavaScript statements in Web pages, which are written in HTML (Hypertext
Markup Language). JavaScript us abs extension to HTML that lets you create more sophisticated
Web pages that you ever could with HTML alone. To appreciate this, it helps to know a little
history.

What's the difference between JavaScript and Java?

• Actually, the 2 languages have almost nothing in common except for the name. Although Java
is technically an interpreted programming language, it is coded in a similar fashion to C++, with
separate header and class files, compiled together prior execution. It is powerful enough to write
major applications and insert then n a web page as a special object called an applet. Java has
been generating a lot of excitement because to its unique ability to run the same program o IBM,
Mac, and UNIX computer. Java is not considered an easy-to-use language for non-programmers.

• JavaScript is much simpler to use than Java. With JavaScript, if I want check a form for errors;
I just type an if-then statement at the top of my page. No compiling, no applets, just a simple
sequence.

Object and Properties

• Your web page document is an object. Any table, form, button, image, or link on your page is
also an object. Each object has certain properties (information about the object). For example,
the background color of your document is written document.bgcolor. You would change the
color of your page to red by writing the line: document.bcolor=red

• The contents (or value) of a textbox named password in a form named entryform is
document.entryform.password.value.

Methods

• Most object have a certain collection of things that they con do, Different object can do
different things, just as a door can open and close, while a light can turn on and off. A new
document is opened with the method document.open() You can write Hello World into a
document by typing document.write(Hello World). Open() and write() are both methods of the
object.document.

Events

• Events are how we trigger our functions to run. The easiest example is a button, whose
definition includes the words onClick=run_my_function(). The onClick event, as its name

69
implies, will run the function when the user click on the button. Other events include
OnMouseOver, OnMouseOut, OnFocus, OnBlur, OnLoad, and OnUnload.

7.5 About HTML

HTML (Hyper Text Markup Language) is a language used to create web pages.HTML is not a
compiled language and is directly interpreted by a Browser. It is basically a formatting language
and not a programming language.HTML documents are also called Web Pages.HTML comes
with special codes(tags) that can be embedded to format text and the text can be linked (called
hyper links) to other Web pages. Images, tables and lists can be included within the text.HTML
provides GUI environment for user's inputs.

The HTML terms are enclosed in angle brackets,< and > and such terms are called tags.HTML
tags tell the web browser how to format and organize the web pages, tags can be customized
using attributes. An attribute is a key word used in an opening tag to give more information to
the web browser. Everything in between starting

tag <> and ending tags</> make up HTML elements.HTML tags tell web browsers to find how
to format and organize the web pages.

Every HTML document has a rigid structure, prescribed by W3C that created HTML
DTD(Document Type Definition) .Every HTML document begins with a special tag <!
DOCTYPE> followed by <HTML> tag. This tag indicates that the top element of the document
is the <HTML> tag, and that the required DTD is public and the document is having HTML tags
of the specified version and also the language to be used.

HTML is a set of mark-up tags used to format text and include other data formats in hyper media
documents so that the web browser can interpret and display them.

7.6 Overview of SQL Server 2000

7.6.1 Introduction

Providing that data storage component is the role of Microsoft SQL Server 2000. With industry-
leading scalability, proven reliability, and unmatched ease of use, SQL Server 2000 can offer
numerous advantages and efficiencies to building your solutions.

. This new found status as an enterprise-class RDBMS, SQL Server 7.0 introduced numerous
application features that were originally outside the scope of a native database server. Features
such as Data Transformation Services (DTS) added native capabilities for importing and
exporting data with heterogeneous systems, a task once left to custom-built utilities. An online
analytical processing (OLAP) server engine opened the doors to data analysis capabilities once
reserved for large corporations that had the resources to build and perform these activities.
Smaller organization can use SQL Server 7.0 to take advantage of graphical wizards and
automated maintenance routines to set up and manage their SQL Server solutions. Every

70
organization can take advantage of the self-tuning capabilities that allow SQL Server to run at
optimal levels right out of the box.

Data and transaction log file auto grow features reduce the amount of monitoring necessary to
alleviate potential storage problems. Simplified setup of maintenance and backup tasks again
minimize the amount of administration necessary. Features such as

DTS replace and extend many of the custom import and export routines that I had developed and
continued to maintain. SQL Server 2000 offers a powerful list of feature enhancements both
inside and outside.

It is designed with Windows 2000 Server in mind; SQL Server 2000 is scalable up to four-way
clustering with support for up to 32 processors and 64GB of RAM. By any calculation, that is a
powerful server configuration. On the more common side of database applications,
enhancements in backup and recovery, DTS, and replication increase the usability and
functionality of what have become common components in many database solutions.

This latest release of OLAP services, renamed Analysis Services, is an obviously mature version
of Microsoft's first take at OLAP in SQL Server. Analysis Services provide greater integration
and capabilities than their predecessor and now add a data-mining component for trend discovery
in your data.

SQL Server 2000 is the first release with native support for HTTP and HTTPS protocols.
Accessing and querying your SQL Server and Analysis Server databases is possible using
standard Web protocols. Aside from Web protocol support, Extensible Markup Language (XML)
is at home in SQL Server 2000. The growing use of XML for nearly any imaginable application
means that SQL Server 2000 is ready to support this new wave of solutions. The increasing trend
of separating content from presentation in Web sites is much simpler with SQL Server's support
for storing, delivering, and manipulating XML data.

New and Enhanced Features of SQL Server 2000

• XML Support
• Meta Data Services
• Analysis Services
• OLAP Enhancements
• Data Mining

7.6.2 SQL Server 2000 Architecture

71
Relational Databases

Although there are numerous methods of storing information, the relational database model has
grown to be recognized as the most efficient data storage model. Relational databases are based
on the need to efficiently organize and store data. Data in a relational database are organized as
entities and stored in tables. Each table consists of attributes, which result in the columns that
make up a table. The process of identifying the primary data items or entities and efficiently
laying out these tables and their attributes is accomplished through a process called
normalization . The process of normalization works to reduce data redundancy and derivation,
producing efficiency in both storage and data management. By eliminating redundant and
derived data (data that are the result of other attributes), the physical storage requirements are
reduced. Additionally, the task of managing multiple copies of identical data as well as computed
or derived data is eliminated, resulting in a more accurate and manageable database. Complex
data items can be broken down into multiple tables to produce a normalized

database model, as shown in the example in Figure 4.2. This simple model depicts a portion of
an order-entry database. This collection of related tables makes up a relational database.

SQL Server supports the requirements of a RDBMS by providing the logical and physical
storage architecture that is needed. At the core of the logical storage architecture of SQL Server
2000 are databases, tables, and columns. The database represents the overall data grouping and is
the foundation of SQL Server applications. Tables store individual data entities and consist of
columns (attributes) that store the actual data item values. Beyond the base components are
several higher-level database items, commonly referred to as database objects, such as views,
triggers, indexes, keys, defaults, constraints, stored procedures, user-defined data types, and user-
defined functions. Each of these objects plays a particular role in controlling the integrity of the
data or effectively delivering it for application use.

72
The following list outlines each of the components of a relational database solution in SQL
Server 2000:

Database The database is the primary object and contains all the remaining database objects,
such as tables, views, and the like.

Table Each table represents a data item or entity. Tables are typically logical data containers,
such as a customer table or an order table in an order-entry database solution.

Column A column is a property of a table and represents an attribute or data item about the
table.

View A view is often called a virtual table and is typically used to combine several tables in to a
meaningful representation of the data. Views do not physically store the data; rather, they
provide a combined presentation of the underlying tables.

Trigger Triggers are routines or stored procedures that execute automatically when an INSERT,
UPDATE, or DELETE action occurs against a table. Triggers are often used to enforce business
rules in a database application. For example, a trigger could send an e-mail message when the
Orders table receives new data.

Index An index relates to a table and speeds the retrieval of data from the table by providing a
representation of the data that is more efficient for locating the requested information.

Key A key is a property of a table and is one or more columns that uniquely identify each record
or row in the table.

Default A default specifies the value of a column during an insert if an explicit value is not
supplied.

Constraint Constraints specify the valid values for a specific column and are commonly used to
enforce integrity rules.

Stored procedure A stored procedure is a predefined group of Transact-SQL statements that is


commonly used as a routine to manipulate or perform complex filter operations in order to
retrieve specific data.

User-defined data type a user-defined data type, or UDT, is used to enforce exact data types
across multiple tables and is based on a standard data type for example, a Social Security number
(SSN) data type that represents an 11- character (nnn-nn-nnnn) data type.

User-defined function a user-defined function is a reusable logic set that can be called to
perform set actions and return a given result. User-defined functions are similar to stored
procedures except that they can return data type results, allowing them to be used in line with T-
SQL statements.

73
7.6.3 SQL Server System Databases

Master

The Master database is the primary configuration database in SQL Server. It contains
information on all the databases that exist on the server, including the physical database files and
their locations. The Master database also contains SQL Server's configuration settings and login
account information.

The following list outlines the information contained in the master database:

Server Registrations and Remote Logins

Local Databases and Database Files

Login Accounts

Processes and Locks

Server Configuration Settings

Given its importance to SQL Server, a current backup of the Master database is critical to any
server recovery. The installation process creates the Master database (master.mdf) and master
database log file (mastlog.ldf) in the Program Files\Microsoft SQL Server\Mssql\Data directory.
In the event that your Master database is corrupted or destroyed and cannot be restored from
backups, you can rebuild the Master database to its default state. Microsoft provides a utility
named rebuildm.exe that is located in the Program Files\Microsoft SQL Server\ 80\Tools\Binn
subdirectory.

SQL Server Services

As with many applications designed to run on Windows NT and 2000, SQL Server incorporates
five application services to manage its databases and complete its tasks. These services are
similar to other services in Windows NT and 2000 and operate independently of any local users,
allowing SQL Server to operate without user interaction. The five services are SQL Server
service, SQL Server Agent service, MSSQLServerADHelper service, Microsoft Distributed
Transaction Coordinator (MSDTC) service, and Microsoft Search Service. Each of these services
is a component of the application responsible for receiving instructions, performing its tasks, and
returning desired results as necessary. If you have installed the Analysis Services component of
SQL Server, an additional service, MSSQLServerOLAPService, is installed.

Creating SQL Server Databases

74
As you would expect, before you can begin to physically lay out your database in SQL Server,
you must design and plan your database solution. Planning your database is essential to its initial
configuration and its future maintenance.

There are four steps to delivering your basic database solution:

1. Design your database solution.

2. Design the physical database.

3. Create the database.

4. Monitor and maintain the database

7.6.4 Database Security

Granting Access to Databases

Logins to SQL Server do not specify the databases to which an individual has access. Rather,
logins merely let the individual connect to SQL Server. For an individual to be able to connect to
a database, he or she needs to have a user account created for login in the database to which the
user wants access. When creating a user account in a database, you specify the login that maps to
that user account. If you want all logins to have access to a given database, you can create a
guest user account in the database. This allows any person with login access to SQL Server to
gain entry to the database. You can see the use of the guest account in the Master, MSDB,
TempDB, Pubs, and Northwind databases. There are a couple of things to consider with user
accounts. First, user accounts map to logins. A login can be one of many things. A single login
could be a standard SQL login, a Windows user account that has been granted login access, or a
Windows group account that has been granted access. If the login is a standard login or a
Windows user account, there is a one-to-one relationship between the numbers of people
represented by a given login and thus the number of people who access a database as a given
user account. If the SQL login is a Windows group account that has been granted login access,
however, the situation is different. The Windows group account represents any number of
Windows users. The login that grants the Windows group access to SQL Server then maps to a
single user account in the database. The end result is that a large number of Windows users are
represented by a single user account in the database. That works great because you have to set up
only one user account and one set of permissions and rights.

75
76
• Requirement of Tools:

This application is mounted on the Internet, to user has to make sure that the machine, which he
is using, is connected to Internet through Lease Line, Telephone line or Cable.

Also, Microsoft Internet Explorer 4.0 and above or Netscape Navigator 4.74 and above must be
installed on the machine.

• How to use the application:

To use the application the user has to give the URL www.bonrix.net into the address bar of the
browser and press the Enter key. Then, user gets the homepage of the portal.

• Navigation from the Home page:

The links from the home page are as follows

• Registration :

The new users can get registered opening the dynamic page for registration. The users have to
just click on the link given for registration on the home page. The user have to enter name, e-
mail address ( which can be used as the login id ), password, postal address and few more.

• Login :

The user has to click on the login link to open the login page through which the user can login
giving the user-id and password.

• About us :

User can get the complete information of the Bonrix Software Systems. Also the user can get the
information about the activities carried at Bonrix Software Systems.

• Contact us :

77
User when clicks on this link he will be availed with the information to contact Bonrix Software
Systems.

• Advanced Search :

When user clicks on this link the page for search is opened with the help of which user can make
advanced search. The user can the preferences for purchasing the product or for carrying out the
search. The search can be made category wise like search for software, hardware, services or any
other option. Also if the user wants to purchase a product within the range of price then he has to
mention the range for price that he\she can afford for the desired product and finally click on the
search button.

• Products :

User can click on this link to get the listing of the products and the detailed description of how to
get them.

• Services :

User can get the information of the services provided by the Bonrix Software System such as
network installation, software installation, network troubleshooting, and software maintenance.

• Forget Password :

If the user has forgotten the password for login then user have to click on the Forget Password
link and another page is opened through which user can get his password through e-mail after
he\she enter e-mail address on which he wants the password to be sent and the birth date. Finally
the user has to click on the send password button and the users who have forgotten the password
can get it through an e-mail.

• Purchase product :

When user clicks on the products link on the home page new page is opened which contains the
list of the products and after clicking on one of the product link will give the detailed information
of the product selected by the user at the same time it also gives the facility of buying the product
beside the listing of products. Further clicking on the pay now button will open the page through
which the user have different options for the payment mode such as cheque, demand draft, credit
cards, debit cards. The process of purchasing gets finished when use clicks on the finish button.

78
The module such as

• Online license Management.

79
• Download Software.

• User can print his voucher.

80
81
We feel a deep sense of pleasure of submitting this report for person like us who were exposed
only to the four walls of the classroom & two sides of a page of our prescribed textbook, training
was something new and unexplored experience, we would like to take opportunity to thank
Bonrix Software Systems for providing us with this challenging project & resources.

We want to thank specially to Dr. N. N. Jani (H.O.D of Computer Department) for cooperate
us during our training session.

We would like to express our deepest gratitude to Mr. Renish Ladani Project Coordinator this
valuable guidance. It is only with his guidance that we could take up such a large-scale project.
We are very thankful to the staff members of Bonrix Software Systems who helped us during the
project.

We are gratified for the successful completion of our project at last we would like to convey
thanks to all our friends who gave their full support and encouraged us during the project.

Jayesh J. Sisodiya

Jasmin K. Bavaria

82
Java Books

1.The Complete Reference Java 2

By Herbert Schildt,

TATA McGRAW-HILL EDITION

83
2. JAVA 2 Unleased

First Edition,

Jamie Jaworski,

G. C. Jain for Tech Media.

JSP

• The Complete Reference Java JSP 2.0

By Phil Hanna

TATA McGRAW-HILL EDITION

Websites

1. www.amazon.com
2. www.ebay.com
3. www.shopping.com
4. www.apache.org
5. www.java.sun.com
6. www.google.com
7. www.javaworld.com

84
This is online shopping system that allows purchasing the products of Bonrix Software System
on web. The product includes Software, Hardware and Services. Administrator can add the

85
product, add the shipping charges and also add the tax of the products. Administrators view the
product list, view the pending orders, view the pending shipping orders, and also view the order
detail of the product. Administrator can generate the voucher of the client. If the user is
registered then he/she can login and can purchase any product and pay online.

86

Você também pode gostar