HI Pritam,
I'll try to provide some additional background.
Current non-mobile, non-browser architecture (for general understanding).
---------------------------------------------------------------------------------------------------------
The current client/server design of VCell uses a "fat" Java Client which can be locally installed and includes native executables for local simulation. This client can be run standalone simulations and import/export XML BioModel files, but usually connects via Java RMI (an RPC approach) to our VCell RMI Services which provide for centralized model persistence, remote simulation execution on our high performance cluster, and remote simulation data storage, fine grained retrieval of spatial simulation results and mesh, and postprocessing and exporting simulation results in various formats.
In this architecture, the models (including simulation specifications) are stored in a centralized Oracle database by user with permissions of private (default), shared with a group of users, or public. The "BioModel Document" is composed of a single physiological model (molecules, reactions, compartments, transport mechanisms) and multiple "Applications" (which specify the simulation paradigm ode,pde,ssa,particles,hybrid). Each Application has multiple "Simulations" which specify the numerical tasks (e.g. which solver to use and numerical settings, and parameter sets). So the document (physiology,applications,simulations) are captured in a single consistent (and complex) data structure (the "BioModel") which is viewed,edited,analyzed in memory within the client. The client loads and saves the complete BioModels atomically. Within the centralized Oracle database, the document is incrementally saved and decomposed into its pieces and stored in 50+ tables (and also in XML for fast caching). The client-server communication is infrequent and only for persisting intact "documents" to the centralized Oracle database, requesting simulation start/stop, getting simulation status, and retrieving raw (compressed double[] arrays) and processed simulation results (e.g. Movies, images, csv files).
For the purposes of mobile and browser based clients, the only BioModel component which is editable is the Simulation, and the centralized database owns the BioModel state. However, for an android app, (or iOS for that matter), in order to have a responsive GUI and prevent unnecessary network communication, some local (SQLite) database (or other local persistence) will likely be necessary (mostly as a cache). Also proper threading and app lifecycle management should be considered (e.g. a change in orientation of the device should not initiate a network request).
VCell Server Background:
The new VCell RESTful Web API has only just been started and the initial implementation only includes ability to query SimulationJob status. The plan is for this Web API to become comprehensive - offering much of the capabilities of our existing VCell Services. which are run/cancel simulations, retrieve simulation results, export simulation results as images/movies/csv, load/save/delete models/simulations, manage model permissions, query simulation status, query models and simulations, query for reactions across all accessible models.
I would suggest storing the model/simulation metadata locally in SQLite and only retrieve deltas from our server ... the "current" simulation results should be temporarily stored while viewing (but discarded soon after to manage local storage).
Another useful but not essential item would be an asynchronous notification scheme for completed simulations.
All communication will be in JSON and the API will be documented in WADL. In addition, the server side API will be implemented by me using the Restlet framework (partial prototype exists). A corresponding set of RESTlet client-side android "Resources" and "Representations" will be developed to facilitate communication and marshaling objects. The final form of the API will evolve in collaboration with the mobile device developer during the project period to ensure performance, and functionality.