1
®
IBM Software Group
© IBM Corporation
Lotus ExpeditorPlatform for Enterprise Client Application
Henri Christiaan
AP Techworks, Lotus Software
IBM Software Group
IBM Software Group | Lotus software
2
Agenda
� What is semi-connected ?
� Customer use cases
�Mobility Application
�Local Application access
� A look at a sample application architecture.
� What about the data and transactional messaging ?
� How do we build the application ?
� How do we manage the application ?
� Lotus Expeditor
2
IBM Software Group | Lotus software
3
Semi-connected application
� Applications which runs on
�Poor Bandwidth Connections
�Expensive Connections
�Not always on / not always connected
� Has local data storage
� Data sync
IBM Software Group | Lotus software
4
Customer use cases - Mobility
� Providing disconnected access to apps, anytime, anywhere
� Locally hosted web/rich applications
� Locally hosted business logic
� Transparent server interaction when available
� Examples
Knowledge Workers
Field Service Automation
Sales Force Automation
3
IBM Software Group | Lotus software
5
Traditional Web Application
Browser
Web Container
Transaction
Container
Server: Portal, WebSphere
Request
Response
MQ
DB2
IBM Software Group | Lotus software
6
• Rich Client or Browser
• Laptop / Desktop or Device
Expeditor Server
Connectors
Web Container
Transaction
Container MQe
DB2e DB2
MQ
Semi-connected Web Application
4
IBM Software Group | Lotus software
7
Mobile Adjuster
Expeditor
IBM Software Group | Lotus software
8
� Customer quote� “Work with IBM to make them the industry standard across
all Japan Insurance and Financial Areas”
� Customer Problem
� High time & error rates in transcribing information obtained on customer premise
� High adjustment costs
� Solution
� 85K agents use XPD-based application to enter policy data on tablet PC at customer sites
� Synchronize with home office at end of day
� Result
� Increased agent productivity – reduced tasks by 30%
� Lowered insurance adjustment costs
Basic
Information
Total Premium
Amount
Covered &
Option
Selection
Customer: Nissay Insurance Mobilizes Sales & Claims Management
5
IBM Software Group | Lotus software
9
An Australian Winery
� A winery booking application
�Rich Client application accessed from booking centers around the state
�Response problem
� Using Expeditor
�Better response time
IBM Software Group | Lotus software
10
Customer use cases – Local Application Access
� Improves responsiveness
� Maintains application functional availability
� Enable “Mashups” across new and pre-existingapplication types
� New: Web, Portlet, Forms, Eclipse Rich Client
� Pre-existing: Swing, AWT, Native, .NET, Flash/FLEX, Text Terminal, Etc.
� Visual integration of applications
� Local data integration between applications
� Local event integration between applications
� Create new views on existing applications
� Enable complete desktop management
� Optimize real estate
� Control overall look and feel
� Custom branding
� Configurable role-based access
Bank Tellers Call Center
6
IBM Software Group | Lotus software
11
WebSphere Application Server CUSTOMER
ACCOUNT
ACCTHSITORY
COREBANK DB
Customer EJBCMP
Customer EJBCMP
Account EJBCMP
Account EJBCMP
Account History EJBBMP
Account History EJBBMP
Corebank
Webservice
Provider
Corebank WSDL
Corebank
Webservice
Provider
Corebank WSDL
Corebank ServerWS Client Proxy
Corebank ServerWS Client Proxy
CorebankOSGi Service
CorebankOSGi Service
Expeditor Client
OFN Teller
Application
OFN Teller
Application Corebank
Stateless
Session Bean
Corebank
Stateless
Session Bean
Expeditor Server
DB2 UDB
OnlineSOAP over HTTP
COREBANK
MIRROR DB
COREBANK
MIRROR DB
DB2e Sync ServerDB2e Sync Server
Corebank Local
WS Client Proxy
Corebank Local
WS Client Proxy
Corebank Local
Webservice Provider
Corebank Local
Webservice Provider
Corebank MDBMDB
Corebank MDBMDB
MQ Server v5.3MQ Server v5.3
MQe Server v2.0.1.8MQe Server v2.0.1.8
DB2e ClientDB2e Client MQe ClientMQe Client
COREBANK
LOCAL DB
COREBANK
LOCAL DB
InputQ
(Local)OutputQ
(Remote)
InputQ
(Local)
OutputQ
(Remote)
TXN
Request
TXN
Request
MQe to MQ
Bridge
Offline
TXN Request TXN Response
JMS
DB2 Sync
TXN Response
Cusstomer/AcctQueries (JDBC)
OFN Teller ArchitectureSupport for poorly connected operation
IBM Software Group | Lotus software
12
A Large North American Bank
� The Solution
�Wealth management and Teller applications
� Requirements
� Compelling U/I for connected employees
� Shared workstations / Roles based access
� Secure desktop
� Deployment
� 2006: 2,000 Wealth Management Clients
� 2007: 20,000 Teller Workstations
7
IBM Software Group | Lotus software
13
Support for Offline Operations� Database Access
� Local relational database store
� DB2 Everyplace (DB2e) provider
� Cloudscape (aka Derby) provider
� Use JDBC API for local database access
� Synchronize local relational database with Enterprise databases
� Enterprise Database Access: DB2 UDB, Informix, Cloudscape (aka Derby), Lotus
Domino Server, Oracle, Microsoft® SQL Server, Sybase
� Use ISync API to control synchronization
� Messaging
� MQ Everyplace (Point-to-Point) – Message queuing, asynchronous messaging
� Micro Broker (Publish-Subscribe) – Offline messaging supported via Quality of Service
� Use JMS API
� Network Awareness (Desktop)
� Status of local resources (network interface)
� Connectivity to remote resources (e.g. HTTP servers, Web Services)
� Enables applications to adapt operation based on connectivity
IBM Software Group | Lotus software
14
Lotus Expeditor - Application Development
� Develop the following types of client applications:
�Java TM
�OSGi
�Eclipse
�Web – JSPs/Servlets
�Embedded Transaction - EJBs
�Portlets
�Web Services
�Database
�Messaging
�Composite
� Utilize familiar programming models, API’s, and tools to develop these applications
Reference slide “Application Types and API’s Across Releases”
8
IBM Software Group | Lotus software
15
Lotus Expeditor ToolkitExtending applications to desktops, laptops, tablets and handhelds
� Developer skill:
� Information Technology Developer - Eclipse, Java TM, Java TM Enterprise Edition (Java EE), portal
� Key features:� Application Development
� RCP/eRCP, SWT/eSWT, JFace/eJFace, JSP/Servlet, JSF, Portlets� JMS, JDBC, ETA, iSync, SyncML, ESB / BPI, WS*, OSGi, OMA/DM
� Sametime, Notes 8 (2Q07)� Platform Builder
� Construct fit for purpose runtimes� Minimize footprint by customizing runtime
� Desktop Customization� Customers can make Expeditor transparent to end user� Complete control over desktop real estate / controls
IBM Software Group | Lotus software
16
Lotus Expeditor: Managed ClientInstall, configure, maintain platform & applications
� Enable flexible points of control
� One time setup; subsequent lockdown desktop
� Lockdown browser (URL, Access Control, etc.)
� Lockdown composite applications
� Dynamic, self managed by end user
� Dynamic centrally managed via server� Continue to maintain a lockdown user view of the system
� Combinations of end user and central server managed
� Enable central visibility
� Applications
� Configurations
� History, Inventory and Status
� Enable remote access
� Administrator scheduled jobs on the client
Server(Expeditor, Domino, Portal Server)
Server Managed Client
9
IBM Software Group | Lotus software
17
IT Data Center
Enterprise Management Agent
Device Manager
Lotus ExpeditorClient
Portal Services (Desktop only) Portal ServerAggregation, role-
based access control
Lotus Expeditor Offering
Managed Client Options
Client
Lotus ExpeditorServer
ProvisioningEclipse Update
Site
Server-managed SW install & maintenance
User-initiated SW install & maintenance
IBM Software Group | Lotus software
18
WebSphere Portal Server
ComponentsLibrary
Deploying Expeditor Applications from PortalHow Portal drives rendering of composite applications
AU
TH
EN
TIC
AT
ION
AUTHORIZATION
Page AggregationPortlet
Container and Services
1. User logs in to
the portal
2. Page Model is created
based on user access rights
4. XML transmitted to
Client
3. The application XML from
the requested application defines the content
<xml>…
Expeditor Client
5. The Client builds the page
from the model description
SWT
HTML
Notes
Native
Java
10
IBM Software Group | Lotus software
19
Lotus Expeditor
Toolkit
Eclipse, AST, Rational Software
Development Platform
End-to-end Tools
Enterprise and Portal
Applications
End-to-end Applications
Lotus Expeditor
Clients
WebSphere Application Server / JEE
End-to-end Services
Enterprise and Portal
Applications(Extended)
Lotus Expeditor
Server {optional}
Desktop: jclDesktop, JSE 5.0 Device: jclDevice
Lotus Expeditor 6.1.1Lotus Expeditor Component
AST = Application Server Toolkit
JSE = Java TM Standard Edition
JEE = Java TM Enterprise Edition
Reference slide “Lotus Expeditor 6.1 Packaging / Pricing”
IBM Software Group | Lotus software
20
Consume and publish Web services
Synchronize objects
Send and receive secure transactions
Synchronize relational data
Distribute Business Logic
IT DataCenter
EXISTING
SYSTEM
Local Business Logic Services
SyncML Libraries
MQe
DB2e or Cloudscape
WebUI
RichUI
Web Services Web Services
{SyncMLLibraries}
MQe Server
DB2e Sync Server
Business LogicServices
Lotus ExpeditorServer
Lotus ExpeditorClient
Lotus Expeditor Offering
End-to-End ConnectionsClient
11
IBM Software Group | Lotus software
21
Access Services Extend Applications to ClientsJava TM Enterprise Edition and Portal services
API IBM providers IBM extensions
Web Services(JSR 101)
* Application must package Struts libraries
Axis WS-Security
JMS
JDBC
DB2 EveryplaceDB2 EveryplaceISync Provider
Cloudscape
Micro Broker
JNDI
MQ Everyplace
JNDI Provider
EJB Transaction Container
Portlet (JSR 168)
JSF / Struts*
JSP / ServletWeb Container
Portlet Container
CloudscapeISync Provider
Property Broker
Desktop only
Desktop and DeviceSupport Offline
Operations
A familiar programming model enables reuse of skills and software
IBM Software Group | Lotus software
22
Access Services Extend Applications to ClientsAdditional services
API IBM providers IBM extensions
Desktop only
Desktop and Device
Sync Manager Sync Service
SyncML4JSyncML/DS
SyncML/DM
Network Status & Network Faults
Network Layer
AccountsLogin Modules
(framework)
Key Store(SSO supported)
J2EE-Form
HTTP-Basic
Support OfflineOperations
Web Services
Resource Framework
Web ServicesRemote Portlet
Web Services
(JSR 172)Mobile Web Services
Custom Serialization
Provider
WS-Security
12
IBM Software Group | Lotus software
23
Lotus Expeditor 6.1.1 - Client for Desktop
� Microsoft® Windows® XP Professional, service pack 1 or 2
� Microsoft® Windows® XP Home Edition, service pack 1 or 2
� Microsoft® Windows® XP Tablet PC Edition 2005
� Microsoft® Windows® 2000, service pack 4
� Microsoft® Windows® Vista
� RedHat Enterprise Linux® 4.0 Workstation
� RedHat Enterprise Linux® 5.0 Workstation
� SUSE Linux Enterprise Desktop (SLED) 10
� Minimum hardware requirements:� x86 processors capable of running supported client platforms� 512 MB RAM (more RAM if applications require additional memory) � 200 MB free disk space � 150 MB disk space for product installation � Super video graphics array/adapter (SVGA) 1024 x 768 display
IBM Software Group | Lotus software
24
Lotus Expeditor 6.1.1 - Client for Devices
� Microsoft® Windows® Mobile 2003 SE (PocketPC or Phone Edition)
� Microsoft® Windows® Mobile 5.0 (PocketPC or Phone Edition)
� Microsoft® Windows® CE 5.0 Professional
� Minimum hardware requirements:
� 12 MB of free file system space -> Recommend 16MB� 12 MB of free memory -> Recommend 16 MB� 10 MB of free virtual address space -> Recommend 16 MB
� Specific units tested:
� Dell Axim (X50v and X51v) � HP iPAQ (2790 and 4700) � I-Mate JasJar� Unitech PA962� Symbol MC3090R-LC48S00GER� Symbol MC9090-GF0HBEGA2WW
� Nokia E90 (Tech Preview)
13
IBM Software Group | Lotus software
25
Lotus Expeditor 6.1.1 - Toolkit
� Microsoft® Windows® XP Service Pack 2, Vista
� Red Hat Enterprise Linux® 4.0/5.0 WS with GIMP Toolkit (GTK) support – Update 3
� SUSE Linux Enterprise Desktop 10
� PLUS one of the following:
� Rational® Application Developer (RAD) 7.0 .0.2
� Rational Software Architect (RSA) 7.0 .0.2
� Eclipse 3.2.2 + Web Tools Platform (WTP) 1.5.3
� WebSphere Application Server Toolkit (AST) 6.1.1.2
� Minimum hardware requirements:
� x86 processors capable of supporting Windows® XP/SP2 or Red Hat Linux® EL 4.0 WS
with GTK Support - Update 3
� 512 MB RAM
� 500 MB free disk space
� Super video graphics array/adapter (SVGA) 1024 x 768 display
IBM Software Group | Lotus software
26
Lotus Expeditor 6.1 - Server {optional}
� Microsoft® Windows® 2003 Standard or Enterprise, with or without service pack 1
� RedHat Enterprise Linux® Enterprise Server or Advanced Server 4.0 for Intel®, with or without service pack 1, 2, or 3
� AIX V5.3 Maintenance Level 02
� SUSE Linux Enterprise Server 9 SP3, 2.6 Kernel for System p (64bit)
� Prerequisites:
� IBM DB2 Enterprise 9.1 for Linux®, UNIX®, and Windows® or IBM DB2 Workgroup Server Edition 9.1 for Linux®, UNIX®, and Windows®
� WebSphere Application Server 6.0.2.11 and higher fix pack levels
� IBM HTTP Server 6.0.2.11 and higher fix pack levels This HTTP server is provided with WebSphere Application Server
� Minimum hardware requirements:
� Minimum recommended processor: 2 GHz processor
� X86 or IBM POWER4, POWER5 and POWER5+
� Minimum physical memory: 2 GB