Functional Architecture of ECommerce Systems CSI 5389 ECommerce

  • Slides: 38
Download presentation
Functional Architecture of ECommerce Systems CSI 5389 (E-Commerce Technologies) 1

Functional Architecture of ECommerce Systems CSI 5389 (E-Commerce Technologies) 1

Outline What Is Architecture? n Core Architectural Ideas n Roles n Components n Examples

Outline What Is Architecture? n Core Architectural Ideas n Roles n Components n Examples of System Architectures n CSI 5389 (E-Commerce Technologies) 2

What Is Architecture? n n The architecture of a system defines its basic components,

What Is Architecture? n n 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 n n Architectures for commerce systems may look very different, but

Core Architectural Ideas n n 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 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 n Two of the most basic questions for

Core Architectural Ideas: Understanding of Roles n Two of the most basic questions for designing any computer system: ¨ ¨ n Users of Internet commerce systems are rather complicated: ¨ ¨ ¨ n Who uses it? What do they do with it? 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 n n n An important part of a

Core Architectural Ideas: Decomposition of Functions n n n 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 n n The above two issues (i.

Core Architectural Ideas: Linking Content to Transactions n n 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. ) n How the user makes

Core Architectural Ideas: Linking Content to Transactions (cont. ) n 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. n How the information is verified. ¨ It may 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. ) n How the information matches

Core Architectural Ideas: Linking Content to Transactions (cont. ) n 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 n n In any distributed system, different components trust

Core Architectural Ideas: Trust Models n n 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 n Many different people interact with an Internet commerce system, and they need

Roles n Many different people interact with an Internet commerce system, and they need to do different things. ¨ ¨ n Considering roles separately enables us to ¨ ¨ n Buyers require one set of operations. Catalog designers, customer service representatives, and system operators each require their own sets of operations. 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 n n n In any commercial transaction, there is a buyer and

Customer Roles n n n 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. ¨ ¨ ¨ n 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. ) n In the cases of businesses making purchase, it is

Customer Roles (cont. ) n 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. ¨ n 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. ) n n n Different customer roles tell us that an

Customer Roles (cont. ) n n n 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 n n n On the other side of a transaction is the

Business Roles n n n 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 n business and content creation group 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 n Business Manager ¨ n Internet Commerce Architect ¨

Business & Content Creation Group n Business Manager ¨ n Internet Commerce Architect ¨ n Responsible for turning the business requirements into a system design. Content Designer ¨ n 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. 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. ) n Implementor ¨ n Database Administrator ¨

Business & Content Creation Group (cont. ) n Implementor ¨ n Database Administrator ¨ n Manages the creation and operation of the database to ensure correctness, integrity and performance. Sales and Marketing Team ¨ n 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). 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 n n n Operations Manager ¨ Responsible for managing all service activities

Operations Team n n n 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 n n The roles described above are probably not exactly the

Roles and Reality n n 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 n n Another important aspect of a system architecture is the set of

Components n n 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: ¨ ¨ ¨ n 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 n n n For customers, the primary tool for using

Customer Components and Clients n n n 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 n The seller (also called merchant or vendor) provides all

Seller Components and Servers n 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. n Below are some common components: CSI 5389 (E-Commerce Technologies) 22

Seller Components and Servers (cont. ) n n Content management system ¨ Refers to

Seller Components and Servers (cont. ) n n 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 n n We shall look at 4 different architectures: ¨

Examples of System Architecture n n 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 Network Internet

Examples of System Architecture: Web Server with Order Form Web Server Financial Network Internet Catalog and Order Database Buyer with Browser CSI 5389 (E-Commerce Technologies) 25

Examples of System Architecture: Web Server with Order Form (cont. ) n n n

Examples of System Architecture: Web Server with Order Form (cont. ) n n n n 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. ) n n n

Examples of System Architecture: Web Server with Order Form (cont. ) n n n 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 Internet

Examples of System Architecture: Open Market Distributed Commerce Architecture (Physical View) Catalog Servers Internet Financial Network Shared Transaction server Buyer with Browser CSI 5389 (E-Commerce Technologies) 28

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

Examples of System Architecture: Open Market Distributed Commerce Architecture (cont. ) n n 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). ¨ n 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 Customer Data Catalog Database

Open Market Distributed Commerce Architecture (Logical View) Shared Transaction Server Customer Data Catalog Database (items and pricing) Customer Service Fulfillment Payment Processing Order Capture Secure. Link Payment Data Management Customer Management Catalog Application Order Data Order Completion Catalog Server Secure. Link Web Server Internet CSI 5389 (E-Commerce Technologies) 30

Federated Commerce System (FCS) n n n FCS is a system made up of

Federated Commerce System (FCS) n n n 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 Service CSI 5389

Federated Commerce System Architecture Customer Buyer’s Community Internet Seller Clearinghouse Logistics Service CSI 5389 (E-Commerce Technologies) Payment Service 32

Federated Commerce System (cont. ) n n n Clearinghouse: ¨ Responsible for tying the

Federated Commerce System (cont. ) n n n 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 n n n One architecture for business-to-business commerce system was proposed

Business-to-Business Commerce System n n n 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 1. Requisitioner selects supplier Seller

Business-to-Business Commerce System: OBI Architecture and Transaction Flow Requisitioner 1. Requisitioner selects supplier Seller Catalog Server 2. Requisitioner browses catalog and orders Buyer Purchasing Server (with list of suppliers) 3. Catalog server routes order to OBI server 5. Buyer approves requisitioner’s order 7. Seller routes order for fulfillment and payment 4. Seller sends OBI order request to buyer Buyer OBI Server 6. Buyer sends complete OBI order to seller Seller OBI Server CSI 5389 (E-Commerce Technologies) Seller Fulfillment Systems 35

Business-to-Business Commerce System (cont. ) 1. 2. 3. 4. 5. 6. 7. The requisitioner

Business-to-Business Commerce System (cont. ) 1. 2. 3. 4. 5. 6. 7. The requisitioner uses a Web browser to connect to the buyer purchasing server and selects a hyperlink to the seller catalog server. 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. The seller catalog server sends the content of the order to the seller OBI server. 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. The requisitioner specifies any annotations to the order, and internal approval process takes place. 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. The seller obtains payment authorization if necessary and begins order fulfillment. CSI 5389 (E-Commerce Technologies) 36

Business-to-Business Commerce System (cont. ) n n n The real benefit of the OBI

Business-to-Business Commerce System (cont. ) n n n 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 (2

References G. Winfield Treese and Lawrence C. Stewart. Designing Systems for Internet Commerce (2 nd edition): Chapter 6. Addison Wesley. n Dr. Thomas Tran Slides n CSI 5389 (E-Commerce Technologies) 38