Skip to content

About Quickforms

tarimshahab edited this page Aug 25, 2015 · 4 revisions

Introduction

Quickforms Diagram

  • Quickforms is a Business Intelligence (BI) application framework that seamlessly integrates mobile forms apps and BI dashboards. It provides the ability to integrate data collection and reporting in a single mobile app. BI apps that integrate mobile forms data could be developed with less effort, less complexity, more consistency, and better ease of use. It seeks to increase developer throughput by automatically connecting the view with the reporting database.

The Need

  • Mobile forms apps are very popular and widely used to collect data. However, traditional web development tools like .Net and J2EE take a generic approach to such applications that leads to high code complexity and poor quality assurance. On the other hand, BI portals and dashboards provide interactive reports that allow one to flexibly explore, analyze and visualize data. However, they are usually defined independently of the sources of data, which requires complex ETL processes to integrate and transform data for reporting.

How It Works

  • A mobile form app is built to capture data via Forms/Attributes and report data.
  • A BI data mart is built to store the data collected from the app and compute the necessary metrics for the BI dashboard.
  • An open source middleware, Quickforms Service-REST, simplifies the task of building such mobile apps and data marts in an integrated fashion.

Framework Layout

http://imgur.com/7QZjaD0.png

Advantages

Rapid Deployment: An initial BI app prototype can be developed and deployed to capture the minimum amount of data to compute the necessary metrics required to provide useful insights. The BI app can later evolve into a more comprehensive set of metrics by refining and expanding the application model and data collected.

Cross-platform adaptability: You only need to have a single web application to cover multiple mobile devices such as phones and tablets. In fact, a single application could cover your desktop and laptop users as well. Creating a single web application is much less work than creating separate native mobile applications for platforms such as iOS, Android and maybe Windows Phone.

Easy Distribution: A web application does not go through an app store of any kind and does not need approval from anyone to make it available; just publish its URL. Even better, this means you won't have to give away a share of your sales to a third party. In particular, for in-house business applications, which may not have any reason to go through an app store at all, a mobile web application can dramatically simplify deployment.

Reduced Administration time: Separate data capture points can be defined in order to make clear business process and better use of administrative resources.

Consistent Data collection: Data consistency summarizes the validity, accuracy, usability and integrity of related data between applications and across an enterprise.

Rich Dynamic Reporting : Complex dynamic reporting dashboards can be included in your application which provide the ability to visualize data.

#The App

Quickforms App

The Quickforms App is a web application (henceforth known as the "app") that is built with quickforms controls, which are comprised of the forms (HTML and JavaScript code), and developed by the app developer (i.e. you). It could call the Quickforms Service, which is running in the same web server, to get and process data from database to display on quickforms controls. Also it gathers information from quickforms controls and input to database through Quickforms Service. It lives on your computer during development and can be deployed to the server when ready to be launched.

Quickforms Service

The Quickforms Service is a web application that runs on a web server to provide basic service for Quickforms Apps. The service it provides include getting data, for quickform controls, from the database and storing information, from quickforms controls, to the database. The Quickforms App connects to the Quickforms Service via HTTP using the Quickforms JavaScript library.

Quickforms DAO

The Quickforms DAO (Data Access Object) is a predefined Java program that consists several rigid methods for Quickfroms Service to access the database, each of which provide a unique view on the data or metadata within. The DAO service is a refinement or specialization of the DAO pattern with a special restricted set of interface calls (available by REST) that provide just the specific functionality will be needed by the Quickforms Service.

Quickforms Database

The Quickforms Database is the data source for each Quickforms App. This is a standardized systematic star schema database with structured naming conventions and table relationships that is designed to optimize reporting functionality and flexibility.

Clone this wiki locally