Servers for E-Business MGS 659 Dr Rao Chapter 6 1 Learning Objectives Identify Components of an e-commerce platform Select appropriate platforms for various situations. Distinguish between critical and non-essential features of an e-commerce architecture. List the components necessary for front-end and back-end of e-commerce transaction systems Elicit the steps involved in establishing an ecommerce web site. 2 Overview Platform = Hardware + basic software required to run the computer. Functions of a computer: 1. 2. 3. 4. Interface logic, Business application, Database and Display. 3 Computing architecture Shift from: Centralized mainframe computing To: Distributed processing of clients and server Two-tier architecture: Server, at the back end, manages the essential functions like disk drives, printers, network traffic and some applications. Clients’ computers are at the user’s end, mainly personal computers, which run applications. They display data in text mode or graphical user interface. Multi-tier architecture: Additional layers of computer servers have been added between the client and the server in the Network. 4 Phases of e-commerce architecture First step: Placing the company’s information about products, prices, promotional schemes etc. on the web using a web server. Second step: Receiving orders, managing inventory and collecting invoices. Third step: Redesigning business process and supply chain in order to take full advantage of the technology. (Most challenging part as multiple components on multiple platforms have to be integrated). Achieved through Enterprise Resource Planning, Supply Chain Management and Customer Relationship Management. 5 Basic e-commerce architecture 6 Overview of computing Platforms In the 1960s –Mainframe computing, centralized operations Next, mini computers 1980s – Client/Server architecture Presently – heterogeneous Internet platform. 7 Host-Based Platform Centralized computing (one main server and many dummy terminals) A single powerful computer server performs all the important functions. Dummy computer terminals are at the other end, used for requesting a task or displaying results. No processing is done at the dummy terminals. Only display is done here. A database engine on the server provides shared data processing functions to all other applications. Jobs are executed in batches. Often, Front-end processor (FEP) is inserted between the two computers for connection and authorization services. 8 Client/Server Platform Distributed computing (between one server and many clients). In a traditional C/S system, the server performs only database function, while the client carries out the other three. Fat client- display + interface logic, business application, significant amount of database processing. Thin client- display + interface logic only 9 Host Vs Client server systems. 10 Differences between a host-based system and a C/S system Client in a C/S system is a much powerful computer, usually a personal computer or computer workstation. Client performs larger amount of functions. The interface in C/S system through graphical user interface. Depending on the application, the network capacity may be high or low. 11 Technologies used on the local area networks include Communication protocols: Transmission Control Protocol/ Internet Protocol (TCP/IP), Novell network protocol (SPX/IPX), Sequenced Package Exchange (SPX). TCP/IP - a suite of communications protocols used to connect hosts on the Internet. In-built into UNIX operating systems, SUN Solaris and Linux. 12 World Wide Web Platform WWW - a subset of wide area network. Private or leased lines for implementing C/S system in a wide area network. WWW is a vast distributed network of millions of servers where information is stored and which can be accessed and retrieved from other computers. Language used for web pages – HTML (Hyper Text Markup Language) TCP/IP followed for sharing and sending of data from the web servers to the browsers at the client’s end. 13 WWW as an special case of C/S system a n-tier distributed C/S system. Web servers – dedicated machines acting as repositories for web pages. Web servers consist of hardware, O.S., web server software.. At the client’s end, the software required to view the web pages on personal computer is called a browser. Browsers – Netscape Navigator, Microsoft Internet Explorer, and Opera Browser, and mobile micro-browser. 14 Internet mechanism In WWW, any web server on any platform can interact with any browser running on any client machine connected through the Internet. Linking the clients and server through dial-up connection, a privately leased line, digital subscriber line (DSL) or cable modem. Access to the internet provided by Internet Service Providers like AOL, CompuServe, Prodigy or Telephone companies. 15 Internet – fig 6-4 16 Components of an e-commerce website 1. Informational website hosted on a web server on the company’s side 2. Web server on the visitor’s side 3. Access to e-mail for both the business and the client 4. the core editing/development tools associated with the platform. 17 Fig 6-5 heterogeneous system. 18 Additional functionalities of the website Secure transactions using sophisticated software and hardware. Links to back-end processing. Links to external credit-checking and payment processing centers. Delivery mechanism linking to the warehouse and shipping center. 19 Complex e-commerce architecture 20 Enterprise Resource Planning (ERP), Supply Chain Management (SCM), Customer Relationship Mgmt (CRM) provide competitive advantage to a firm vis a vis its competitors today. 21 Fig 6-7Integrated e-business 22 Components of E-commerce Clients (with access to internet) Internet Routing devices at the boundary of the enterprise. Extra devices to defend the perimeter against potential hackers. Web server / commerce server Application servers (in advanced systems) Back-end transactional software (includes TP monitors, database management system and data warehouse). 23 TP monitor A program that monitors a transaction as it passes from one stage in a process to another. It ensures that a transaction is completed successfully, or roll-back occurs, partial transactions are prevented. TP is important in three-tier architectures that employ load balancing. TP coordinates ERP, SCM and CRM. 24 Web Browsers Not all browsers support all web functionalities. Originally Lynx was developed to display limited text. Later, graphics was added. Later iterations, a range of functionalities added, at the cost of computing resources and slower download. 25 Major players in the browser market Microsoft Internet Explorer (I.E.) and Netscape Navigator. I.E. is more integrated with desktop operating system (mainly Windows), which is also a Microsoft product. Netscape did not have a new product release between 1998 and 2000 and lost the number one position, which it held only three years ago to I.E. I.E now claims more than 3/4th of the market. Both are freely available for the end user. 26 Microsoft Internet Explorer Browser for display of web pages. NetMeeting for collaboration FrontPage Express for building Web pages. Outlook Express for fully functional e-mail. Supports FTP, Gopher, NNTP, JavaScript, ActiveX controls etc. Java applets can be executed in version 5.x I.E. 6.0 strongly supports VBScript 27 Netscape Communicator Netscape Navigator browser Netscape Messenger (fully configurable e-mail client) Netscape Composer (HTML editor) Netscape Conference (for telephony interface) Collabra discussion (for news groups) Netcaster (for push technology) Add-ins compatibility. Java applets can be executed. Netscape 6.x based on Mozilla (an open-source code) supports XML, though less stable. 28 Other Browsers -Opera software Optimizes space and speed. Strict adherence to HTML standards Sophisticated and speedy web-browsing with news and e-mail Secure 128-bit SSL encryption. Ideal for older machines and mobile computing with less available memory or disk space. Soon the BeOS, Linux and Mac versions will also be available. Freely available for download (in advertising mode) . 29 HotJava Java web browser from SUN has small requirements and is designed to work on a variety of devices. Not widely used 30 Microbrowser Wireless devices are constrained computing device with limited CPU, memory, battery life, and simple user interface; wireless networks are restricted with low bandwith, high latency, and unpredictable availability and stability. wireless subscribers have different needs and desires than desktop, or even laptop Internet users WAP (Wireless Application Protocol) specification was developed to address the technical requirements and market issues unique to the wireless environment. 31 Microbrowser e.g. OpenTV, 4thpass, Nokia, PIXO… 32 Mozilla An open source project from Mozilla.org A modular web browser, designed for standards compliance, performance and portability Platform-independent DocZilla- the latest project with enhanced support for XML and SGML by Finnish company CiTEC. 33 Web Servers A Web Server is a computer and associated software that is attached full-time to the internet. The main software component is HTTP (HyperText Transfer Protocol) server, to process http requests. Called httpd in UNIX and https in Microsoft Windows NT/2000. 34 Constraints in selecting a Web server in an e-commerce project Legacy software Back office Network Administrator preferences Web development skills of the staff 35 Selecting a web server Performance – minimum wait time for downloading Development – where initial content can be developed and maintenance is not overly difficult. Security – different levels of access rights to the users. Multiple types of CPU, hardware and operating system should be supported. Multi- platform solution – for longevity of the system without being tied to one particular CSP. Clustering capabilities and automatic fail-over. Stability and reliability. 36 Functionality Checklist High performance HTTP engine Connections per second or requests per second Bytes per second Round trip or response time Errors Functional compliance with HTTP version 1.1 or later. Scalability of the architecture Integration of clustering for fault-tolerance, load balancing and reliability 37 Functionality Checklist contd.. Interface to the back end applications Common gateway interface (CGI) Cross platform interoperability Java servlets and Java server pages Open database connectivity (ODBC) Remote method invocation (RMI) 38 Functionality Checklist contd.. Publishing capability Management and administration Availability of server for lengthy operations without interruptions Ability of the web server to add functionality and to control the website’s content. Security 39 Web server and supported platforms Apache Web server Netbsd, unix, aix, os/2, windows nt, linux, solaris… Commerce server/400 As/400 Microsoft IIS 5+ Windows 2000+ Lotus Domino Go Unix, os/2, windows NT, Solaris iPlanet Enterprise Unix, AIX, Windows NT… 40 Management issues in selecting a web server Product feature set, current availability and the likely product evolution path. Security (trade-in with high performance speed) Built-in database connectivity and the availability of application development tools. Manufacturer’s reputation, quality of technical support, prior experience with a particular manufacturer. Purchase price, licensing and maintenance cost. 41 Present web server market Apache – 60 % of market share MS Internet Information Server – 19 % Netscape Communications Enterprise server (now iPlanet Enterprise Server) – 6 %. 42 Apache Web Server From www.apache.org Available for free Highly reliable and stable Available for many platforms, in both binary and source code format Since, it is open-source, bug-fixes are rapid and timely. Demerits: Production version of server is not very user friendly, textual user interface. Comanche (Configuration Manager for Apache) is an effort to have GUI for users, across various platforms. 43 Microsoft Internet Information Server From Microsoft a leading supplier of IT. Distributed as a free component with NT server, tuned for performance on the Intel platform. Personal Web Server (PWS) for small scale personal use on Windows 95 and 98. IIS runs on a single platform (Intel processors on Windows NT OS). Many add-ins available (database access tools, emails, security etc.) Serious security questions 44 IIS and Management console 45 iPlanet Enterprise Server From Netscape Communications (part of AOL now) The Netscape Enterprise administrative console is intuitive to use, manage and configure. Supports a range of platforms including Sun Solaris and Windows NT. Highly stable, seldom requires re-booting. Comparable to the other two dominant servers in the market. Configure through Web User Interface (WUI). WUI can be used to set up the server with I.E. or Netscape Navigator browser. Supports Java applets. 46 IBM Lotus Domino Server From the stable of IBM. Now being supplanted by IBM HTTP Server powered by Apache. Offers integrated messaging and web application software platform for growing companies seeking improved customer responsiveness and streamlined business processes. 47 Monitoring Web Server Performance Overall network traffic Performance of web server software and platforms. The load generator (clients) Workloads Measurement and metrics 48 Performance Planning and Monitoring Tools Analysis of logs of active servers Instrumentation of network Server operating systems Web software Laboratory testing (benchmark) 49 Sample Monitoring Tools Webstone from Mindcraft WebBench 3.0 by Ziff Davis SPECweb96 from Standard Performance Evaluation Corporation Web Capacity Analysis Tool (WCAT) and InetLoad from Microsoft WebSizr and WebCorder from Technovations 50 Log analysis (for business intelligence) Recording the date and time a visitor visits and leaves the page Net.Analysis and CartSmarts from Net.Genesis Aria by Andromedia (part of Macromedia) WebTrends With recent failure of dot coms, log analysis has become even more important. Number of software vendors providing these solutions is increasing rapidly. 51 Application Servers and Database Servers Advanced e-commerce websites will have additional layers of servers Application Servers, Mail servers, Certificates server, Multi-media server, Database Servers 52 Application Server An extension of middleware solution Introduced in order to isolate the business logic in projects Facilitates multi-tier applications with flexible connections. 53 Checklist for buying Application software What platforms are supported by the software? Manufacturer’s present and future business risk (going concern). What programming language interface does the application server support? What portion of existing applications portfolio will have to be re-written to accommodate the new environment. What interfaces to the existing database management system are feasible? Direct and indirect costs of purchasing the software, future incremental costs 54 Current trends Most vendors now focus on e-commerce integration and e-business (database integration with ERP, Accounting Systems, OLAP, CRM, SCM etc.) 55 Enterprise Resource Planning (ERP) Was Inward looking now moves to Outward looking system For full integration of all the activities of a firm and improve efficiency of workflow. 56 Supporting technologies HyperText Transfer Protocol (HTTP) Common Gateway Interface (CGI) Practical Extraction & Reporting Language (PERL) Application Service Provider (ASP) Active Server Page (confusingly, also ASP) ActiveX Java applets Java Servlets Java Server Pages (JSP) 57 Supporting technologies contd.. Component Object Model (COM and COM+) Distributed Component Model (DCOM) Common Object Request Broker Architecture (CORBA) JavaBeans 58 HyperText Transfer Protocol (HTTP) Underlying set of rules / protocols used by the World Wide Web. It determines how messages are formatted and exchanged How should the web servers and browsers react to various commands. In its secure mode https with certificates. 59 Common Gateway Interface (CGI) A set of standards for transferring data between a web server and a CGI program A standard way for web servers to interact dynamically with users. 60 Practical Extraction & Reporting Language (PERL) A programming language for processing text. Still is dominant tool to write CGI scripts on UNIX platform. Open interpreted language 61 Application Service Provider (ASP) An user does not have to purchase the application but uses the applications at the service provider’s server remotely. Has serious security implications 62 Active Server Page (yes, also ASP) A specification for viewing dynamically created web page that utilizes ActiveX scripting. Customized page for an individual viewer. 63 ActiveX A set of scripts or programs that run on the user’s machine rather than on the web server. They are the rules for how applications should share information dynamically. E.g. Java applets, Java scripts, ActiveX controls. These ActiveX controls can be written in many languages (C, C++, VB, Delphi & Java). 64 Java applets Java applets are programs executed from within another application, e.g. a web browser Unlike an application, applets cannot be executed directly from the operating system. 65 Java Servlets Similar to applets, but run on servers Similar to CGI programs, but unlike CGI we do start the program only once in a session and it lies in memory for next use. 66 Java Server Pages (JSP) Similar to Active Server Pages Differs from ASP as the language here is Java instead of Microsoft Visual Basic. Advantages include portability, modularity, security and scalability. 67 Component Object Model (COM and COM+) A model for binary code that enables programmers to develop objects that can be accessed by any other COM-compliant application. A framework for developing and supporting program component objects. Both OLE and ActiveX are based on COM. 68 Distributed Component Model (DCOM) An extension of COM A set of Microsoft program interfaces in which client program objects can request services from server program objects on other computers in a network. 69 Common Object Request Broker Architecture (CORBA) Allows common objects (which are pieces of programs actually), to communicate with one another, irrespective of the programming language they are written in or the operating system they run on. Developed by an industry consortium called Object Management Group. Interface through Inter-ORB Protocol (IOP) On the internet, communicate through Internet InterORB Protocol (IIOP) 70 JavaBeans Specification developed by Sun Microsystems on how Java objects should interact. Similar to ActiveX controls of Microsoft. Differs from ActiveX as JavaBeans can be developed only in Java but can run on any platform, whereas ActiveX controls can be developed in any programming language, but run only on Windows platform. 71 Developing an E-Commerce platform One of most important decisions Build, Buy, Rent e-commerce solutions? Where to start? Scope of the project? 72 Deployment Practices 73 Alternative scenarios Informative site (no transaction capability), mainly static pages. For small businesses - Transaction processing through a CSP. OLM with Miva Order has a web-based order processing system. ZShops from Amazon.com E-BizBuilder Yahoo!Store from Yahoo! Inc. 74 Selecting a Commerce Service Provider (CSP) Factors that facilitate the building of the site 2. Factors that enhance the image of the vendor 3. Factors that facilitate transactions 4. Factors that expedite shipping and payment. 1. 75 Factors facilitating the building of the site Portability of the site Bandwidth of the host site Maximum number of items in the catalog Types of servers used Support and back up systems offered 76 Factors that enhance the image of the vendor Flexibility of site-building process Look and feel of the site Promotional capabilities (opportunities for cross-selling, referral, affiliate program etc.) 77 Factors that expedite transactions Order notification (via e-mail, paging, fax, etc.) Administration security (encryption, firewalls) e-Mail capabilities (FAQ, Support, return…) 78 Factors that facilitate shipping and payment Automatic tax calculation Payment options (credit card, cybercash etc.) Calculation of shipping charges (base and weighted) International trade (cross border, in various currencies) 79 Pricing structure of a service depends upon Number of items listed The bandwidth available or used The storage space Number of e-mail accounts provided 80 Evaluation criteria for an enterprise commerce server Functionality (User interface, security, payment services, OLAP etc.) Cost (of acquisition, license fee, application development, customization, additional hardware and networking devices). Time to market Ease of use for developers, content managers and customers Performance from an internal and customer perspective Extensibility – the ability to integrate with third-party add-ons. Flexibility and nimbleness 81 Elements of a planning pipeline Collection of product information Merchant information Shopper information Order initialization Order check Item pricing Item price adjustment Order total Shipping arrangement Handling arrangement Taxation Inventory management 82 Elements of purchase pipeline Checking the order Checking the payment Accepting the contract 83 E-Commerce Solutions Company size customization hosting package Transaction volume Nature of site Small Low ISP Custom None Information site Small Medium ISP Entry Low Entry-level transactions Small High ISP Entry+ Low High impact, low budget Medium Low CSP Package Low Low impact, supp. Channel Medium Medium Host Package+ Medium Important medium budget Medium High Host/CSP Custom High High impact high budget Large Low CSP Integrated Package Medium Low impact supp. Channel Large Medium Host Integrated Package+ High Strategic integration large high Host/CSP Components Custom High Strategic competitive 84