Online Shopping
Short Description
online shopping...
Description
CHAPTER 1 INTRODUCTION 1.1 OVERVIEW OF ONLINE SHOPPING ONLINE SHOPPING is a web-based application Software Developed in IMB WEBSPHERE using JSP as front end on Pentium machine. The main aim of Online Shopping is to improve the services of Customers and vendors. It maintains the details of customer payments, product receipts, addition of new customers, products and also updating, deletion for the same. It also stores the details of invoices generated by customer and payments made by them with all Payments details like credit card. The primary features of online shopping are high accuracy, design flexibility and easy availability. It uses database tables representing entities and relationships between entities.
1.2 OBJECTIVE OF ONLINE SHOPPING The system is capable of maintaining details of various customers, vendors, Products and storing all the day to day transactions such as generation of shipment address bills, handling customers and product receipts, updating of stores The central concept of the application is to allow the customer to shop virtually using the Internet and allow customers to buy the items and articles of their desire from the store. The information pertaining to the products are stores on an RDBMS at the server side (store). The Server process the customers and the items are shipped to the address submitted by them.
1
The application was designed into two modules 1. Buy module 2. Database module
The Buy module is used for the customers who wish to buy the articles. The database module is for the storekeepers who maintains and updates the information pertaining to the articles and those of the customers.
The end user of this product is a departmental store where the application is hosted on the web and the administrator maintains the database. The application which is deployed at the customer database, the details of the items are brought forward from the database for the customer view based on the selection through the menu and the database of all the products are updated at the end of each transaction.
Data entry into the application can be done through various screens designed for various levels of users. Once the authorized personnel feed the relevant data into the system, several reports could be generated as per the security.
2
CHAPTER 2 LITERATURE REVIEW
2.1 EXISTING SYSTEM eBay Inc. is an American Internet company that manages eBay.com, an online auction and shopping website in which people and businesses buy and sell a broad variety of goods and services worldwide. Founded in 1995, eBay is one of the notable success stories of the dot-com bubble; it is now a multi-billion dollar business with operations localized in over thirty countries.
eBay.com offers several types of auctions:
a) Auction-style listings allow the seller to offer one or more items for sale for a specified number of days. The seller can establish a reserve price.
b) Fixed price format allows the seller to offer one or more items for sale at a Buy It Now price. Buyers who agree to pay that price win the auction immediately without submitting a bid.
3
2.2 PROPOSED SYSTEM Shop online: Shop online is an online shopping application, which provides the online shopping facility available for everyone. Any type of the product will be available for the customer, and it can be easily purchased faster when compair with ebay. Shop online application concentrates more on user friendly interfaces and promotes users to purchase faster and easier. There is a facility available to do online purchase. Shop online have registration facility. This will enable the new user to sign in and use the product much effectively. The registration process is faster and easier compaired to any existing application. In the User interface of Shop online there will be accomplished with options to find new products available and most purchased and customer satisfied products. Customer can avail this facility and buy the product faster. All products in the website will be highlighted with the image of the product. By click on the image it will take you directly to the buy page, from where customer can purchase easily. Shop online is provided with customer support page. Using this page any customer can get the assistance from the available customer support executive online. There we have Support over phone, email and chat. Customer can use this facility any time. As security issue pays major importance today, extra attention towards security is done in Shop online application. We incorporate digital signature technique to ensure much effective security for the customer. Digital signature will provide the secure data transactions and also during money transaction for purchase.
4
2.3 DIGITAL SIGNATURE A digital signature is a type of asymmetric cryptography used to simulate the security properties of a handwritten signature on paper. Digital signature schemes consist of at least three algorithms: a key generation algorithm, a signature algorithm, and a verification algorithm. A signature provides authentication of a "message". Messages may be anything, from electronic mail to a contract, or even a message sent in a more complicated cryptographic protocol. Digital signatures are often used to implement electronic signatures, a broader term that refers to any electronic data that carries the intent of a signature, but not all electronic signatures use digital signatures. In some countries, including the and in the electronic signatures have legal significance. However, laws concerning electronic signatures do not always make clear their applicability towards cryptographic digital signatures, leaving their legal importance somewhat unspecified. A digital signature scheme typically consists of three algorithms: A key generation algorithm that selects a private key uniformly at random from a set of possible private keys. The algorithm outputs the private key and a corresponding public key. A signing algorithm which, given a message and a private key, produces a signature.
5
A signature verifying algorithm which given a message, public key and a signature, either accepts or rejects. Two main properties are required. First, a signature generated from a fixed message and fixed private key should verify on that message and the corresponding public key. Secondly, it should be computationally infeasible to generate a valid signature for a party who does not possess the private key. The purpose of a digital signature is the same as your handwritten signature. Instead of using pen and paper, a digital signature uses digital keys (public-key cryptology). Like the pen and paper method, a digital signature attaches the identity of the signer to the document and records a binding commitment to the document. Unlike a handwritten signature, It is considered impossible to forge a digital signature the way a written signature might be. The real value is in avoiding the paper and keeping your data electronic for a variety of reasons: save paper, send documents quickly via email, you can have multiple/exact copies and easier to manage the storage. To use digital signature software requires some initial setup: you will need a signing certificate. If in your business you commonly sign documents or need to verify the authenticity of documents, then digital signatures can help you save time and paper-handling costs. The DigiStamp web site and software is designed to help you with the process and allow you to take advantage of the convenience and power of digital signatures. The digital signature software is provided at this web site for you to install and use. You will need to get your personal signing certificate. Creating your certificate involves creating a public-private digital key pair and a Certificate Authority. The 6
private key is something you keep only to yourself. You sign a document with your private key. Then, you give your public key to anyone who wants to verify your signature. The process of creating your public-private key pair is easy and quick; we will help you with process. Public Keys. The public key certificate creates proof of the identity of the signer by using the services of a certificate authority. A certificate authority uses a variety of processes to associate the particular public key with an individual. You give your public key to anyone who wants to verify your signature. The combination of your public key and proof of identity result in a public key certificate - also called a signer's certificate. Private Keys. The private key is something you keep only to yourself. You sign a document with your private key. The public and private keys are related mathematically. Knowing the public key allows a signature to be verified but does not allow new signatures to be created. If your private key is not kept “private,” then someone could maliciously create your signature on a document without your consent. It is critical to keep your private key secret. There are several reasons to sign such a hash (or message digest) instead of the whole document.
For efficiency: The signature will be much shorter and thus save time since hashing is generally much faster than signing in practice.
7
For compatibility: Messages are typically bit strings, but some signature schemes operate on other domains (such as, in the case of RSA, numbers modulo a composite number N). A hash function can be used to convert an arbitrary input into the proper format.
For integrity: Without the hash function, the text "to be signed" may have to be split (separated) in blocks small enough for the signature scheme to act on them directly. However, the receiver of the signed blocks is not able to recognize if all the blocks are present and in the appropriate order. 2.3.1 BENEFITS OF DIGITAL SIGNATURE Below are some common reasons for applying a digital signature to communications: 2.3.1.1 Authentication: Although messages may often include information about the entity sending a message, that information may not be accurate. Digital signatures can be used to authenticate the source of messages. When ownership of a digital signature secret key is bound to a specific user, a valid signature shows that the message was sent by that user. The importance of high confidence in sender authenticity is especially obvious in a financial context. For example, suppose a bank's branch office sends instructions to the central office requesting a change in the balance of an account. If the central office is not convinced that such a message is truly sent from an authorized source, acting on such a request could be a grave mistake.
8
2.3.1.2 Integrity: In many scenarios, the sender and receiver of a message may have a need for confidence that the message has not been altered during transmission. Although encryption hides the contents of a message, it may be possible to change an encrypted message without understanding it. (Some encryption algorithms, known as nonmalleable ones, prevent this, but others do not.) However, if a message is digitally signed, any change in the message will invalidate the signature. Furthermore, there is no efficient way to modify a message and its signature to produce a new message with a valid signature, because this is still considered to be computationally infeasible by most cryptographic hash functions.
9
CHAPTER 3 DEVELOPMENT ENVIRONMENT 3.1 IBM WebSphere Application Server IBM WebSphere Application Server (WAS), a software application server, is the flagship product within IBM's WebSphere brand. WAS is built using open standards such as Java EE, XML, and Web Services. It is supported on the following platforms: Windows, AIX, Linux, Solaris, i/OS and z/OS. Beginning with Version 6.1 and now into Version 7, the open standard specifications are aligned and common across all the platforms. Platform exploitation, to the extent it takes place, is done below the open standard specification line. It works with a number of Web servers including Apache HTTP Server, Netscape Enterprise Server, Microsoft Internet Information Services (IIS), IBM HTTP Server for i5/OS, IBM HTTP Server for z/OS, and IBM HTTP Server for AIX/Linux/Microsoft Windows/Solaris. It uses 9060 port for connection as the default. 3.2 WebSphere Extended Deployment WebSphere Application Server V6 Extended Deployment Edition (WebSphere XD) was released in 2006 as an add-on for WebSphere 6. XD provides advanced features for both administrators who manage multiple Java EEbased applications and developers building advanced applications that require asymmetric clustering techniques. It also has a number of technologies to significantly increase the performance of running applications, including an inmemory database cache and a highly advanced load balancer called the on demand router. 10
3.3 Security The WebSphere Application Server security model is based on the services provided in the operating system and the Java EE security model. WebSphere Application Server provides implementations of user authentication and authorization mechanisms providing support for various user registries:
Local operating system user registry
LDAP user registry
Federated user registry (as of version 6.1)
Custom user registry
The authentication mechanisms supported by WebSphere are
Lightweight Third Party Authentication (LTPA)
3.4 IBM DB2 DB2 can be administered from either the command-line or a GUI. The command-line interface requires more knowledge of the product but can be more easily scripted and automated. The GUI is a multi-platform Java client that contains a variety of wizards suitable for novice users. DB2 supports both SQL and XQuery. DB2 has native implementation of XML data storage, where XML data is stored as XML (not as relational data or CLOB data) for faster access using XQuery. DB2 has APIs for REXX, PL/I, COBOL, RPG, FORTRAN, C++, C, Delphi, .NET CLI, Java, Python, Perl, PHP, Ruby, and many other programming languages. DB2 also supports integration into the Eclipse and Visual Studio .NET integrated development environments. 11
3.5 ERROR PROCESSING An important feature of DB2 computer programs is error handling. The SQL communications area (SQLCA) structure was once used exclusively within a DB2 program to return error information to the application program after every SQL statement was executed. The primary, but not singularly useful, error diagnostic is held in the field SQLCODE within the SQLCA block. The SQL return code values are:
0 means successful execution.
A positive number means successful execution with one or more warnings. An example is +100 which means no rows found.
A negative number means unsuccessful with an error. An example is -911 which means a lock timeout (or deadlock) has occurred, triggering a rollback.
Later versions of DB2 added functionality and complexity to the execution of SQL. Multiple errors or warnings could be returned by the execution of an SQL statement; it may, for example, have initiated a Database Trigger and other SQL statements. Instead of the original SQLCA, error information should now be retrieved by successive executions of a GET DIAGNOSTICS statement.See SQL return codes for a more comprehensive list of common SQLCODEs.
12
CHAPTER 4 DESIGN ARCHETECTURE 4.1 SYSTEM DESIGN In order to design a web site, the relational database must be designed first. Conceptual design can be divided into two parts: 1. Data model 2. Process model.
4.1.1 Data model The data model focuses on what data should be stored in the database while the process model deals with how the data is processed. To put this in the context of the relational database, the data model is used to design the relational tables.
4.1.2 Process model The process model is used to design the queries that will access and perform operations on those Tables.
Design of software involves conceiving, planning out and specifying the externally observable characteristics of the software product. We have data design, architectural design and user interface design in the design process. These are explained in the following section. The goal of design process is to provide a blue print for implementation, testing and maintenance activities.
13
4.2 DATA DESIGN: The primary activity during data design is to select logical representations of data objects identified during requirement analysis and software analysis. A data dictionary explicitly represents the relationships among data objects and the constrains on the elements of the data structure. A data dictionary should be established and used to define both data and program design.
4.3 FESIBILITY STUDY: Feasibility study is conducted once the problem is clearly understood. Feasibility study is a high level capsule version of the entire system analysis and design process. The objective is to determine quickly at a minimum expense how to solve a problem. The purpose of feasibility is not to solve the problem but to
Determine if the problem is worth solving. The system has been tested for feasibility in the following points 1. Technical Feasibility 2. Economical Feasibility 3. Operational Feasibility.
4.3.1. Technical Feasibility: The project entitles "Project Monitoring System" is technically feasibility because of the below mentioned feature. The project was developed in Java which Graphical User Interface It provides the high level of reliability, availability and compatibility. All these make Java an appropriate language for this project. Thus the existing software Java is a powerful language.
14
4.3.2. Economical Feasibility: The computerized system will help in automate the selection leading the profits and details of the organization. With this software, the machine and manpower utilization are expected to go up by 80-90% approximately. The costs incurred of not creating the system are set to be great, because precious time can be wanted by manually. 4.3.3. Operational Feasibility: In this project, the management will know the details of each project where he may be presented and the data will be maintained as decentralized and if any inquires for that particular contract can be known as per their requirements and necessaries. 4.4 IMPLEMENTATION: Implementation is the stage where the theoretical design is turned into a working system. The most crucial stage in achieving a new successful system and in giving confidence on the new system for the users that it will work efficiently and effectively. The system can be implemented only after thorough testing is done and if it is found to work according to the specification. It involves careful planning, investigation of the current system and its constraints on implementation, design of methods to achieve the change over and an evaluation of change over methods a part from planning. Two major tasks of preparing the implementation are education and training of the users and testing of the system. The more complex the system being implemented, the more involved will be the systems analysis and design effort required just for implementation. The implementation phase comprises of several activities. The required hardware and software acquisition is carried out. The system may require some software to be developed.
15
CHAPTER 5 IMPLEMENTATION METHODOLOGY
5.1 DATA FLOW DIAGRAM Data Flow Diagrams show the flow of data from external entities into the system, and from one process to another within the system. There are four symbols for drawing a DFD: 1. Rectangles representing external entities, which are sources or destinations of data. 2. Ellipses representing processes, which take data as input, validate and process it and output it. 3. Arrows representing the data flows, which can either, be electronic data or physical items. 4. Open-ended rectangles or a Disk symbol representing data stores, including electronic stores such as databases or XML files and physical stores such as filing cabinets or stacks of paper.
The Data Flow Diagrams for the current system are explained below. Each process within the system is first shown as a Context Level DFD and later as a Detailed DFD. The Context Level DFD provides a conceptual view of the process and its surrounding input, output and data stores. The Detailed DFD provides a more detailed and comprehensive View of the interaction among the sub-processes within the system.
16
5.1.1 Customer-Browse Context DFD Customer browser context data flow diagram explains connection between Customer and the search model.. The customer will be browsing for the item the server will be search and produce the output.
17
5.1.2 Customer-Browse Detailed DFD The below DFD diagram shows how the customer browse the content detailed.
18
5.1.3 Customer - ShoppingCart Context DFD Here the customer shopping cart DFD. The customer can create a cart and he can select the item needed and purchase the whole selected item.
19
5.1.4 Customer - ShoppingCart Detailed DFD The given DFD diagram shows the shopping cart detailed manner. The user can be modify as well as develop the cart.
20
5.1.5 Customer-Authentication Context DFD In this customer authentication DFD , the authentication of the customer will takes place. The database will be checking the given customer is valid or not, if he is valid means allow permission to access the server .
21
5.1.6 Customer-Authentication-PurchaseHistory DFD In the following DFD shows the customer history in detail, it means that the history of the customer will be saving the account of the customer. After some latter the customer can analyze his history.
5.1.7 Customer-Authentication-UserProfile DFD The authenticated use has his own profile he can be modify the profile submit the current details if any change happened in the previously submitted details.
22
5.1.8 Authenticated User-Purchase Context DFD Given DFD shows the all process taking place in the shoponline system.
23
5.1.9 Customer-NewUserRegistration DFD The new user registration DFD is showing below the use can be register to the website by giving the user id, password, and address.
The administrator verifying the data’s
24
5.1.10 Administrator-new item adding DFD The administrator will be adding the new item to the server to introduce the customer
25
5.2 UML USE CASE DIAGRAM The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, as well as for business modeling and other non-software systems. The UML represents a collection of best engineering practices that have proven successful in the modeling of large and complex systems. The UML is a very important part of designing objects oriented software and the software development process. The UML uses mostly graphical notations to express the design of software projects. Using the UML helps project teams communicate, explore potential designs, and validate the architectural design of the software. Each Use Case is: a pattern of behavior that the new system is required to exhibit. a sequence of related actions performed by an actor and the system via a dialogue. An actor is: a person a role that different people may play another (external) system.
A Use Case Diagram is a visual representation of actors together with use cases. A use case is a set of scenarios that describing an interaction between a user and a system.
26
A use case diagram displays the relationship among actors and use cases. The two main components of a use case diagram are use cases and actors.
An actor is represents a user or another system that will interact with the system you are modeling. A use case is an external view of the system that represents some action the user might perform in order to complete a task.
27
5.3 USE CASE DESIGN FOR ONLINE SHOPPING SYSTEM
The diagram explained below is USE CASE diagram of online shopping sytem. In this project we have 3 main actor Customer, Warehouse Employee and Sales person. Customer is facilitised with Add item to cart, Remove items from Cart, Review contents of Cart, Purchase contents of Cart and Update order status. Warehouse employee can Update order status and Notify warehouse order information. Salesperson can notify warehouse about the order and receive and process the order. Sales person also have included with verification of payment.
28
5.4 SEQUENCE DIAGRAM Sequence diagrams show step-by-step what’s involved in a use case Which objects are relevant to the usecase. How those objects participate in the function
29
5.5 Class Diagram for Shopping Cart Class diagram of shopping Cart consist of the five classes. The classes are represented inside the box as shown in the figure. It consists of Credit Card, Customer, Item to buy, Shopping Cart and Frequent Shopper. Shopping Cart Class deals with Adding new item to the cart, Cancelation of any purchase or Deletion of any item from the cart. Credit card class will have the security transaction and Security integrity enables the customer to process a secure transaction. Customer Class will have the information of the customer. Information like Billing address, Delivery address, Email Address and Credit rating.
30
5.6 UML ACTIVITY DIAGRAM Activity diagrams describe the workflow behavior of a system. Activity diagrams are similar to state diagrams because activities are the state of doing something. The diagrams describe the state of activities by showing the sequence of activities performed. Activity diagrams can show activities that are conditional or parallel.
31
5.7 DATABASE DESIGN
TABLES Table Name: PRODUCT ----------------------------------------------------Column Name Type ----------------------------------------------------Product Id Int Product Name Varchar Product Type Varchar UnitPrice Float Quantity
Varchar
Units in stock
Int
Units on Order Int -----------------------------------------------------
Table Name: CUSTOMER -----------------------------------------------Column Name Type -----------------------------------------------Order Number Int Order Date Date CustomerName Varchar BillAddress Varchar ShippingAddress Varchar PhoneNumber Varchar Email-Id Varchar Amount Float Shipped Status Varchar ------------------------------------------
32
Table Name: PRODTABLE -----------------------------------------------Column Name Type -----------------------------------------------ProdId Int ProductName Varchar Price Float ------------------------------------------------
Table Name: CREDITCARD -----------------------------------------------Column Name Type -----------------------------------------------CardType Varchar CardNumber Varchar
33
CHAPTER 6 TESTING
6.1 SYSTEM TESTING The testing phase is an important part of software development. It is the process of finding errors and missing operations and also a complete verification to determine whether the objectives are met and the user requirements are satisfied. 6.1.1 Software testing is carried out in three steps:
The first includes unit testing, where in each module is tested to provide its Correctness, validity and also determine any missing operations and to verify whether the objectives have been met. Errors are noted down and corrected immediately. Unit testing is the important and major part of the project. So errors are rectified easily in particular module and program clarity is increased. In this project entire system is divided into several modules and is developed Individually. So unit testing is conducted to individual modules.
The second step includes Integration testing. It need not be the case, the software whose modules when run individually and showing perfect results, will also show perfect results when run as a whole. The individual modules are clipped under this major module and tested again and verified the results. This is due to poor interfacing, which may results in data being lost across an interface. A module can have inadvertent, adverse effect on any other or on the global data structures, causing serious problems.
34
The final step involves validation and testing which determines which the software functions as the user expected. Here also some modifications were. In the completion of the project it is satisfied fully by the end user
6.2 MAINTENANCE AND ENHANCEMENT AS the number of computer based systems, grieve libraries of computer software began to expand. In house developed projects produced tones of thousand soft program source statements. Software products purchased from the outside added hundreds of thousands of new statements. A dark cloud appeared on the horizon. All of these programs, all of those source statements-had to be corrected when false were detected, modified as user requirements changed, or adapted to new hardware that was purchased. These activities were collectively called software Maintenance. The maintenance phase focuses on change that is associated with error correction, adaptations required as the software's environment evolves, and changes due to enhancements brought about by changing customer requirements. Four types of changes are encountered during the maintenance phase.
Correction Adaptation Enhancement Prevention Correction
6.2.1 CORRECTION Even with the best quality assurance activities is lightly that the customer will uncover defects in the software. Corrective maintenance changes the software to correct defects. Maintenance is a set of software Engineering activities that 35
occur after software has been delivered to the customer and put into operation. Software configuration management is a set of tracking and control activities that began when a software project begins and terminates only when the software is taken out of the operation. Corrective Maintenance Adaptive Maintenance Perfective Maintenance or Enhancement Preventive maintenance or reengineering
Only about 20 percent of all maintenance work are spent "fixing mistakes". The remaining 80 percent are spent adapting existing systems to changes in their external environment, making enhancements requested by users, and reengineering an application for use.
6.2.2 ADAPTATION Over time, the original environment (E>G., CPU, operating system, business rules, external product characteristics) for which the software was developed is likely to change. Adaptive maintenance results in modification to the software to accommodate change to its external environment.
6.2.3 ENHANCEMENT As software is used, the customer/user will recognize additional functions that will provide benefit. Perceptive maintenance extends the software beyond its original function requirements.
36
6.2.4 PREVENTION Computer software deteriorates due to change, and because of this, preventive maintenance, often called software re engineering, must be conducted to enable the software to serve the needs of its end users. In essence, preventive maintenance makes changes to computer programs so that they can be more easily corrected, adapted, and enhanced. Software configuration management (SCM) is an umbrella activity that is applied throughout the software process. SCM activities are developed to Identify change. Control chug. Ensure that change is being properly implemented. Report change to others that may have an interest.
37
RESULT ANALYSIS
38
CHAPTER 8 CONCLUSION AND FUTURE ENHANCEMENT 8.1 CONCLUSION
The Internet has become a major resource in modern business, thus electronic shopping has gained significance not only from the entrepreneur’s but also from the customer’s point of view. For the entrepreneur, electronic shopping generates new business opportunities and for the customer, it makes comparative shopping possible. As per a survey, most consumers of online stores are impulsive and usually make a decision to stay on a site within the first few seconds. We have designed the project to provide the user with easy navigation, retrieval of data and necessary feedback as much as possible. A good shopping cart design must be accompanied with user-friendly shopping cart application logic. It should be convenient for the customer to view the contents of their cart and to be able to remove or add items to their cart. The shopping cart application described in this project provides a number of features that are designed to make the customer more comfortable.
This project helps in understanding the creation of an interactive web page and the technologies used to implement it. The building of the project has given me a precise knowledge about how IBM Websphere application is used to develop a website, how it connects to the database to access the data and how the data and web pages are modified to provide the user with a shopping cart application.
39
8.2 FUTURE ENHANCEMENT 1. The Shop Online will require more secure encryption to provide more secure transaction. 2. Customer should be given with reward point for frequent purchase. 3. Live support should be enabled.
40
APPENDIX 1: SAMPLE CODINGS
A1.1 Samples coding for the login page Please enter your login Info Please enter your login Info User Id: User Password: G to Home If you want to register Please Click here RE GISTER
41
A1.2 Sample coding for registration page
Registration Form Registration Form
View more...
Comments