E-Commerce Overview
E-Commerce Overview
E-Commerce Introduction
Introduction to e-commerce and its significance in the modern market.
Overview of the technology infrastructure underlying e-commerce.
Discussion of the early evolution of e-commerce technology.
Introduction to N-Tiered Architectures within e-commerce contexts.
Performance and scalability considerations in e-commerce systems.
Traditional Commerce
Seller's Perspective
Process steps:
Conduct market research to identify customer needs.
Create a product or service to meet those needs.
Advertise and promote the product or service to potential buyers.
Negotiate and finalize the sale transaction, taking into account:
Delivery logistics.
Inspection, testing, and acceptance procedures.
Receive and process customer payments.
Ship goods and invoice customers.
Provide after-sale support and maintenance, as well as warranty services.
Buyer's Perspective
Process steps:
Identify a specific need (e.g., delay in public transport). How to handle a specific need implies:
Search for products or services that fulfill this need.
Select a vendor based on thorough research.
Negotiate purchase transactions including delivery logistics, and inspection.
Make necessary payments.
Perform regular maintenance and make warranty claims if needed.
Characteristics of Traditional Commerce
Fixed Prices: Prices set by sellers that may not reflect true value.
Sales-force Driven Transactions: Reliance on well-informed salespeople.
Information Asymmetry: Situations where the seller has more information than the buyer, possibly leading to exploitation.
Passive Consumer Behavior: Consumers often rely heavily on seller-provided information.
Example: Used car market facets include mistrust and inefficiencies due to information asymmetry.
What is E-Commerce?
Combines business and electronic infrastructures for electronic transactions.
Enables online buying and selling via public/private computer networks (primarily the Internet).
Known as e-commerce (EC) and includes:
B2B (Business-to-Business): Online transactions between businesses.
B2C (Business-to-Consumer): Online transactions between businesses and consumers.
Digital delivery of products and services.
Automated telephone transactions, EFTPOS, and other automated transfer systems.
Key Requirements for an E-Commerce Site
Characteristics for creating a large e-commerce site (e.g., Amazon, eBay):
Secure Purchase and Site: Essential to safeguard user information.
Robust and User-Friendly: Easy navigation for customers.
Fast Performance: Loading speeds should be sufficient.
Scalable: Ability to handle increasing workloads.
Factors affecting scalability include architecture, framework, sustainable design, etc.
Customized Experience: Tailored interfaces for user engagement.
Internationalization & Localization: Adaptation for various languages and currencies.
Multi-Platform Support: Compatibility across devices (smartphone, tablet).
Opportunities in E-Commerce
Productivity Advances
Enhances shareholder value expectations and attracts investments.
Expanded Markets
Shifts from local to global reach enabled by technology.
Cost Reduction
Innovations in communications, inventory control, and customer relations lead to lower operational costs.
Quality Gains
Improvements in transaction times and reduced error rates increase overall satisfaction.
Streamlined Processes in E-Commerce
Analyze Workflow: Identify processes needing improvements based on departmental priorities.
Identify Areas for Focus: Analyze data collected to prioritize concerning areas.
Break Down Processes: Decompose complex processes into manageable steps.
Prioritize Tasks: Rank each based on importance on a scale of 1 to 10.
E-Commerce Risks
Financial Loss
Direct losses due to fraud (e.g., unauthorized payment processing).
Information Exposure
Risks associated with sensitive information being compromised.
Customer Relations Damage
Consequences from undisclosed information affecting trust.
Unexpected Costs
Legal and public relations matters arising from security issues.
Public Relations Damage
Impact on corporate image due to security breaches and misinformation.
Customer Risks
Entrusting money to potentially insecure electronic systems.
E-Commerce Challenges
Understanding Customer Evolution
Anticipate and invest ahead of changing customer needs.
Charting Technology Changes
Align technology choices with customer sensitivities and market trends.
Integrating Online and Offline Activities
Efficient alignment of branding, retail, and service aspects.
Identifying Competitive Advantages
Resource reallocation in response to changing market drivers.
Types of E-Commerce
B2B (Business-to-Business): Transactions between businesses (e.g., Dell and suppliers).
B2C (Business-to-Consumer): Transactions from businesses to individual consumers (e.g., Apple, Netflix).
C2B (Consumer-to-Business): Transactions where individuals sell their services to businesses (e.g., Upwork, Google AdSense).
C2C (Consumer-to-Consumer): Transactions between consumers, facilitated by platforms such as eBay and Etsy.
E-Commerce Technology Infrastructure
The E-Commerce Site is not just one server but instead includes a large set of servers that interact with one another on different layers of the N-Tier. The entire system must work together and be scalable such as Website, App Server, Data Server, Payment Gateway, API, Security Controls.
Major issues include applying internet technology to business problems and adapting to the fast pace of technological change.
Focus on coherent architectures to integrate system components effectively.
Web Performance and Scalability
Significant changes in e-commerce require substantial investment in technology.
Fast-loading websites are critical; poor performance may drive customers away. Key statistics:
E.g., Forrester Research: Users expect pages to load within 2 seconds or less.
E-Commerce Features
User-Friendly Navigation: Enhances user experience.
Comprehensive Feature Set: Required functionalities for e-commerce operations must be present.
Functional Sustainability: The website must be robust and maintainable over time.
Stable Hosting: Reliable server solutions are necessary.
Customer-Specific Services: Personalized services for enhanced engagement.
Technology Upgrades: Continuous improvements in features and security.
Order and Payment Systems
Key Components
Shopping and Ordering System: Navigating product catalogs and executing purchases.
Merchant Account: Bank account for receiving credit card payments.
Secure Gateway: A company will provide the selling company with a network to process encrypted transactions.
Payment Gateway: Secure method for processing transactions.
Security System: Ensures safe transactions through protocols like TLS.
E-Commerce Security
Security measures are critical in e-commerce applications. Most systems adopt TLS for secure communications, protecting against eavesdropping or tampering.
Cookies are utilized to manage user sessions and maintain authentication across transactions.
Transport Layer Security (TLS): Modern e-commerce relies on TLS Protocol, which encrypts communication between a client and server.
TLS servers are called secure servers and its how sites get HTTPS in the URL. The secure aspect is because the any PII put into the site or collected are all encrypted during transmission.
eXtensible Markup Language (XML)
XML: Text-based markup language for storing and transporting structured data. Companies can define custom tags for data sharing with partners.
Known for being Simple & Flexible or easy to modify.
Platform-Independent: Works across systems and programming.
Common uses of XML
Data Exchange
Configuration Files
Web Technologies
Structured Data Storage
Some key characteristics & features not listed above
Hierarchical Structure: The code is organized with a root element with nested child elements which makes this suitable for complex data relationships.
Tags: Elements enclosed in <tag> and attributes provide extra information about elements
Validation: XML documents can be validated using Document Type Definition (DTD) or XML Schema Definition (XSD) to ensure structure and format correctness.
Core Web Services
Standard | Purpose | E-Commerce & Security |
XML | Structured, human-readable data format | Ensures clear data exchange, integrity, and platform compatibility |
SOAP(simple object access protocol | Messaging protocol using XML to communicate over networks HTTPS | Enables secure standardized Communication between applications |
WSDL (web services description language) | XML document describing web service operations | let systems automatically understand and interact with service |
UDDI universal description discovery and integration | Directory for publishing and discovering web services | helps organizations find and integrate services efficiently |
Today, many systems use REST APIs + JSON instead of SOAP + XML, but:
• SOAP is still used in banking, healthcare, and enterprise systems
• SOAP has strong built-in security features
App Server
Application Server is the brain of the system as it processes the logic such as business logic, it handles authentication, calculates prices etc.
App Server Checks:
If user is logged in
If an item is in stock
What is the final price
Can the user place an order
Security Focus:
Access Control
Authentication & Authorization
Session management
API Security
Input sanitization
Data Server
This is where all data is stored and the primary role of DB Server is to store, manage, and save data efficiently.
Stores
User Accounts
Password Hashes
Orders
Products
Security Focus
Encryption at rest
Database access Control
SQL injection prevention
Backups
Audit logs
E-Commerce Technology Evolution Stages
First Generation (1995-1999): Establishing a web presence with static content.
Second Generation (1996-2000): Increase interaction and dynamic content.
Third Generation (1999-2003): Online transaction support and automation.
Fourth Generation (2002-2010): Process transformation and external automation.
Current Stage (2011-Present): Ongoing evolution continues with advanced tech integration.
N-Tier Architectures
Definition
N-Tier architectures separate presentation layers, business logic, and data sources for enhanced performance and security.
Presentation Layer
Accessed directly by users through web interfaces.
Logic Layer
Encapsulates the business logic required for operations.
Data Layer
Stores application data in external databases, providing structural independence.
Layers in Tiered Architectures
Layers can access directly only public components of its directly-below layer: UI→ Business→ Data → Data Base Server.
Tier: Physical separation of functions, roles, or responsibility
Layer: Logical separation of the actual machines and server.
The presentation layer (UI) can only access the public components in application layer, but not in data layer. Application layer can only access the public components in data layer, but not in presentation layer.
Why is it divided
Having a tiered architecture allows for ease when scaling, developing, maintenance, upgrading etc.
Allows for tier security, like the client layer can’t access data layer directly, but through application layer.
1-Tier Architecture
This is the standalone application with all 3 layers located on the same machine. This makes it difficult to scale up, this becomes a security risk, and difficult to operate maintenance on.
2-Tier Architecture
Database runs on server, which is separated from the client.
Presentation and logic layers still tightly connected which becomes heavy load on the server, congestion on network.
3- Tier Architecture
Client - Server architecture: Each tier Presentation, logic, data should be independent and not expose dependencies related to implementation
Unconnected tiers should not communicate
Change in platform affects only the layer running on that particular platform.
N-Tier Architecture
Separated in layers in 3-Tier can be broken up into further layers
Web Proxy As Firewall:
The proxy sits at the network gateway before traffic leaves the internal network. Web proxy can server as intermediate server between clients and resources that the client is trying to access, web server to implement a firewall, to improve performance.
Caching popular objects is a way to improve web performance, Web caching at clients, proxies, and servers.
Performance and Scalability Goals
E-commerce aims for higher throughput, lower latency, and increased system reliability through strategic scaling and performance management measures.
Caching and Load Balancing
Caching improves web performance by reducing latency, bandwidth usage, and server workload. Central concepts include cache hits/misses and replacement strategies.
E-Commerce Caching
Cache Hits/Misses: Measurement metrics to evaluate cache efficiency.
Prefetching and Coherency: Strategies to maintain up-to-date cached data.
Web Caching Issues
Normal GET request: When a browser sends GET/page.html asks the server to send the full document again.
Conditional GET: Instead of always downloading the whole page again, the browser can ask: “send me the page only if it has changed”
Dynamic Data Caching: Caching works great for static content but some web data should not be cached easily. Pages generated dynamically by the server, but if cached incorrectly, one user might see another’s user’s data
Conclusions
E-commerce is a complex yet rewarding domain, integrating advanced technology with business strategies to enhance performance, scalability, and user satisfaction. As e-commerce continues to evolve, it is essential to remain attuned to technology changes, consumer needs, and market dynamics.