Reducing Costs & Improving Efficiency Using A Mobile Workflow (Part 1)

This is going to make up a series of posts where I talk about how to develop a electronic forms application (Android/IPad tablet based) which can be used to replace an existing paper based system to cut down on paper waste and administration time. Each subsequent post will talk about the technical aspects of this idea and how to go about developing the various elements of the system.

So, in this first instalment, I am going to introduce you to my new assignment at a local college to replace an existing paper based system which was proving to be time consuming and an administrative headache given the cut backs in resources. This will set the scene and introduce you to the problem that requires solving.

I will then proceed to talk about the various options available and explain the solution I will choose.

The Requirements Specification

To set the scene, lets just say that In February 2016 I joined a local college on an initial 6 Month Contract to develop an online version of an application form that was being used to enrol students onto workplace placements schemes. 

The existing paper base system being used looks similar to the below form:

This 4 page document is filled out by college assessors who visit a work placement where a student has been assigned to gain work experience. This form is then manually handed over to the administration department back at the college which is then manually logged into their student administration system (StudentSystem).

As you can see, this can prove to be time consuming and cumbersome for the poor data entry clerks and also on all those poor trees. 

To this end, it would be both cost effective and environmentaly friendly to develop some sort of online application that would remove this administrative burden from the department and our rain forests.

Consultancy

Web Based Solution

The college have initially requested an online web application which would be used by the assessors to either fill out onsite or once they get back to the office. However if they were to fill it out onsite, we would need to ensure there is an internet connection available. 

Tablet Based Solution

The college assessors also carry around with them Android tablets for other aspects of their work. With the advent of tablets and their portability and ease of use via touch screen, it makes sense that these benefits would make it much easier to fill out a digital based form using a touchscreen device, instead of a laptop. To this end, this is the solution we will proceed with but as you will see, this solution can also be utilised in an online version that can be used via the laptop too.

Now that we have our assignment on what is required, it’s time to think about the technical aspects of the system…

The key requirement of this project is to provide a form for data entry which can then be submitted into the college StudentSystem.

O, and there’s one more thing, ….. before the form is submitted into the college StudentSystem, the form needs to be assessed and approved by Student Services to ensure data compliance.

Possible Technical Solutions

Back-End

In order to get the data from the tablet device to the StudentSystem, we will require a middle admin system (MidAdminSystem) to enable Student Services to approve forms submitted by assessors via the iPad/Android. The reason for this is that we will assume the StudentSystem doesn’t currently have a public facing web service which we can interact with. Hence, we need to develop this bridge.

WEBAPI

To develop this bridge, we will use WEBAPI which will allow us to communicate with our IPad/Android device and with our MidAdminSystem allowing us to transfer the data via the cloud.

Once the WEBAPI receives the form, we will simply insert this data into SQL Server which can then be retrieved and viewed by the MidAdminSystem for approval.

Entity Framework

So, we now have the data in our SQL Server database which can be viewed and approved by Student Services. The only thing that remains next is, once the form has been approved, this data needs to be transferred into the StudentSystem. Luckily, the StudentSystem is just another SQL Server Database, so this will make things a lot easier for us.

To carryout the transfer, we will use Entity Framework so that we can simply grab a model object of the sql tables and map our data to it via the power of an ORM. 

Front-End Solution

Now that we have the backend architecture agreed, which is always the first point of call for such a system, we can now look at the front-end technology to build the Android/ipad application.

In order to develop a prototype quickly and proceed to building the application, Ionic framework is ideal for this using the power of Angularjs to drive the application’s interaction from a UI perspective. Not only that, writing this in javascript enables us to use this system on the web, as opposed to a native application which will only run on a device. This poses a restriction as we need to also develop a MidAdminSystem that will run on the internet which will be accessed by Student Services. A javascript based hybrid framework will enable us to achieve this by utilising existing code.

SQLite

So, we are nearly there now. The final part to the system is how are we going to store the data on the device when a form is filled out by the assessor? Ofcourse, we need to be able to store this data so the form can be amended later if needed before submitting for approval.

For this, we can use SQLite, a powerful relational database that can communicate with javascript.

See below for our complete system architecture:

Next post in the series