Anda di halaman 1dari 14

A Report On

Cloud based Referral System for Rural


Banking
Prepared in
partial fulfilment of
Computer Oriented Project

Prepared By
Aayush Jain

2010B1A3371P

Submitted to
Mr. Arun Kumar Vaish

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, PILANI

ACKNOWLEDGEMENT
Every work requires support and contribution from different sources and people for its
successful completion and achieve desired outcome. We would like to thank Mr. Arun
Kumar Vaish for providing us this opportunity to work on this project as a Computer
Oriented Project.
We would like to thank him for mentoring us for this project who has guided us on every
turn throughout this project. His every suggestion was highly valued and helped us
optimize the application.
Moreover we would also like to thank the institution for providing round the clock access to
internet facilities which helped us to get relevant information. In addition to that, we would
like to pay heartily regards to those people who helped us directly and indirectly.

ABSTRACT
This Computer Oriented Project wishes to develop a cloud based referral system for rural
banking customers. An Android based mobile application was developed which will be
distributed to rural customers. These customers can add their loan required on the app and
all these details will be stored in the cloud using 256 bits AES encryption. The banks can
use this data to increase their customer base.
The mobile application is built on Android Operating System, which is an open-source
operation system for mobiles. The cloud server is built on Ruby on Rails.
Another application which was built as a part of this project was Data Entry for POS
terminals, which was also an android app to update transaction details from POS terminals
to our servers.

TABLE OF CONTENTS
Acknowledgement

Abstract

ii

1. Introduction

2. Referral System App

3. Data Flow

4. Data Entry from POS App

5 APPENDIX

5.1 Front end

5.2 Back end

INTRODUCTION
ANDROID
Android is a software stack for mobile devices that includes an operating system,
middleware and key applications. Android is a software platform and operating system for
mobile devices based on the Linux operating system and developed by Google and the Open
Handset Alliance.
It allows developers to write managed code in a Java-like language that utilizes Googledeveloped Java libraries, but does not support programs developed in native code. The
unveiling of the Android platform on 5 November 2007 was announced with the founding
of the Open Handset Alliance, a consortium of 34 hardware, software and telecom
companies devoted to advancing open standards for mobile devices.
When released in 2008, most of the Android platform will be made available under the
Apache free-software and open-source license. Since then the market of smart phones
increased exponentially and different versions of Android platform were launched with the
Android 4.4 Kit-Kat being the latest. These versions provide enhanced support for various
features and different types of sensors, which provide a very rich experience to user and an
opportunity to developer to experiment and create amazing android apps.

RUBY ON RAILS
Ruby on Rails, often simply Rails, is an open source web application framework which runs
via the Ruby programming language. It is a full-stack framework: it allows creating pages
and applications that gather information from the web server, talk to or query the database,
and render templates out of the box. As a result, Rails features a routing system that is
independent of the web server.

SOFTWARES/ RESOURCES USED


Eclipse IDE
Eclipse is an integrated development environment (IDE). It contains a base workspace and
an extensible plug-in system for customizing the environment. Written mostly in Java,
Eclipse can be used to develop applications. By means of various plug-ins, Eclipse may also
be used to develop applications in other programming languages

Referral System for Rural Banking


The aim of this project is to develop a referral system for connecting the bankers to the
customers on a rural scale.
The idea is to develop a mobile application that a volunteer would be able to use in
locations that are remote and the portability of the tablet comes in handy.
The application to be developed will be on android platforms made in such a way that
almost all android devices could run the application. The application will consist of a form
which the volunteer or the customer can fill according to their banking needs.
This information will be transferred to a database on the cloud which could then be
accessed and modified as per the need of the administrator. The data will be of importance
to the banks in the area which feel that their access to remote locations is difficult.

The project demands an application that could run on a mobile device. The application
specifications require it to be robust and run on almost all versions of android operating
system.
The application should consist of a form that the volunteer could fill in order to generate a
loan referral system database which could be later used accordingly.
The first task is to develop a front end application for the mobile. This application will be
later connected to the databse using apis written on ruby on rails.

CURRENT STATUS
The android application has been finished. The android application has the front end for the
application which will act as the contact for the volunteer for him to enter the details. It is
built on xml and java. The code for which is explained in the appendix.
The application opens as the form which could be changed as per the instructions of the
administrator whenever required. That form asks the user to provide details for the loan
required by the customer.

Once the user or the volunteer has entered the details and pressed the submit button, the
details fill get updated on the database using the APIs that are developed on ruby on rails.
The documentation of the APIs and the database is provided in the appendix.
The data will be stored on a MySQL database. The database is hosted on
www.p2pmicrofin.in/referral. After the application is done updating the data , it will show
the following screen to the user or volunteer so as to confirm that the operation is
successful.

Data Flow for app

10

Data Entry from POS App

11

APPENDIX
CODE FOR FRONT END:
The front end is made using xml and java.
<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<FrameLayout android:background="@drawable/bg1"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:gravity="center_horizontal"
android:layout_gravity="center" android:orientation="vertical"
android:id="@+id/login_status" android:visibility="gone"
android:layout_width="wrap_content" android:layout_height="wrap_content">
<ProgressBar android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_marginBottom="8.0dip"
style="?android:attr/progressBarStyleLarge" />
<TextView android:textAppearance="?android:textAppearanceMedium"
android:id="@+id/login_status_message" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_marginBottom="16.0dip"
android:text="@string/login_progress_signing_in" />
</LinearLayout>
<ScrollView android:id="@+id/login_form"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:orientation="vertical"
android:padding="10.0dip" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15dp" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher" />
...
...
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"

12
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5.0dip"
android:layout_marginRight="5.0dip"
android:layout_marginTop="10dp"
android:background="@drawable/shape2"
android:gravity="center_vertical"
android:orientation="vertical" >
<LinearLayout android:orientation="vertical"
android:background="@drawable/shape" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_margin="14.0dip">
<EditText
android:id="@+id/username"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Username/ Acc. no."
android:maxLines="1"
android:singleLine="true" />
...
...
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Loan against land." />
</LinearLayout>
<Button android:textStyle="bold"
android:background="#53b567" android:textColor="#ffffffff"
android:layout_gravity="center" android:id="@+id/sign_in_button"
android:paddingLeft="32.0dip" android:paddingRight="32.0dip"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_margin="9.5dip" android:layout_marginTop="8.0dip"
android:text="Submit" />
</LinearLayout>
<Button android:textStyle="bold" android:textColor="#ff33561a"
android:layout_gravity="center" android:id="@+id/password_reset_button"
android:paddingLeft="32.0dip" android:paddingRight="32.0dip"
android:visibility="gone" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_marginTop="8.0dip"
android:text="@string/action_password_reset" />
</LinearLayout>
</ScrollView>
</FrameLayout>
</merge>
The java code is here:

package com.cop;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;

13

public class AlertDialogManager {


public void showAlertDialog(Context context, String title, String
message,
Boolean status) {
AlertDialog alertDialog = new
AlertDialog.Builder(context).create();
// Setting Dialog Title
alertDialog.setTitle(title);
// Setting Dialog Message
alertDialog.setMessage(message);
if(status != null)
// Setting alert dialog icon
alertDialog.setIcon((status) ? R.drawable.success :
R.drawable.fail);
// Setting OK Button
alertDialog.setButton("OK", new
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
// Showing Alert Message
alertDialog.show();
}
}

Anda mungkin juga menyukai