Sunteți pe pagina 1din 38

Functional

Architecture of E-
Commerce Systems

CSI 5389 (E-Commerce Technologies) 1


Outline
 What Is Architecture?
 Core Architectural Ideas
 Roles
 Components
 Examples of System Architectures

CSI 5389 (E-Commerce Technologies) 2


What Is Architecture?
 The architecture of a system defines its basic
components, important concepts, and describes the
relationships among them.
 Although architecture depends on the nature of the
business, many design ideas span a wide range of
business requirements.
 Reusing well-designed architectures and design work
where possible is best for customers.
 As a business refines and evolves, its systems needs to
evolve as well; so the architecture must be flexible
enough to make that growth possible.

CSI 5389 (E-Commerce Technologies) 3


Core Architectural Ideas
 Architectures for commerce systems may look very
different, but they all have to address the same issues.
These issues must be well understood no matter what
approach is taken.
 Sometimes it may seem that what we describe in the
architecture is so obvious that it need not be written down.
In practice, leaving the obvious as implicit issues can often
lead to later confusion and misunderstanding, because
everyone has different ideas of what is obvious.
 To be successful in designing Internet commerce systems,
we must be precise, not only in describing the
computational issues, but also in understanding and
describing what we are trying to achieve.
 In this section, we shall examine some primary elements
that go into a commerce architecture.

CSI 5389 (E-Commerce Technologies) 4


Core Architectural Ideas:
Understanding of Roles
 Two of the most basic questions for designing any
computer system:
 Who uses it?
 What do they do with it?
 Users of Internet commerce systems are rather
complicated:
 Buyers of goods and services
 Sellers of goods and services
 People who operate the system
 Understanding the various roles of users helps us to
design a system such that ALL users can use the system
effectively to accomplish their goals (whether that is
making a purchase or creating accounting reports).

CSI 5389 (E-Commerce Technologies) 5


Core Architectural Ideas:
Decomposition of Functions
 An important part of a system architecture is the way it
decomposes the system into functional units.
 The specification of these functional units and the
interfaces between them defines the architecture of the
system.
 One of the differences between architectures is often the
way that they group functions into units.
 Are all the components integrated in a single system?
 Are the components distributed across multiple systems?
 What are the interfaces between functional units?

CSI 5389 (E-Commerce Technologies) 6


Core Architectural Ideas:
Linking Content to Transactions
 The above two issues (i.e., roles and
decomposition) apply to the design of any
computer system.
 An architectural issue specific to the design of
Internet commerce system is the way that
content (such as a catalog) is linked to the
transaction processing.
 In a paper-based system, the buyer records item
numbers and quantities onto an order form.
Obviously, we would like to do this electronically.
 We shall consider the following key issues:
CSI 5389 (E-Commerce Technologies) 7
Core Architectural Ideas:
Linking Content to Transactions (cont.)
 How the user makes the transaction.
 The user may click the Buy Now button or Add Items
to a shopping cart for later purchase.
 The transition to the transaction takes place either at
the Buy Now point or at Checkout for the shopping
cart.
 How the information is verified.
 Itmay be necessary for the transaction system to
verify that the purchase information (e.g., price, item
ID etc.) was not modified when it was sent over the
network.

CSI 5389 (E-Commerce Technologies) 8


Core Architectural Ideas:
Linking Content to Transactions (cont.)
 How the information matches up.
 Some Internet commerce system has a real-time inventory check
to ensure the customer that the wanted items are in stock.
 If the system indicates that an item is in stock, how long is that
indication valid?
 If the customer puts an item in a shopping cart for later
purchase, does the system promise that the item will be
available when the actual purchase occurs?
 If the system does make such a promise, how long is it valid?
 What if the customer never returns to the site to buy the items
that he (she) has put in the shopping cart?
 Answers to these questions help make design decisions.
Different answers may lead to very different designs.

CSI 5389 (E-Commerce Technologies) 9


Core Architectural Ideas:
Trust Models
 In any distributed system, different components trust
each other to some extent.
 Some components may completely trust others for all
kinds of data access (i.e., both read and write access);
whereas other components may disallow any remote
access to their data.
 The specification of these relationships is called the
trust model for the system.
 Specifying a trust model explicitly helps us to understand
the details of the relationships between components
when we need to analyze the security of the system.

CSI 5389 (E-Commerce Technologies) 10


Roles
 Many different people interact with an Internet commerce
system, and they need to do different things.
 Buyers require one set of operations.
 Catalog designers, customer service representatives, and
system operators each require their own sets of operations.
 Considering roles separately enables us to
 satisfy the requirements of businesses of all sizes
 design a flexible system that allows a smaller business to grow
smoothly without having to reconsider what people do at each
stage.
 Note that there may be people playing many different
roles in a small business, and there may be many people
playing the same role in a larger organization.

CSI 5389 (E-Commerce Technologies) 11


Customer Roles
 In any commercial transaction, there is a buyer and
there is a seller.
 We use many different words for the buyer: customer,
consumer, client, browser, etc.
 There are different roles on the buyer side:
 Specifier selects what is to be purchased.
 Approver approves a purchase recommended by the specifier.
 Buyer negotiates the terms and conditions of a purchase and
arranges for payment.
 Recipient receives the delivered goods or services.
 In some cases such as a consumer purchase, the same
person plays all of the roles without even thinking about
the differences.
 Example: A consumer buying a shirt selects one in a store, pays
for it, and takes it home.

CSI 5389 (E-Commerce Technologies) 12


Customer Roles (cont.)
 In the cases of businesses making purchase, it is useful
to consider the various roles.
 Example: Consider an organization that purchases electronic
components for assembling computers.
 The specifying engineer determines which components to be
purchased.
 A purchasing agent negotiates the payment terms.
 The manufacturing group receives the components.
 Different kinds of buyers can be classified based on their
relationships with the seller.
 An anonymous buyer (or walk-in customer) has no prior
relationship with the seller, and may not ever create one beyond
making a simple purchase.
 A member customer is one who repeatedly purchase from a
seller and has established some kind of relationship (e.g.,
membership).
CSI 5389 (E-Commerce Technologies) 13
Customer Roles (cont.)
 Different customer roles tell us that an Internet
commerce system should provide ways for different
people to handle different parts of a transaction, but it
should also be simple for a single person to handle all of
them.
 Consumers do not need to change roles explicitly at
every stage, but they do expect to have a quick and easy
process for buying.
 Companies that make distinctions in various roles want
to be able to handle the transaction from one role to
another smoothly and efficiently.

CSI 5389 (E-Commerce Technologies) 14


Business Roles
 On the other side of a transaction is the seller.
 There are many roles for sellers in an Internet
commerce system.
 There are two main groups of roles:
 The business and content creation group
 The operations group
 Thinking about roles early will make it possible
for an Internet business to grow more smoothly,
as more people join the business and the roles
become more distinct in reality.

CSI 5389 (E-Commerce Technologies) 15


Business & Content Creation Group
 Business Manager
 Responsible for the business approach, deciding which products
and services are to be sold online, determining pricing, and
establishing the key business relationships needed to make the
venture successful.
 Internet Commerce Architect
 Responsible for turning the business requirements into a system
design.
 Content Designer
 Responsible for the feel and look of the Internet commerce
system, including graphic design, page layout etc.
 Content Author
 Responsible for creating product information in a form that can
be used for Internet commerce, working within the design laid
out by the content designer.

CSI 5389 (E-Commerce Technologies) 16


Business & Content Creation Group (cont.)
 Implementor
 Responsible for creating any programs or software extensions
needed to make the Internet commerce system work (e.g.,
writing a program that takes product information from a database
and dynamically renders it into a Web page).
 Database Administrator
 Manages the creation and operation of the database to ensure
correctness, integrity and performance.
 Sales and Marketing Team
 Responsible for promoting the Internet-based commerce for the
business.
 Customer Service Representative
 Responsible for answering questions about products, assisting
buyers with the purchasing process, responding to inquiries
about order status and problems after sale etc.

CSI 5389 (E-Commerce Technologies) 17


Operations Team
 Operations Manager
 Responsible for managing all service activities of the Internet
commerce system.
 System Supervisor
 Manages the system staff.
 System Administrator
 Responsible for the technical operations of the computer
systems and networks.
 Security Officer
 Ensures that appropriate security measures have been taken in
the design and implementation of the Internet commerce system.
 Fulfillment Agent
 Responsible for shipping and handling goods and services.
 Accountant
 Responsible for ensuring that the proper accounting procedures
have been followed for online transactions, managing relevant
business records, creating reports on transactions etc.

CSI 5389 (E-Commerce Technologies) 18


Roles and Reality
 The roles described above are probably not exactly the
roles found in any particular business.
 It is unlikely that there is a one-to-one correspondence
between these roles and the people doing real work.
 However, thinking about roles instead of people helps us
to ensure that we are not missing any important function
as we design the system and put together a team to
operate it.
 Thinking about roles also helps if some work should be
outsourced.
 Some of the roles (e.g., the operational ones) can be outsourced
relatively easily.
 Others such as deciding which products are to go into the online
catalog are business decisions that should not be handed off to
others.

CSI 5389 (E-Commerce Technologies) 19


Components
 Another important aspect of a system architecture is
the set of components that comprise the system.
 For Internet commerce, we should try to take
advantage of general-purpose Internet applications
(such as the Web browsers and servers), for 3
reasons:
 If general-purpose applications can be used, we do not need
to build them again.
 General-purpose applications are widely distributed, so we do
not need to create a distribution channel to put a specialized
tool in the hands of customers.
 Customer are already familiar with general-purpose
applications, so they do not need to learn how to use them.
 There are, of course, times when it is appropriate to
create and distribute a specialized tool to customers.

CSI 5389 (E-Commerce Technologies) 20


Customer Components and Clients
 For customers, the primary tool for using the WWW is a
browser (also called a Web client).
 The system architecture is influenced by the basic
structure of the Web, and in particular by the capabilities
of browsers.
 Some companies have developed specialized client
applications (called client wallets) to implement
payment methods on the client computer.
 Client wallets can perform cryptographic operations, keep track
of transactions, check on order status, and manage other
information related to transactions.
 The main problem with client wallets is that hardly any
customers have them. Moreover, customers are usually not
interested in installing them.

CSI 5389 (E-Commerce Technologies) 21


Seller Components and Servers
 The seller (also called merchant or vendor)
provides all the components of the commerce
value chain.
 In practice, a seller may provide some components of
the commerce value chain and contract with others to
provide the rest.
 Different sellers make different decisions about which
stages of the value chain to be provided directly and
which stages to be outsourced.
 Below are some common components:

CSI 5389 (E-Commerce Technologies) 22


Seller Components and Servers (cont.)
 Content management system
 Refers to the seller’s catalog or the entire Web presence.
 Permits the creation and management of dynamic and
continually updated content.
 Transaction processing system
 Keeps track of all transaction-related information (e.g., what was
ordered, who ordered it, the price, the status of payment, the
status of fulfillment etc.)
 Payment processing system
 Manages the movement of money and other payment
instruments in the system.
 Example: When a customer pays with a credit card, the seller
connects to a credit card payment processor to authorize the
transaction (by checking for sufficient available credit).
 Fulfillment system
 A business may choose to manage fulfillment process in-house
or contract with a fulfillment company to handle packing and
shipping of products.
CSI 5389 (E-Commerce Technologies) 23
Examples of System Architecture
 We shall look at 4 different architectures:
 Web server with order form (also called “merchant server”)
 Open market distributed commerce architecture
 Federated commerce system
 Business-to-business commerce system
 For analysis of architecture, we consider 4 primary components:
 Client: computer system connected to the Internet either directly
via an Internet service provider (ISP), or indirectly through a
corporate network. The buyer uses the client computer for
browsing and purchasing.
 Merchant: computer system(s) that contain the seller’s e-catalog
of products for over-the-Net fulfillment.
 Transaction system: computer system(s) responsible for
processing orders, payment, record keeping, and other
transaction-related aspects.
 Payment gateway: computer system that routes payment
instructions into existing financial networks (e.g., for credit card
authorization and settlement).

CSI 5389 (E-Commerce Technologies) 24


Examples of System Architecture:
Web Server with Order Form
Web Server

Financial
Internet Network

Catalog and
Order Database

Buyer with Browser

CSI 5389 (E-Commerce Technologies) 25


Examples of System Architecture:
Web Server with Order Form (cont.)
 This architecture is also known as merchant server.
 The merchant server and transaction server are combined into a
single Web server to provide both the catalog content and the order
form.
 There is no explicit payment gateway.
 The catalog may consist of a set of Web pages describing items for
sale, with embedded pictures, video or audio clips etc.
 The Web pages may be created as static using an HTML editor, or
may be created dynamically from a database of items and
descriptive information.
 Next to each item is a button that the customer can click to buy the
item or to add it to a shopping cart for later checkout.
 When ready to purchase, the customer clicks a Checkout button to
start the payment process.

CSI 5389 (E-Commerce Technologies) 26


Examples of System Architecture:
Web Server with Order Form (cont.)
 Payment by credit card is the most common method used on
Internet today for consumer transactions.
 A simple online order form consists of a list of items being
purchased and a set of fields for the customer to enter credit
card information (e.g., card holder’s name, card number,
expiration date) and the delivery address.
 The Web client does not need to have any special capabilities
for the payment mechanism. So, no specialized software is
required.
 This architecture is simple. It may be appropriate and
sufficient for some kinds of Internet commerce applications.
 On the other hand, it may be more difficult to expand this
architecture as the online business grows, or to incorporate
new technologies and components as they become available.
 Many technical details will become clearer as we discuss the
technology in later lectures.
CSI 5389 (E-Commerce Technologies) 27
Examples of System Architecture:
Open Market Distributed Commerce Architecture
(Physical View)

Catalog
Servers
Financial
Network

Internet Shared
Transaction
server

Buyer with Browser

CSI 5389 (E-Commerce Technologies) 28


Examples of System Architecture:
Open Market Distributed Commerce Architecture (cont.)

 An approach to distributed transactions originally created


at Open Market
 The core idea of this architecture is to separate the
content management from the transaction management
 Transaction server is separated from the merchant server.
 Multiple catalog (merchant) servers can share the capacity of a
single transaction server.
 Content-oriented parts of the system can scale independently
from the transaction-oriented parts.
 This architecture allows separate management of different
system facilities (e.g., security).
 There may or may not be a separate payment gateway,
depending on which payment methods are supported.

CSI 5389 (E-Commerce Technologies) 29


Open Market Distributed Commerce Architecture
(Logical View)
Shared Transaction Server
Catalog Server
Customer Data Order Data Payment Data

Catalog Database Data Management


(items and
pricing)

Order Capture

Completion

Processing
Management

Fulfillment

Customer
Payment

Service
Customer

Order
Catalog Application

SecureLink
SecureLink
Web Server
Web Server

Internet
CSI 5389 (E-Commerce Technologies) 30
Federated Commerce System (FCS)
 FCS is a system made up of servers operated by
different organizations and tied into an overall (perhaps
global) commerce system by Web services and a
collection of service agreements.
 Consumers are members of communities of interest,
which provide authentication and customer services.
 When a consumer buys something, the necessary
payment and shipping information is routed from her
home community to the seller.
 The seller may also use some of the federated services
for payment and other functions.
 At the conclusion of the transaction, a record is posted to
the consumer’s online statement held by her home
community.

CSI 5389 (E-Commerce Technologies) 31


Federated Commerce System Architecture
Customer
Buyer’s
Community

Internet
Seller

Clearinghouse

Logistics Payment
Service Service

CSI 5389 (E-Commerce Technologies) 32


Federated Commerce System (cont.)
 Clearinghouse:
 Responsible for tying the network together.
 Permits the seller to locate a buyer’s home community and helps
establish peer-to-peer connection among the various
participants.
 Customers
 Browse information, make purchases, and request for customer
service.
 Home communities
 Consumers join home communities on the basis of interests,
services offered, or the degree of privacy protection offered.
 Sellers
 Includes merchants, service providers, and publishers.
 Payment service
 Provides support for various payment mechanisms as a Web
service.
 Logistics service
 Handles shipping, returns, and other services.

CSI 5389 (E-Commerce Technologies) 33


Business-to-Business Commerce System

 One architecture for business-to-business


commerce system was proposed by the Open
Buying on the Internet (OBI) Consortium.
 The core idea of the OBI architecture is to split
the functionality of the commerce system
between buy-side activities and sell-side
activities so that each organization manages
those functions logically connected to it.
 Let us walk through an OBI transaction:

CSI 5389 (E-Commerce Technologies) 34


Business-to-Business Commerce System:
OBI Architecture and Transaction Flow
Requisitioner Seller Catalog Server
1. Requisitioner 2. Requisitioner browses
selects supplier catalog and orders

Buyer Purchasing
Server (with list of 3. Catalog server routes
suppliers) order to OBI server

5. Buyer approves
requisitioner’s order 7. Seller routes
order for
4. Seller sends OBI order
fulfillment and
request to buyer
payment

6. Buyer sends Seller OBI Server Seller


Buyer OBI Server complete OBI order Fulfillment
to seller Systems

CSI 5389 (E-Commerce Technologies) 35


Business-to-Business Commerce System (cont.)
1. The requisitioner uses a Web browser to connect to the buyer
purchasing server and selects a hyperlink to the seller catalog
server.
2. The seller catalog server authenticates the requisitioner based on
a digital certificate signed by the buyer, and allows the
requisitioner to browse, select items, and check out.
3. The seller catalog server sends the content of the order to the
seller OBI server.
4. The seller OBI server maps the order into an OBI order request,
encapsulated in an OBI object with optional digital signature, and
sends the order request to the buyer OBI server over the Internet.
5. The requisitioner specifies any annotations to the order, and
internal approval process takes place.
6. The completed and approved order is mapped into an OBI order
format, encapsulated as an OBI object, and sent back to the seller
OBI server via the Internet.
7. The seller obtains payment authorization if necessary and begins
order fulfillment.

CSI 5389 (E-Commerce Technologies) 36


Business-to-Business Commerce
System (cont.)
 The real benefit of the OBI architecture can be
seen only when there are multiple buy-side
companies trading with multiple sell-side
companies.
 When this happens, the buyer is able to manage
its requisitioner database and approval system
centrally, and it can use those systems
seamlessly with multiple trading partners.
 Similarly, the seller can leverage a master
catalog and order management system to serve
multiple buyers.

CSI 5389 (E-Commerce Technologies) 37


References
 G. Winfield Treese and Lawrence C.
Stewart. Designing Systems for Internet
Commerce (2nd edition): Chapter 6.
Addison Wesley.
 Dr. Thomas Tran Slides

CSI 5389 (E-Commerce Technologies) 38

S-ar putea să vă placă și