The module will contain three sets of ui.
one for listing available Apps and allow user to launch it within a HTML iframe by clicking the icon of the app.This UI will be placed as a tab in the patient dashboard.
Next UI is to allow user to select apps to display in the patient dashboard from the available installed apps.This UI will be placed under the My Profile->manage smart app.
The folowing UI allow administer to install new apps or remove apps that are already installed.The appropriate place to display this UI is Administration->manage smart apps.
While administrator wants to add new SMART Apps he have to click on add button in above UI.This will give a popup window that allow administrator to up load a SMART App manifest or give a link to a manifest file.
Database Table Design
The module has to manage installed application and user.The information regarding apps and user have to be modeled to save in to the database.OpenMRS already has user object(can be found here),so the details about this object is avoided.