Connectivity concerns for Netbook applications
The nature of portable devices means there will be occasional disruption in connectivity. Designing your software to account for these conditions will help your users to have a better experience. Here’s a few suggestions to consider as you plan for your Netbook applications.
Issue and Recommendation
Unreliable Connection- Use subscription methods to maintain understanding of connection status.
Online transition to offline workloads
- Begin caching of information that will need to be synchronized upon reconnection.
Offline transition to online
- Detect new connection, synchronize data as previously prepared while offline
Data loss during on/offline transition
- Use secure methods of data transmission to maintain data integrity (avoid data-gram packets)
- Maintain local cache until transmission verified to server system.
Server or web-service non-responsive
- Treat as connection failure, maintain local cache and wait for working connection
Synchronous Messaging
- Use Asynchronous Messaging to avoid potential blocking issues
Additional considerations
Provide On and Offline capability for you application.
Provide an Intelligent transition between on/offline and data management.
Deliver an “always connected” experience by using store and forward architecture, working for seamless transitions. [like podcasting]
What aspects of your app require a connection, are there ways to mitigate that?
Can you defer communication activities? (email send/receive when connected)
Can you anticipate users needs to cache in advance?
How will you respond due to a connection failure during a data access or file transfer?
Handle unreliable network connections.
Information on designing Asynchronous Messaging systems may be found here:
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. http://www.amazon.com/exec/obidos/ASIN/0321200683/interncom-20


Comments
Post new comment