Building Smart Client Applications - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

Building Smart Client Applications

Description:

Building the Smart Client Application. Step 1: Modify GUI. Add alert, menu item ... Smart. Client. Database Server. 1. Upload Rows. 2. Download Rows. 3. Confirm ... – PowerPoint PPT presentation

Number of Views:126
Avg rating:3.0/5.0
Slides: 27
Provided by: tracey83
Category:

less

Transcript and Presenter's Notes

Title: Building Smart Client Applications


1
Building Smart Client Applications
  • Module 2

2
Architectural Map
Smart Client
Mobile Data Store
Device Identification
Data Synchronization
Content Transformation
Messaging
Security
Enterprise Integration
3
Topics
  • Smart Client Characteristics
  • Development Overview
  • Mobile Data Store
  • Synchronization
  • Messaging

4
Characteristics of Smart Client
  • Persistent data
  • Mobile data store
  • High-performance data access
  • Data Synchronization
  • Integration with the Enterprise

5
Characteristics of Smart Client
  • Messaging
  • Push important data to mobile devices
  • Rich user experience
  • Contains business logic
  • Sophisticated User Interface
  • Palm, PocketPC, EPOC, RIM, Java clients

6
Development Overview
  • Mobile Data Store
  • C/C or Java
  • SQL or data access APIs
  • Data Synchronization
  • SQL
  • Messaging
  • C/C or Java
  • Rich User Interface
  • C/C or Java

7
Other Mobile Data Storage Options
  • Proprietary APIs
  • Palm DB, Flat File
  • Custom-coded solutions
  • Customer built data structures, searching,
    sorting, and synchronization
  • Shrunk-down enterprise database
  • Vendor reduces capabilities of enterprise
    database to make it fit on small devices

8
Other Mobile Data Storage Limitations
  • Proprietary APIs
  • One table per database
  • Poor performance
  • Limited capabilities
  • Custom-coded solutions
  • Very resource intensive
  • Increased risk
  • Increased maintenance costs
  • Shrunk-down enterprise database
  • Pre-chosen limited functionality
  • Architecture not geared for mobile and wireless
    devices

9
Mobile Data StoreThe iAnywhere Solution
  • Advantages of SQL
  • Synchronization to industry standard enterprise
    databases (robust and secure)
  • Extremely small footprint
  • Hand-coded speed
  • Reduced requirements for platform specific
    knowledge

10
Mobile Data StoreDevelopment Process
  • Step 1 Develop application code
  • Step 2 Invoke Analyzer
  • Step 3 Compile
  • Step 4 Deploy
  • Step 5 Setup Synchronization

11
Mobile Data Store How it Works
SQL / Data Access Code
Reference Database
Runtime Libraries (Data Store)
12
Mobile Data StoreFeatures
  • SQL compliant
  • Referential integrity
  • Transaction processing
  • Multi-table joins
  • Bi-directional cursors
  • Customized for your application
  • Footprint as low as 50K
  • Data structures and algorithms designed for
    in-memory database

13
Mobile Data StoreFeatures
  • Performance
  • Support for indexes
  • Pre-optimized queries
  • Large storage capacity
  • Integrated synchronization

14
Building the Smart Client Application
  • Step 1 Modify GUI
  • Add alert, menu item
  • Step 2 Add data store code
  • Step 3 Add glue code
  • Attach data store code to GUI
  • Step 4 Run Analyzer
  • Step 5 Compile/deploy

15
Data SynchronizationArchitecture

Database Server
Synchronization Server





Remote Computers
16
Data SynchronizationHow it Works
ConsolidatedData Store
ODBC
SynchronizationServer
SmartClient
smart
17
Data SynchronizationIntegration Features
  • Synchronize to industry standard databases
  • Oracle8, Microsoft SQL Server, IBM DB2 UDB,
    Sybase ASE, Sybase ASA
  • Synchronization scripts are in native language of
    the enterprise database
  • Synchronize to other enterprise data sources
  • SAP, Siebel, PeopleSoft etc
  • Accommodated using adapters in server
  • All synchronization is bi-directional

18
Data SynchronizationSimple Example
  • The upload_cursor script is used to insert,
    update, or delete rows in the consolidated
    database

SELECT emp_id, emp_fname, emp_lname FROM
employee WHERE emp_id ?
  • The download_cursor script is used to insert or
    update rows in the mobile data store

SELECT emp_id, emp_fname, emp_lname FROM
employee
19
Data Synchronization Key Features
  • Security
  • Built-in authentication
  • 128-bit encryption of communication between
    client and synchronization server
  • Support for subsetting of data
  • Support for horizontal and vertical partitioning
    of data
  • Scalable
  • Support for thousands of remote users

20
Data SynchronizationConflict Detection Features
  • Conflicts arise when sending data to enterprise
    database
  • Data Store maintains old value and current value
  • Synchronization server compares old values with
    consolidated database
  • If old values match there is no conflict
  • If old values do not match there IS a conflict
  • Conflict Resolution
  • Fully customizable by developer
  • Scripts written in native language of enterprise
    database
  • Can execute stored procedures or user-defined
    resolutions steps

21
Building Smart Client ApplicationData
Synchronization
22
Messaging Message Delivery
  • Store and forward message queuing
  • Guaranteed message delivery
  • Push capabilities
  • Delivery and non-delivery acknowledgements
  • Intelligent (program to program)

23
Messaging JMS Interface
  • JMS provider for Messaging Server
  • Asynchronous communication from enterprise
    applications to wireless devices
  • Or between enterprise applications
  • Properties are exposed for communication
  • IP address
  • Server port
  • Provider name

24
Messaging Services Network and Device Support
  • Networks
  • ARDIS, Mobitex, CDPD, DataTAC, NORCOM, Analog
    cellular, GSM, CDMA, Wireless LAN
  • Paging networks
  • HDML alerts, email, SMS
  • Devices
  • Palm, PocketPC, DOS, Windows, EPOC, RIM, phone

25
Summary
  • Smart Client applications provide always
    available access to your data
  • Mobile data store
  • Enterprise synchronization
  • Advanced messaging
  • Overcome the challenges of wireless computing
  • Low bandwidth
  • Unreliable coverage
  • Battery consumption

26
Building Smart Client Applications
  • Module 2
Write a Comment
User Comments (0)
About PowerShow.com