Professional Documents
Culture Documents
Abstract
E-Classified is a web application which is dealing with various
advertisement submitted by the admin of the website or by the
customers. There are two types of customers here one who is the
owner and the second who wants the details or the guest. The
owner has to register the information into the site and after
becoming a member he/she can post the advertisements in the site.
The advertisement can also be posted by the admin of the website.
The guest can also send a feedback to the admin of the site and
also send feedback to the owner of the item. If any item he/she
wants to purchase guest can also purchase online or can order.
Customer can also search for the job and apply online. They can
choose any course and send a request to the institutions for
learning or can apply for online examination.
2.2 Scope
It is very difficult to the user to find out the details of the item at
what time they require in the city. This classified contains all details regarding all
types of advertisement from real estate to matrimony and from news paper to
news channels. With a short period of time we can fulfill all our requirements and
can buy or purchase the products.
We can also post our ads and can purchase the existing or we can search
for any item. This site also includes the coaching classes, jobs, loan/finance.
2.3Goals
The main aim of this project was to make online business and to make customers
easy puschase or buy.
This project is useful to customers when he was busy and want to purchase any
classifieds though online.
The Admin can have Benefit so that he can earn easily without strain.
Retain more visitors ,Interest, traffic and adds more interaction to the
website
Creates new potential revenue streams
Provides automated way to allow users to develop content for your site
Allows quicker time to market
Delivers advanced technical capabilities
Delivers cost savings associated with end-to-end automated web-based
processes
Requires no commissions or ad revenue sharing fees
Scales to millions of classified ads
Provides immediate access to products with years of research and
development experience.
3.3Overall description
3.3.1Product Perspective:
o Add Classified
o Buy/Purchase
o Search for Item
o Post Ads
o Make Payment
E-Classified makes it possible that all the customer of the site can search for
any ad and can get the information with in a short period of time without wasting
the time on different websites. The website has many users such as admin, owner
and customers.
This project will be developed using the technologies like Java, JSP,
Servlets, HTML, CSS, Javascript, Oracle and Web for all which I need to fetch
knowledge on all of them in order to code for the project. Also I’ll be learning
clearly about Software Development Life Cycle.
This software is to be used in a server so that the all members, admin and
users can get the information of accounts. Every member should have their user
id and password. Administrator should have all the rights to remove or add
anything. Each user should be visible to the Administrator. Low End users should
not be able to access the accounts of other users.
Owner
Register Ads
Modify the Ads
Delete the Ads
View Customer Request
Collect Payment
Customer
Search Ads
Request an Item
Edit Profile
Transaction
Buy/Purchase Product
Book Ticket
Reservation
Admin
In this module the admin will response for the request from owner for
adding classifieds and post Ads to the Customers. Payment from the
customer will be taken from customer and gives to the owner on
percentage discussed. Delete the classifieds which are bought.
Owner
In this module the owner keeps request to the admin for account and for
post Ads for classifieds.Takes the Percentage discussed from Admin.
Customer
In this module customer will select the Classifieds and put request for
admin to buy and pays money in online.
Transaction
In this module customer buy or purchase the classifieds.books the
ticket.For reservation will be available here.
The next step in analysis is to verify the feasibility of the proposed system. “All
projects are feasible given unlimited resources and infinite time“. But in reality
both resources and time are scarce. Project should confirm to time bounce and
should be optimal in there consumption of resources. This places a constant are
approval of any project.
Technical feasibility
Operational feasibility
Economical feasibility
3.5.1 TECHNICAL FEASIBILITY:
is technically feasible.
We use JAVA, JSP’s and servlets for coding the project. HTML for creating
the web pages, using GUI for login screens and interacting with database. MS-
Access is used for creating the local and global database (server). Net Beans IDE
for writing the programs. We need a good operating environment such as Windows
XP, Linux etc.
3GHz Processor
2GHz Processor
INTRODUCTION TO JAVA:
In the early days of the web, a server could dynamically construct a page by
creating a separate process to handle each client request. The process would
open connection to one or more databases in order to obtain the necessary
information. It communicated with the web server via an interface known as the
Common Gateway Interface (CGI) .CGI allowed the separate process to read data
from HTTP request and write data to the HTTP response. A variety of different
languages were used to build CGI programs including C, C++ and Perl.
Java Beans, which are software components that are written in Java.
Serialization, which allows you to save and restore the state of an
object.
Remote Method Invocation, which allows a Java, objects to invoke
the methods of another Java object that located on a different machine.
This is an important facility for building distributed applications.
Java Database Connectivity (JDBC), which allows programs to access
SQL, databases from many different vendors.
The Java Native Interface (JNI), which provides a new way for your
programs to interface with code libraries written in other languages.
Reflection, which is a process of determining the fields, constructors
and methods of a java object at run time.
The key that allows java to solve both the security and the portability
problems just described is that, the output of the java compiler is not an
executable code. Rather, it is Byte Code. Byte Code is a highly optimized set
of instructions designed to be executed by virtual machine that the java
Run-time system emulates. However, the fact that a java program is
interpreted helps solve the major problems associated with downloading
the program over the Internet.
Simple
Portable
Object-oriented
Robust
Multithreaded
Architectural-neutral
High performance
Distributed
Dynamic
each function has a clearly defined purpose and a clearly defined interface
to the other functions in the program.
The idea of breaking a program into functions can be further extended by
grouping a number of functions together into a larger entity called a
module, but the principle is similar: grouping a number of components that
carry out specific tasks.
1.1.1.1.1.1.3.1.4 Classes
In OOP we say that objects are members of classes. What does this
mean? Let’s look at an analogy. Almost all computer languages have built-
in data types. For instance, a data type int, meaning integer is pre-defined
in Java. You can declare as many variables of type int as you need in your
program:
Int day;
Int count;
Int divisor;
Int answer;
A class serves as a plan, or template. It specifies what data, and what
functions will be included in objects of that class. Defining the class doesn’t
create any objects, just as the mere existence of a type int doesn’t create any
variables.
1.1.1.1.1.1.3.1.5 Abstraction
An essential element of object-oriented programming is abstraction.
Humans manage complexity through abstraction. For example, people do
not think of a car as a set of tens of thousands of individual parts. They
think of it as a well-defined object with its own unique behavior. This
abstraction allows people to use a car to drive to the grocery store without
being overwhelmed by the complexity of the parts that form the car. They
can ignore the details of how the engine, transmission, and braking systems
work. Instead they are free to utilize the object as a whole. A powerful way
to manage abstraction is through the use of hierarchical classifications.
This allows you to layer the semantics of complex systems, breaking them
into more manageable pieces. From the outside, the car is a single object.
Once inside, you see that the car consists of several subsystems: steering,
brakes, sound system, seat belts, heating, cellular phone, and so on. In
turn, each of these subsystems is made up of more specialized units. The
point is that you manage the complexity of the car(or any other complex
system) through the use of hierarchical abstractions.
Object-oriented concepts form the heart of Java just as they form the basis
for human understanding. It is important that you understand how these
concepts translate into programs. As you will see, object-oriented
programming is a powerful and natural paradigm for creating programs
that survive the inevitable changes accompanying the life cycle of any
major software project, including conception, growth, and aging. .
1.1.1.1.1.1.3.2 Encapsulation
Encapsulation is the process of binding the code and the data, thus
providing security from the outside interface. The other way of defining
encapsulation is by providing the code and data with a protective wrapper,
thus preventing them from being accessed by the code present outside the
wrapper. Access to the code and data inside the wrapper is tightly
controlled through a well defined interface. In Java the basis of
encapsulation is the class. A class defines the structure and behavior (data
and code) that will be shared by a set of objects. Each object of a given
class contains the structure and behavior defined by the class. For this
reason, objects are sometimes referred to as instances of a class. Thus, a
class is a logical construct; an object has physical reality.
Therefore, any other code that is not a member of the class cannot access a
private method or variable. Since the private members of a class may only
be accessed by other parts of your program through the class’ public
methods, you can ensure that no improper actions take place. Of course,
this means that the public interface should be carefully designed not to
expose too much of the inner workings of a class.
1.1.1.1.1.1.3.2.1 Inheritance
Inheritance is the process by which one object acquires the
properties of another object. This is important because it supports the
concept of hierarchical classification. As mentioned earlier, most
knowledge is made manageable by hierarchical (that is, top-down)
classifications. For example, a Golden Retriever is part of the classification
dog, which in turn is part of the mammal class, which is under the larger
class animal. Without the use of hierarchies, each object would need to
define all of its characteristics explicitly. However, by use of inheritance, an
object need only define those qualities that make it unique within its class.
It can inherit its general
attributes from its parent. Thus, it is the inheritance mechanism that makes
it possible for one object to be a specific instance of a more general case.
Most people naturally view the world as made up of objects that are related
to each other in a hierarchical way, such as animals, mammals, and dogs. If
you wanted to describe animals in an abstract way, you would say they have
some attributes, such as size, intelligence, and type of skeletal system.
Animals also have certain behavioral aspects; they hear, breathe, and sleep.
This description of attributes and behavior is the class definition for animals.
Since mammals are simply more precisely specified animals, they inherit all
of the attributes from animals. A deeply inherited subclass inherits all of
the attributes from each of its ancestors in the class hierarchy.
1.1.1.1.1.1.3.2.2 Polymorphism
Polymorphism (from the Greek, meaning “many forms”) is a feature
that allows one interface to be used for a general class of actions. The
specific action is determined by the exact nature of the situation. Consider
a stack (which is a last-in, first-out list). You might have a program that
requires three types of stack. One stack is used for integer values, one for
floating-point values, and one for characters. The algorithm that
implements each stack is the same, even though the data being stored
differs. In a non-object-oriented language, you would be required to create
three difference sets of stack routines, with each set using different names.
However, because of polymorphism, in Java you can specify a general set of
stack routines that all share the same names.
Struts Framework
This page will give you a short overview of Struts Framework and its main
components. After finishing reading this, continue on to the tutorial to create a
simple Struts-based Web application.
Architecture Overview
All incoming requests are intercepted by the Struts servlet controller. The Struts
Configuration file struts-config.xml is used by the controller to determine the
routing of the flow. This flows consists of an alternation between two transitions:
From View to Action A user clicks on a link or submits a form on an HTML or JSP page. The co
for this request, and forwards it to an action. The action in turn calls a M
From Action to View After the call to an underlying function or service returns to the action c
layer and a page is displayed in a web browser.
The diagram below describes the flow in more detail:
The Controller
This receives all incoming requests. Its primary function is the mapping of a
request URI to an action class selecting the proper application module. It's
provided by the framework.
The struts-config.xml File
This file contains all of the routing and configuration information for the Struts
application. This XML file needs to be in the WEB-INF directory of the application.
Action Classes
It's the developer's responsibility to create these classes. They act as bridges
between user-invoked URIs and business services. Actions process a request and
return an ActionForward object that identifies the next component to invoke.
They're part of the Controller layer, not the Model layer.
View Resources
View resources consist of Java Server Pages, HTML pages, JavaScript and
Stylesheet files, Resource bundles, JavaBeans, and Struts JSP tags.
ActionForms
These greatly simplify user form validation by capturing user data from the HTTP
request. They act as a "firewall" between forms (Web pages) and the application
(actions). These components allow the validation of user input before proceeding
to an Action. If the input is invalid, a page with an error can be displayed.
Model Components
The Struts Framework has no built-in support for the Model layer. Struts supports
any model components:
JavaBeans
EJB
CORBA
JDO
any other
6.0. SOFTWARE DESIGN
ADD DELETE
OWNERCUSTOMER
- Admin
Take payment and give to
C customer
F
Pay the money
I
transaction Buy/Purchase
E Product
Book Ticket
D
Reservation
S
Sequence diagram
ADMIN OWNER
Loginid Loginid
Password Password
addCategory() addClassfied()
addClassfied() viewCustomer()
viewCustomer() collectPayment()
viewOwners() feedback()
DATABASE
makePayment()
collectPayment()
feedback()
getRequest()
getResponse()
CUSTOMER
Loginid
Password
viewProducts()
editProfile()
changePassword()
selectProduct()
onlinePurchase()
feedback()
Usecase diagram
Rentals
Home Services
E-Classified
Business
ADMIN
Car/Bike
Travel
Login
Login
Computer/Mobiles
CUSTOMER
Loan/Finance
Matrimony
Coaching
OWNER 6.3
Buy/Sell
DFD Design.
E-Classified
System
View status
Owner/
Customers
Post add
Owner
E-Classified
view demand
System
Customers/Admin
1) O level: for Customer
Customer
view add
E-Classified
System
purchase
admin
Level 1:
1 Advertisement
2 Advertisement
D1 Advertisement
2.1 2.2
Owner admin
post add store
post
D1 Advertisement
3 Order
D1 Order
6.4 DB Design
Home page
EG:
a. Functionality Name:
Explanation: The below code prints 10 numbers
8.0. TESTING
White box testing is a testing case design method that uses the control
structure of the procedure design to derive test cases. All independents path in a
module are exercised at least once, all logical decisions are exercised at once,
execute all loops at boundaries and within their operational bounds exercise
internal data structure to ensure their validity. Here the customer is given three
chances to enter a valid choice out of the given menu. After which the control
exits the current menu.
Black Box Testing
Unit Testing:
All the tested modules are combined into sub systems, which are then
tested. The goal is to see if the modules are properly integrated, and the
emphasis being on the testing interfaces between the modules. In the
generic code integration testing is done mainly on table creation module and
insertion module.
Validation Testing
TEST CASE 1:
TEST CASE 2:
When a user enters user id to register and ID already exists, then this result in
displaying error message “USER ID ALREADY EXISTS”.
TEST CASE 3 :
When the old password does not match with the new password, then this results
in displaying an error message as “OLD PASSWORD DOES NOT MATCH WITH THE
NEW PASSWORD”.
Test case for Forget Password:
When a user forgets his password he is asked to enter Login name, ZIP code,
Mobile number. If these are matched with the already stored ones then user will
get his Original password.
9 Deploying
Click on new tab and then on import so that for importing your whole project in
to eclipse IDE
Click on existing projects into work space and then on next.
Check the project where is was placed and then click on it and click ok and then
on finish
9.0. CONCLUSION
This project is useful to customers when he was busy and want to purchase
any classifieds though online.This project is benefit to owner so that his project is
advertised globally.The Admin can have Benefit so that he can earn easily without
strain.
References:
EG:
H.E. Gruber & J. J. Vonèche [Eds.], The Essential Piaget, Basic Books, 1977
[2] Computing Curricula 2001, The Joint Task Force on Computing Curricula,
[3] IEEE Std. 829-1998 IEEE Standard for Software Test Documentation
[4] IEEE Std. 830-1998 IEEE Recommended Practice for Software Requirements
Specifications
[5] IEEE Std. 1008-1997 IEEE Standard for Software Unit Testing
[6] IEEE Std. 1012-1998 IEEE Standard for Software Verification and Validation
[7] IEEE Std. 1016-1998 IEEE Recommended Practice for Software Design
Descriptions
[8] IEEE Std 1058-1998 IEEE Standard for Software Project Management Plans
[9] IEEE Std 1540-2001 IEEE Standard for Software Life Cycle Processes – Risk
Management