Enterprise Programming
By J Pearce
Enterprise Software
Sales
HR
Inventory
Customer Support
Shipping
Challenges
Scalability
Distributivity
Connectivity
Integrating legacy& multi-vendor systems
Common needs
Security
Transaction Processing
E-Commerce
The ability to perform online transactions:
Selling
Trading
Negotiating
E-Commerce Models
Storefronts
Auctions
Portals
Dynamic Pricing Models
Trading & Lending Models
B2B Exchanges & Services
Online News, Travel, Entertainment, Education
3 Important Server-Side Design Patterns
Model-View-Controller
Multi-Tier
Container-Component
Model-View-Controller Architecture
Model: Managing data and logic
Controller: Executes user commands
View: Displays data
Principle: Application logic should independent of presentation logic.
MVC (cont.)
Multi-Tier Architectures
Single Tier (Mainframe)
Two Tier (Client-Server)
Three Tier (Application Servers)
Four Tier (Web-based)
N-Tier
Single Tier
Two Tier
Three Tier
Web-Based Four Tier
Container-Component Architectures
Component: A semi-autonomous object known to clients only through the interfaces it implements and the conventions it conforms to.
Container: A program that provides an execution environment and lifecycle support for components.
Containers & Components (cont.)
Component Models
ActiveX, COM, DCOM
Applets
Servlets
Java Beans
Enterprise Java Beans (EJB)
J2XE Platform Specifications
J2SE: Client platform
J2ME: PDA platform
J2EE: Enterprise server platform
J2EE APIs
DBase Connectivity (JDBC)
Naming & Directory Interface (JNDI)
Messaging Service (JMS)
Transaction Processing API (JTA)
Transaction Services (JTS)
JavaMail
Interface Definition Language (Java IDL)
J2EE Technologies
Remote Method Invocation (RMI)
Servlets
Java Server Pages (JSP)
Enterprise java Beans (EJB)
Containers (Web, Applet, Enterprise)
J2EE Deployment
J2EE Roles
Application Client
Web Page Designer
Container Developer
Component Developer
Application Assembler
Application Deployer
Application Administrator
References
Developing Enterprise Java Applications with J2EE and UML; Ahmed & Umrysh; A-W.