44
TRIBHUVAN UNIVERSITY INSTITUTE OF ENGINEERING PULCHOWK CAMPUS Byapar Griha - An E-Commerce CMS By: Roshan Bhandari (066 BCT 526) Sjan Bhandari (066 BCT 537) Sujit Maharjan (066 BCT 540) A PROJECT WAS SUBMITTED TO THE DEPARTMENT OF ELECTRONICS AND COMPUTER ENGINEERING IN PARTIAL FULLFILLMENT OF THE REQUIREMENT FOR THE BACHELOR’S DEGREE IN COMPUTER ENGINEERING DEPARTMENT OF ELECTRONICS AND COMPUTER ENGINEERING LALITPUR, NEPAL SEPTEMBER, 2012

TRIBHUVAN UNIVERSITY INSTITUTE OF ENGINEERING … › media_dir › main_documents › Byapar_Griha_Re… · byapar griha - an e-commerce cms by: roshan bhandari (066 bct 526) sjan

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • TRIBHUVAN UNIVERSITY

    INSTITUTE OF ENGINEERING

    PULCHOWK CAMPUS

    Byapar Griha - An E-Commerce CMS

    By:

    Roshan Bhandari (066 BCT 526)

    Sjan Bhandari (066 BCT 537)

    Sujit Maharjan (066 BCT 540)

    A PROJECT WAS SUBMITTED TO THE DEPARTMENT OF ELECTRONICS

    AND COMPUTER ENGINEERING IN PARTIAL FULLFILLMENT OF THE

    REQUIREMENT FOR THE BACHELOR’S DEGREE IN

    COMPUTER ENGINEERING

    DEPARTMENT OF ELECTRONICS AND COMPUTER ENGINEERING

    LALITPUR, NEPAL

    SEPTEMBER, 2012

  • 10

    TRIBHUVAN UNIVERSITY

    INSTITUTE OF ENGINEERING

    PULCHOWK CAMPUS

    Byapar Griha - An E-Commerce CMS

    By:

    Roshan Bhandari (066 BCT 526)

    Sjan Bhandari (066 BCT 537)

    Sujit Maharjan (066 BCT 540)

    A PROJECT WAS SUBMITTED TO THE DEPARTMENT OF ELECTRONICS

    AND COMPUTER ENGINEERING IN PARTIAL FULLFILLMENT OF THE

    REQUIREMENT FOR THE BACHELOR’S DEGREE IN

    COMPUTER ENGINEERING

    DEPARTMENT OF ELECTRONICS AND COMPUTER ENGINEERING

    LALITPUR, NEPAL

    SEPTEMBER, 2012

  • 11

    PAGE OF APPROVAL

    TRIBHUVAN UNIVERSITY

    INSTITUTE OF ENGINEERING

    PULCHOWK CAMPUS

    DEPARTMENT OF ELECTRONICS AND COMPUTER ENGINEERING

    The undersigned certify that they have read, and recommended to the Institute of

    Engineering for acceptance, a project report entitled " Byapar Griha - An E-Commerce

    CMS " submitted by Roshan Bhandari, Sijan Bhandari, and Sujit Maharjan in partial

    fulfilment of the requirements for the Bachelor’s degree in Electronics &

    Communication / Computer Engineering.

    _________________________________________________

    Supervisor, name of Supervisor

    Title

    Name of the Department

    __________________________________________________

    Internal Examiner, name of Internal Examiner

    Title

    Name of the Organization, he belongs to

    __________________________________________________

    External Examiner, name of External Examiner

    Title

    Name of the Organization, he belongs to

    ------------------------------------------------------------------------------

    Coordinator, Name of Coordinator

    Title

    Name of the coordinating committee

    DATE OF APPROVAL: Day.Month.Year

  • 12

    COPYRIGHT

    The author has agreed that the Library, Department of Electronics and Computer

    Engineering, Pulchowk Campus, Institute of Engineering may make this report freely

    available for inspection. Moreover, the author has agreed that permission for extensive

    copying of this project report for scholarly purpose may be granted by the supervisors

    who supervised the project work recorded herein or, in their absence, by the Head of the

    Department wherein the project report was done. It is understood that the recognition

    will be given to the author of this report and to the Department of Electronics and

    Computer Engineering, Pulchowk Campus, Institute of Engineering in any use of the

    material of this project report. Copying or publication or the other use of this report for

    financial gain without approval of to the Department of Electronics and Computer

    Engineering, Pulchowk Campus, Institute of Engineering and author’s written

    permission is prohibited.

    Request for permission to copy or to make any other use of the material in this report in

    whole or in part should be addressed to:

    Head

    Department of Electronics and Computer Engineering

    Pulchowk Campus, Institute of Engineering

    Lalitpur, Kathmandu

    Nepal

  • 13

    ACKNOWLEDGEMENT

    We express our sincere gratitude towards the department of Electronics and Computer

    Engineering, IOE for providing us the wonderful opportunity to undertake this project.

    We owe our gratitude to Dr. Arun Timalsina for his kind effort and help in guiding

    continuously during the project. We would also like to thank Er. Shayak Raj Giri for his

    effort in guiding us continuously during the project.

    We cannot miss to thank our project Professor Dr. Shashidhar Ram Joshi who greatly

    helped us giving valuable ideas and techniques that made the flow of our project faster

    and easier.

    Naresh Dhami, Software Engineer at IT OffShore, Nepal and pass out from Pulchowk

    Campus also owes our thanks.

    Finally, we also would like to thank our friends and seniors who have guided us

    continuously during the project.

    Roshan Bhandari (066/BCT/526)

    Sijan Bhandari (066/BCT/537)

    Sujit Maharjan (066/BCT/540)

  • 14

    ABSTRACT

    This project is about developing a Content Management System to facilitate the

    development of an e-commerce website. This project features facilities for the

    development of an e-commerce website without knowing much about the coding details.

    A content management system (CMS) is a computer system that allows publishing,

    editing, and modifying content as well as site maintenance from a central page. It

    provides a collection of procedures used to manage workflow in a collaborative

    environment. CMS allows for a large number of people to share and control stored data,

    control access to data based on user role, facilitates storage and retrieval of data, control

    validity and compliance and so on.

    The system is developed with 4-tier architecture. First level or tier is the browser or

    client level processing. Second layer is entity layer. The third level is the asp .net and IIS

    server connection or the provider layer and the final tier is the back end database.

    In order to develop and e-commerce CMS we used number of technologies. These

    include server and client side scripting techniques and languages such as asp .net and c#,

    Ajax, HTML, CSS, JavaScript, knowledge and concept of relational databases such as

    MS Sql.

    After completing this project we have developed a System for developing an e-

    commerce site flexibly. This project features properties of Central Dashboard for

    administrator who can customize the site as necessary. From the dashboard one can also

    do various site administrator and accounting tasks.

  • 15

    Contents COPYRIGHT ................................................................................................................... 12

    ACKNOWLEDGEMENT ............................................................................................... 13

    ABSTRACT ..................................................................................................................... 14

    LIST OF SYMBOLS / ABBREVIATIONS .................................................................... 17

    1 INTRODUCTION .................................................................................................... 19

    1.1 Literature Review .............................................................................................. 19

    1.2 Objective ............................................................................................................ 20

    1.3 Scope of Project ................................................................................................. 21

    2 PROJECT DESIGN ................................................................................................. 22

    2.1 Data Modeling ................................................................................................... 22

    2.1.1 Database Design ......................................................................................... 25

    2.2 Process Model .................................................................................................... 28

    UML Diagrams ............................................................................................................ 29

    2.2.1 Use Case Diagram ...................................................................................... 29

    2.2.2 Activity Diagram ........................................................................................ 30

    2.2.3 Sequence Diagram ...................................................................................... 31

    3 DESIGN IMPLEMENTATION .............................................................................. 32

    3.1 User Interface Design ........................................................................................ 32

    3.1.1 Registration Page ........................................................................................ 32

    3.1.2 Authentication and login ............................................................................ 33

    3.1.3 Account Management Page ........................................................................ 34

    3.2 Order Management ............................................................................................ 34

    3.2.1 Adding Product To Cart ............................................................................. 34

  • 16

    3.2.2 Generating and Managing Orders .............................................................. 36

    3.2.3 Review The Order ...................................................................................... 36

    3.2.4 Placing an Order ......................................................................................... 36

    3.2.5 Track Order ................................................................................................ 37

    3.2.6 Manage Pending Order ............................................................................... 38

    3.2.7 Order History .............................................................................................. 39

    3.3 CATALOG MANAGEMENT .......................................................................... 40

    3.3.1 Category Management ............................................................................... 40

    3.3.2 Product Management .................................................................................. 41

    4 IMPLEMENTATION TECHNOLOGY .................................................................. 42

    4.1 Internet Information Services (IIS) .................................................................... 42

    4.2 Framework Used ................................................................................................ 43

    4.3 Database Used ................................................................................................... 43

    4.4 Programming Languages Used .......................................................................... 44

    4.5 APIs Used .......................................................................................................... 44

    5 ANALYTICS AND REPORT GENERATION ...................................................... 48

    5.1 Accounting ......................................................................................................... 48

    5.2 Analytics ............................................................................................................ 48

    5.2.1 Product Recommendations ......................................................................... 49

    5.2.2 Product Review .......................................................................................... 49

    6 Limitations ............................................................................................................... 51

    7 CONCLUSION ........................................................................................................ 51

    8 BIBLIOGRAPHY .................................................................................................... 52

  • 17

    LIST OF SYMBOLS / ABBREVIATIONS

    AJAX Asynchronous JavaScript And XML

    ASP Active Server Page

    API Application Programming Interface

    CLR Common Language Runtime

    DFD Data Flow Diagram

    EAV Entity Attribute Value

    FDD Functional Decomposition Diagram

    HTML Hyper Text Markup Language

    IDE Integrated Development Environment

    MS-SQL Microsoft Structured Query Language

    WSDL Web Service Deployment Language

  • 18

    List of Figures

    Figure 2.1Database Scheme for Catalog Management .................................................... 23

    Figure 2.2 Database Schema for Cart and Order Management ........................................ 23

    Figure 2.3 Functional Decomposition Diagram ............................................................... 28

    Figure 2.4 Use Case Diagram........................................................................................... 29

    Figure 2.5 Activity Diagram ............................................................................................ 30

    Figure 2.6 Sequence Diagram for Cart to Order .............................................................. 31

    Figure 2.7 Sequence Diagram for Login .......................................................................... 31

    Figure 3.1 Review of Order .............................................................................................. 36

    Figure 3.2 Order Status .................................................................................................... 38

    Figure 3.3 Pending Orders ............................................................................................... 39

    Figure 3.4 Order Details ................................................................................................... 40

    Figure 4.1 ISS Web Server ............................................................................................... 42

    Figure 5.1 Analysis graph showing No of Visitor in a day .............................................. 50

    Figure 5.2 Line Graph showing no of visits of visitors in a month .................................. 50

  • 19

    1 INTRODUCTION

    E-commerce is the term for a type of business, or commercial transaction over the web.

    This mainly involves the transfer of information through internet. In practice, this term

    and a newer term, e-business, are often used interchangeably. This approach allows

    customers to electrically exchange goods and services with no barriers of time and

    distance.

    The objective of this project is to build a customizable e-commerce engine or a CMS.

    We hope to bring a new easily customizable e-commerce CMS through which one can

    build a e-commerce site of any category without any in-depth knowledge of the internal

    coding details. This application will feature central dashboard from where various site

    administration task could be done by the admin and take his product live into the online

    business within no time.

    This project will deal with the development of CMS that will lead to the development of

    e-commerce store where goods of any category could be bought with comfort from

    home. An online store is virtual store on the internet where customers can browse the

    catalog and select product of interest. The selected item will be collected in cart. At

    checkout time, items in the shopping cart will be presented as an order. At that time more

    information will be needed to complete the transaction. The information such as shipping

    address, receiver, etc will be asked. After the transaction payment shall be handled by

    various gateways. We also hope to introduce the feature of mobile payment. We also

    hope to implement e-mail and text notification via Mobile after the transaction.

    1.1 Literature Review

    "Your business is going to boom through web otherwise will soon vanish."- Bill Gates

    The web, as a place for e-commerce, brings both advantages and challenges. While e-

    commerce has the same goal as any other form of commerce, to maximize the amount of

    sold commodities and thus the generated income, it differs from it in many respects.

    While the conventional stores carry only a limited supply items, e-shops can offer an

    almost unlimited number of items, including specialty products targeted for only

    relatively few customers. This allows customers to comparison –shop and select their

    favorite brand without leaving their chairs.

    By the same token, traditional store can reach mainly customers who live in the

    neighborhood whereas the e-store makes it possible to pursue global sales. In addition,

  • 20

    keeping a physical store open 24 hours a day rather expensive (with nightly operation

    generating only minimal income), while the computer system supporting e-commerce

    can run non-stop with almost no overhead. These features generate a potential advantage

    for the e-merchants.

    While the traditional commerce is limited by time and space, the Internet commerce is

    characterized by an almost unlimited availability.

    An additional benefit of e-commerce is that it allows the seller a natural opportunity to

    gather information about the behavioral patterns of visiting customers (including their

    transaction records) There is a number of ways that such information can be applied:

    a) To better meet individual customer expectations (resulting in the increased number of

    transactions and thus in increased profits)

    b) To study the behavior of the entire client population (mining knowledge that can be

    then fed-back to the e-commerce support systems)

    c) To study the current market trends (e.g. to assure that fashionable commodities and

    available to the clients)

    d) To exchange information with (to sell it to) other businesses (as a source of additional

    information applicable in own system and/or source of additional income).

    In response to these opportunities, the development of successful e-commerce initiatives

    requires creation of an appropriate infrastructure that will support the required

    functionality. The system should provide quick access to legitimate user and block other

    and develop itself from review, ratings and users visit trend.

    1.2 Objective

    This project is about developing the e-commerce system. Developing an e-commerce

    system requires knowledge of various systems such as Inventory Management, Catalog

    Managements , Product Managements, User Managements, Carting, Payment Processing

    and others. We mainly tried to fulfill the following objectives:-

    Be able to create a System to build a customizable ecommerce site instantly.

  • 21

    Make use of online payment through internet gateways such as paypal for payment

    processing.

    Be able to analyze sales and recommend products.

    Make e-commerce system interactive through user comments, rating on products and

    feedbacks.

    1.3 Scope of Project

    A complete E-commerce-based website is developed based on web Service –oriented

    model which have following features:

    a) Allow Customers to create account and store favorite items in carts.

    b) Allow Customers to make payment through payment Gateway like Paypal.

    c) Allow user to make comparison of various products before through reviews and

    rating.

    d) Sending Receipt through an e-mail to customer.

    e) Generate accounting Records

    f) Catalog management

  • 22

    2 PROJECT DESIGN

    Our Project "Byapar Griha - An ECommerce CMS" is a web Application. An application

    of such type requires that we design Database first. Project Design can be divided into 2

    phases: Data Modeling and Process Modeling. Data Model focuses on the Database

    design, the entities, attributes, the relationship among various entities while the process

    model focuses on the queries made to extract data from the database and the stored

    implemented.

    2.1 Data Modeling

    The Conceptual Representation of the database and data structures required by a

    database is data model. It gives a quick overview of database implementation The ER

    representation is shown below.

  • 23

    Figure 2.1Database Scheme for Catalog Management

    Figure 2.2 Database Schema for Cart and Order Management

  • 24

  • 25

    2.1.1 Database Design

    Database design has been almost completed. In our System there are following tables:-

    For Products and Category addition dynamically to fit a design of an generalized e-

    commerce site we have followed EAV model. Entity–attribute–value model (EAV) is

    a data model to describe entities where the number of attributes (properties, parameters)

    that can be used to describe them is potentially vast, but the number that will actually

    apply to a given entity is relatively modest. In mathematics, this model is known as

    a sparse matrix. EAV is also known as object–attribute–value model, vertical database

    model and open schema.

    Structure of EAV Model

    This data representation is analogous to space-efficient methods of storing

    a sparse matrix, where only non-empty values are stored. In an EAV data

    model, each attribute-value pair is a fact describing an entity, and a row in an EAV

    table stores a single fact. EAV tables are often described as "long and skinny":

    "long" refers to the number of rows, "skinny" to the few columns.

    Data is recorded as three columns:

    The entity: the item being described.

    The attribute or parameter: a foreign key into a table of attribute definitions. At

    the very least, the attribute definitions table would contain the following

    columns: an attribute ID, attribute name, description, data type, and columns

    assisting input validation, e.g., maximum string length and regular

    expression, set of permissible values, etc.

    The value of the attribute.

    Our Database Consists of following tables:

    a. Based on EAV for Category and Product Management

    1. For Category Management

    i. Catelog_Category_Entity

    ii. Catelog_Category_Entity_Decimal

    iii.Catelog_Category_Entity_Int

  • 26

    iv.Catelog_Category_Entity_Text

    v.Catelog_Category_Entity_VarChar

    vi. Catelog_Category_Entity_Text

    vii.Catelog_Category_Entity_DateTime

    2. For Product Management

    i. Catelog_Product_Entity

    ii. Catelog_Product_Entity_Decimal

    iii.Catelog_Product_Entity_Int

    iv.Catelog_Product_Entity_Text

    v.Catelog_Product_Entity_VarChar

    vi. Catelog_Product_Entity_Text

    vii.Catelog_Product_Entity_DateTime

    3. For Attributes

    i. EAV_Attributes

    b. For Rest of the Systems

    1. For Customer Management

    i. User

    ii.User_Details

    iii. User_Activity

    iv. Address(for Shipping)

    2. For Admin

    i. Address

  • 27

    3. For Product Review and Rating

    i.Product Review

    4. For Cart Management

    i. Cart

    ii. CartDetails

    5. For Order

    i. Order

    ii. OrderDetails

    6. For Inventory

    i. Inventory

    7. For Analytis

    i. Log_url

    ii. log_url_info

    iii. log_visitor

    iv. log_visitor_info

    v. log_customer

  • 28

    2.2 Process Model

    Functional Decomposition Diagram

    A decomposition diagram shows a top-down functional decomposition of a system and

    exposes the system's structure. The objective of the Functional Decomposition is to

    break down a system step by step, beginning with the main function of a system and

    continuing with the interim levels down to the level of elementary functions. The

    diagram is the starting point for more detailed process diagrams, such as data flow

    diagrams (DFD). Figure below shows the Functional Decomposition Diagram for this

    project.

    Figure 2.3 Functional Decomposition Diagram

  • 29

    UML Diagrams

    2.2.1 Use Case Diagram

    Figure 2.4 Use Case Diagram

  • 30

    2.2.2 Activity Diagram

    DatabaseCartFrontPage

    SelectItem

    Add To Cart

    Create New Cart

    [Cart Does Not Exits]

    Retrieve CartId From Database

    [Cart Exists]

    Place Item To New Cart[Item Don't Exists in Cart]

    Update Quantity By One Unit

    [Item Exists In Cart]

    Maintain Database

    Figure 2.5 Activity Diagram

  • 31

    2.2.3 Sequence Diagram

    Figure 2.6 Sequence Diagram for Cart to Order

    Figure 2.7 Sequence Diagram for Login

  • 32

    3 DESIGN IMPLEMENTATION

    3.1 User Interface Design

    Before diving into the actual coding of the project the User Interface was designed. The

    User Interface consists of the following :-

    1. Registration Page

    2. Authentication and Login Page

    3. Account Management Page

    3.1.1 Registration Page

    A unknown visitor can be navigating through our site. A unknown visitor is assigned a

    id. He/She can may register with our system and continue to use other services provided

    by the system. For registration there is a registration.aspx page. Here's a snapshot of the

    page :-

  • 33

    3.1.2 Authentication and login

    A visitor must be registered into the system to continue shopping. He/she logs

    into the system through the login page. The login page looks like as below:-

  • 34

    3.1.3 Account Management Page

    A user after signing into the system can edit his account. He can see his previous orders

    and view cart. He can also forward to orders and process to the payment through the

    paypal gateway to complete the order. He can set his shipping preferences during the

    process.

    3.2 Order Management

    3.2.1 Adding Product To Cart

    A cart is a collection of different products selected in the site while shopping. This can

    be done by clicking the Add to Cart button provided along with the product or in product

    details page. This operation requires a user to be logged in to the site –that is , he/she

    must be a registered user at the site. Here is the workflow for adding products to the

    cart.

    Must be a registered user with the site.

    Checks whether the user already has a cart that is not yet ordered. If yes, go to step 3. If

    no, creates a new cart.

  • 35

    If the cart already exists for this user, Checks whether this product is already added to

    the cart. If yes, updates the quantity of this product in the cart. If no, adds product to the

    cart.

    Figure.Customer Cart

  • 36

    3.2.2 Generating and Managing Orders

    The process starts after the customer checks out of the cart to place an order on the site.

    The customer is prompted to fill in his/her personal details such shipping address. After

    approval of shipping address customer has to proceed for the payment.

    3.2.3 Review The Order

    This section presents the items added to the cart along with the tax, discount and

    shipping charges. The customer is allowed to Edit the Cart from this page.

    Figure 3.1 Review of Order

    3.2.4 Placing an Order

    “Check out” is a term popular in e-commerce sites. This is an action performed to

    finalize the items that are shopped in the cart and signifies that the customer is ready to

  • 37

    place an order. When action “Place Order” is performed , the Order Status for the

    particular order will be updated as “processing”.

    After placing order, customer will be promoted for placing shipping address. The

    shipping address approval message is shown when customer fill the Shipping Address

    form and Payment processing continues. Payment Gateway “PayPal” is integrated in the

    application. The application sends total amount and order id and user name to the PayPal

    service site along with the returning page uniform resource locator(url) . The customer

    should have PayPal account for processing payment.

    When payment completes the PayPal service sends the confirmation message to our site

    and returns to provided url page. We use this confirmation message to change the order

    status from “processing” to “confirmed”.

    3.2.5 Track Order

    After an order is placed by the customer, he/she can track his/her order. The system

    maintains main three types of status associated with an order : Confirmed, Dispatched,

    and Shipped.

    As soon as a customer places an order successfully and payment is confirmed ,the order

    status will be “confirmed”.

    The Administrator of the site keeps track of the all the orders and processes them one by

    one.

    After the order is dispatched from the site , the status of the order is changed to

    “Dispatched”.

    After the order reached the customer , the status is changed to “shipped”.

  • 38

    Figure 3.2 Order Status

    3.2.6 Manage Pending Order

    This is an administrator activity performed by the administrator of the site. All the

    orders placed by the customers can be viewed here. The administrator’s job is to look at

    these orders and start the dispatch process of the order.

    Initially , all the orders here will be in confirmed status – that is, an order has been

    placed by customer.

    After an order is dispatched ,the status should be modified as Dispatched.

    Once the items reach the customer ,the status of the order should be modified as shipped.

  • 39

    So in essence, the pending orders are all the orders that are not in Shipped Status.

    Figure 3.3 Pending Orders

    3.2.7 Order History

    All the orders that are shipped to the customers come under Order History category.

    This report gives the administrator the complete history of the order. It maintains the

    ordered date, dispatched date , and shipped date of an order to a customer.

    This is helpful data in many cases :

    The site Administrator can find out the number of days taken to dispatch and ship an

    order to different places .

    This data is also a proof of the orders delivered to the customer.

  • 40

    Figure 3.4 Order Details

    3.3 CATALOG MANAGEMENT

    Catalog Management comprises of mainly Category and Product Management. It gives

    the flexibility to add diversity of products and their various categories. The products can

    be linked to one or more numbers of categories. The categorization of products into

    different categories makes easy access to desired product.

    3.3.1 Category Management

    Category divides various products into different set based on some physical, semantic

    similarities. Category can be sub-divided into sub-categories like in a tree structure. The

    tree like structure of categories and sub-categories is visualized in menu for navigation to

    set of products of selected category.

    Category Management is necessary to add new category, edit/update existing categories

    and delete categories. A new category is inserted into database with its description and

    images. We have used list of category and their sub-categories to build menu.

  • 41

    A real kind of traditional business house gives discount on different products and tax is

    applied to each sales. To model this mechanism, we apply tax on each product and the

    tax rate is determined based on the category of product. Also, discount is subtracted from

    the marked price.

    3.3.2 Product Management

    Product is the lowest level entity in an ecommerce system. A product is featured by its

    physical and abstract properties.

    When we add any product to an inventory of the system the products are created with all

    its features in an product entity. The quantity of the product is tracked by inventory

    entity. Every item is contained in a category which makes distinction of products based

    on interests. A product once added can be edited with its latest attributes.

    We have also added facility to add a picture the product so that the customer can

    recognize product at a glance. Also, if admin want, can also add more attributes to

    elaborate details of product. We have given facility to write review product detail page

    so a buyer can recommend/ criticize on product which help other customer to choose

    products.

    Rating also helps in choosing product.

    Administrator has a sole control over Catalog Management. Admin has to login to

    dashboard to perform Catalog Management. Catalog Management is an important tool to

    continuously update products and categories into the e-shop.

  • 42

    4 IMPLEMENTATION TECHNOLOGY

    The objective of this project is to develop an e-commerce System. When the user types

    the url of the e-commerce site in the address field of the browser, a web Server is

    contacted to get the requested information. In the .NET framework, IIS (Internet

    Information Service) acts as the Web Server. The web Server accepts incoming HTTP

    requests and returns the requested resource in the form of HTTP response. The first thing

    IIS does when a request comes in is to decide how to handle the request. Its decision is

    based upon the requested file's extension. For example, if the requested file has the .asp

    extension, IIS will route the request to be handled by asp.dll. If it has the extension of

    .aspx, .ascx, etc, it will route the request to be handled by ASP.NET Engine.

    The ASP.NET Engine then gets the requested file, and if necessary contacts the database

    through ADO.NET for the required file and then the information is sent back to the

    Client’s browser. Figure above shows how a client browser interacts with the Web server

    and how the Web server handles the request from client.

    Figure 4.1 ISS Web Server

    4.1 Internet Information Services (IIS)

  • 43

    IIS is a set of Internet based services for Windows machines. Originally supplied as part

    of the Option Pack for Windows NT, they were subsequently integrated with other

    version of windows and Windows Server.

    Features:

    The web server itself cannot directly perform server side processing but can delegate the

    task to ISAPI (Application Programming Interface of IIS) applications on the server.

    Microsoft provides a number of these including ones for Active Server Page and

    ASP.NET.

    4.2 Framework Used

    ASP.NET

    ASP.NET is a programming framework built on the common language runtime (CLR)

    that can be used on a server to build powerful Web applications. ASP.NET has many

    advantages – both for programmers and for the end users because it is compatible with

    the .NET Framework. This compatibility allows the users to use the following features

    through ASP.NET:

    4.3 Database Used

    MS SQL Database

    In this project, MS SQL is used as the backend database. MS SQL is proprietary

    database

  • 44

    management system by Microsoft. The features of MS SQL are given below:

    •MS SQL is a relational database management system. A relational database stores

    information in different tables, rather than in one giant table. These tables can be

    referenced to each other, to access and maintain data easily.

    • It is fast, reliable and easy to use.

    4.4 Programming Languages Used

    C#

    The primary programming language used for the development of this project is C#. It is

    used in conjunction with ASP .Net for the creation of the website.

    JavaScript

    JavaScript (sometimes abbreviated JS) is a prototype-based scripting language that

    is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language,

    supporting object-oriented, imperative, and functional programming styles. For

    the client side programming, we have used JavaScript. It is used in handling the events

    like mouse click, mouse hover etc.

    AJAX

    AJAX stands for Asynchronous JavaScript and XML) is a group of

    interrelated webdevelopment techniques used on the client-side to create

    asynchronous web applications. Using Ajax, web applications we can send data to,

    and retrieve data from, a server asynchronously (in the background) without interfering

    with the display and behavior of the existing page. Data can be retrieved using

    the XMLHttpRequest object.

    Ajax is not a single technology, but a group of technologies. HTML and CSS can be

    used in combination to mark up and style information.

    4.5 APIs Used

    Paypal

  • 45

    Paypal is a popular gateway for payment and Money transfer. It provides Application

    Programming Interface (API)s for integration with various web platforms. Paypal

    provides various accounts for various applications Mainly 3 types of accounts are

    provided by the paypal. They are:-

    Personal account

    Most people have this type of account that allows one to use PayPal when paying for

    stuff online. Theoretically, one can use a Personal account to accept money. Through this

    account one will be severely constrained. There is a $500 receiving limit per month,

    and one willbe able to accept one time payments using the Website Payments Standard

    (HTML). The big advantage of a Personal account is that one don’t need to pay any

    transaction fee when receiving money.

    Premier account

    We have to step up from a personal account for anyone who wants to run a personal

    online business. This type of account has all of the integration options (accepting credit

    cards, recurring payments, PayPal API). Many People escape directly to the business

    account.

    Business account

    It has all of the features of the Premier account plus a few more (ability to operate under

    your business’s name is one of them). If you are developing a website that needs to

    accept payments in 99% of situations, you’ll go with this type of account.

    Testing Facilities with Paypal

    Paypal provides sandbox envirionment for devlopers for testing and debugging. We need

    to have sandbox account for testing our application. We can create test account inside

    sandbox environment with virtual balance.

  • 46

  • 47

    Basic Payment

    Say we have an opened PayPal account and we wish to be able to accept a $10 payment

    for a painting we are selling through our site. Just insert the following HTML into our

    page and we are set to go:

  • 48

    5 ANALYTICS AND REPORT GENERATION

    Administrator of the System can view generated reports. Reports of various accountings

    and Analytics can be viewed by him. He can view reports and graphs of various things

    such as customer visits, Profit and loss, Order, no of Visits for a year, no of visits for a

    month and day etc. Here's a samples snapshot of the graphs of the Analytics and Report

    generation:-

    5.1 Accounting

    In Accounting various report generation can be made such as Sales Report, Stock Report

    and tax Report.

    Sales Report

    The sales report give details of sales within given time interval and profit in each sales. It

    helps in calculating total sales, total cost of sales and total sales.

    Stock Report

    Stock Report shows number of items in the inventory and warns the owner if quantity of

    items in inventory becomes minimum.

    Tax Report

    Tax Report gives the tax levied in to each item in sales. We can also view to total tax

    paid in a particular category too. The total tax amount to be paid to government can also

    be determined.

    5.2 Analytics

    Analytics part shows various Analytical reports and graphs of the datas. In the graphs

    various results and data are analyzed and presented in a beautiful graphical manner.

    Graphs of various parts such as Order, Product Sales, Customer login status, visitor Stats

    etc are shown.

  • 49

    5.2.1 Product Recommendations

    We web site is customised for each customer or vistor based on his or her preferences,or

    on preferences based on previously gathered data from similar visitors.We have

    implemented product recommendation system based on following pages:

    a) Adding product recommendations to the product details pages. These

    recommendations will promote additional products to be shopped with selected product.

    b) Adding product recommendations to the shopping cart pages. These recommedations

    will promote products to be shopped along with products already in shopping cart. We

    have implement dynamic product recommendation based on:

    i) Up-selling: Customer will be offered opportunity to purchase an upgrade or

    with extra qualified products. We have implemented up-selling recommendation

    based on Selling Price of the particular in the specified category.

    ii) Cross-selling: Customer will be offered opportunity to purchase

    complementary products.These recommendations shown in shopping cart are

    those items which are not recently added to the cart, but customers has ordered

    these items in his previous visit.

    5.2.2 Product Review

    We have provided a facility for adding reviews to each product in our site. We have

    provided a form for addin review and this form will show up for only registered

    customers, because we decided not to allow anonymous reviews.

    It have implemented following design decisions :

    a) The list of reviews and the form for adding new review is displayed below on

    the product detail page.

    b)Only registerd user is promoted to add his reviews. Product reviews are the

    most attractive feature for e-commerce site as this will provide the customers or visitors

    to see what other people think about that product.

  • 50

    Figure 5.1 Analysis graph showing No of Visitor in a day

    Figure 5.2 Line Graph showing no of visits of visitors in a month

  • 51

    6 Limitations

    Developing an e-commerce application is a tough task. We have tried our best to develop

    as many things as possible to make our ecommerce system complete. The main

    limitations our application are listed below :-

    1. Theming abilities as found in general Customizable Management Systems could not

    be attained.

    2. Bidding on products could not be achieved.

    3. We had hoped to integrate Mobile payment System but it could not be achieved.

    4. Many Accounting features such as Journal, Ledger, P/L account generation could not

    be completed.

    5. Our Application process runs a bit slow due to heavy database configuration.

    6. Category Management is incomplete as Category Added cannot be deleted.

    7 CONCLUSION

    Thus, we have built an almost full supportive ecommerce system which can be used in

    small or medium sized enterprise house. The use can get benefits from the analytical

    tools and features of this system.

    We have successfully tested our system in the data of a book shop which was quite

    satisfactory.

    This project has got many fields of further enhancements.

  • 52

    8 BIBLIOGRAPHY

    MSDN | Microsoft Chart Control Application. (2012). Retrieved from MSDN:

    http://msdn.microsoft.com/en-us/library/dd456632.aspx for Microsoft Chart

    Control Application

    Wikipedia - ASP.NET for ASP.NET. (2012). Retrieved from Wikipedia:

    http://en.wikipedia.org/wiki/Internet_Information_Services for IIS Server

    Anderson, R. F. (2001). Professional ASP.NET. Wrox Press Ltd.

    Watson, C. D. (2005). Beginning E-Commerce in C# .

    Wikimedia. (2012). Wikepedia - ISS Services. Retrieved from Wikipedia:

    http://en.wikipedia.org/wiki/Internet_Information_Services