Table of Contents

The Project

An “Always On” PhoneBook App

Overview

The app enables a mobile user to interact with a phone book stored on an online database server and shadowed locally on the BlackBerry smartphone.

Analysis

The app must support of the following use cases:

The app must use the online server whenever available and falls back on the local database if there is no connectivity.

Deliverables

You need to deliver three things by the due date of this project:

Evaluation

The project will be evaluated based primarily (80%) on meeting the specs (these include system functionality and report contents) and on its internal quality (design, style, code, etc.). The remaining (20%) is based on how your project compares with those of other teams.

Hint

It is recommended that you approach this project in an iterative manner. In the first iteration, create a remote widget, one that works with the remote database. This widget uses form submission or AJAX to enable the user to add, edit, delete, or search. In the second iteration, create a local widget, one that works with the device's PIM. This widget has the same interface and functionality as remote but it uses the PIM API to access the local database. In the third iteration, merge the two widgets into one. After all, they have the same user interface and differ only in their database connection. The user can click a radio button on the HTML page to indicate weather the remote or the local database is to be used. Finally, the fourth iteration automates the database selection by figuring out how to synchronize the two databases.