Project Brief
Scion collects several details of plants in their nurseries.
Currently, these are collected on paper forms. Manual entries on paper
forms have several drawbacks including entry errors and illegibility.
To analyse the data collected through paper forms, the data need to be
re-entered into an electronic format. Data consistency checks are not
possible in manual data entry: for instance, a single response to a
single response question cannot be enforced.
The project is to build a prototype mobile application that runs on a
mobile device (such as a tablet) with the goal of being a replacement
to the paper form. Such electronic data collection, while reducing
most of the issues seen with paper-based data collection, gives us
many other advantages: there is no need for dual data entry; some of
the information can be auto-filled (e.g. time and location); some data
can be auto-captured (e.g. static plant information from RFID tags);
some media can be attached (e.g. photos, sketches, and audio). The
data so collected can be transferred easily to the processing centre.
This transfer can be in a manner that lends itself to easy processing
(e.g. there may not be a need to re-code the data).
Motivation
Android application development is a field which interests me.
I believe that accessing data and operating from a mobile device
is the way of the future. In undertaking this project, I am hoping
that achieving a better understanding of programming for the Android
environment will prove to be a valuable addition to my skill set.
Personally, I feel that Android development is the perfect introduction
to mobile application development. This is because applications are written
in Java and also because there is a large amount of online forums dedicated
to Android programming. The fact that Java is one of my favoured programming
languages along with the fact that there will be no difficulty in finding
people with similar problems and solutions make this project ideal for me.
People
Academic Supervisor
Dr. Sathiamoorthy Manoharan
Bachelor of Technology; Information Technology Coordinator
s.manoharan@auckland.ac.nz
Company Mentor
Bryan Graham
Research Leader - Software Engineering at Scion
Bryan.Graham@scionresearch.com
Me
Dasarsh Vadugu
4th year BTech IT student
dvad984@aucklanduni.ac.nz
Log Book
- 05/03/2014 - Received Scion project.
- 09/03/2014 - First plan of action draft.
- 13/03/2014 - First sketch of prototype GUI.
- 18/03/2014 - Began Android programming tutorial series - Using Eclipse Android SDK.
- 28/03/2014 - Basic form layout of prototype GUI achieved.
- 03/04/2014 - Date and time functionality in progress.
- 04/04/2014 - Date and time functionality achieved.
- 08/04/2014 - Camera functionality in progress.
- 14/04/2014 - Camera functionality achieved - Yet to save taken photos or display as thumbnail.
- 20/04/2014 - Freehand picture functionality in progress.
- 29/04/2014 - Skype chat with Bryan Graham and Samuel Damesin; had some questions answered.
- 07/05/2014 - Sent NDA form so that a previously used nursery form could be sent for the sake
of understanding and using the form structure.
- 16/05/2014 - Received forms which were previously used in the nursery so as to derive a
format for the form.
- 29/05/2014 - Skype chat with Bryan and Samuel; requested explanation in regards of the forms
as they were unclear in their purpose.
- 06/06/2014 - Java Excel API imported and being used now to introduce spreadsheet functionality
to the project.
- 10/07/2014 - Arrived at Scion in Rotorua and met Samuel Damesin and Mike Dibley to confirm the
specifications of the application.
- 10/07/2014 - Heavy overhaul of the original prototype to incorporate all the aspects learnt
from the new specification. Design dictates five forms which save to Excel spreadsheets, still
retaining the camera and photo editing functionalities. Spinner objects will be needed to give
choices from other forms..
- 13/07/2014 - Form can now collect data from its fields and add to an already existing
spreadsheet.
- 24/07/2014 - Client, Species and Location form added.
- 25/07/2014 - Length of the bed (used in the Static form) is now automatically calculated from
the values taken from the starting and ending of the bed.
- 25/07/2014 - The Static form now features a Spinner object which successfully reads and
displays clients.
- 25/07/2014 - The Static form now successfully adds a client chosen from a Spinner object to
its spreadsheet.
- 28/07/2014 - Added a Species Spinner object to the Static form and adapted the method used
to set up these Spinner objects such that it can be used for both client and species. The Spinner
objects do not have a predefined way of displaying a hint to the user so the column heading in
the spreadsheet which is being read to populate the Spinner is being used as the hint. This
requires a change in the column headings in that they must be descriptive to the user eg "Client
Company".
- 29/07/2014 - Photos can be taken and are attached by adding the photo name to the sheet.
- 02/08/2014 - Dynamic mapping form complete, mirrors functionality of the Static mapping
sheet besides some minor differences such as the removel of bed-related fields and the addition
of a Spinner object for the Location.
- 02/08/2014 - The taken photo is now being painted on a canvas, which can then be drawn
on top of.
- 03/08/2014 - The method used to determine the time and date has been redone as the previously
used method was causing errors with generating different formats on different Android versions.
This new method guarantees consistency by using a more standard way to determine the time and date.
- 03/08/2014 - The Dynamic mapping form now has the functioning photo editing capability.
- 03/08/2014 - The length of the bed (used in the Static form) is being calculated in a safer
way; there are no more cases which can cause exceptions.
- 04/08/2014 - The sheet preview has been implemented to the Static form, allowing for the
user to have a dynamic and real-time view of the sheet that they are editing. This will be
useful later for the sake of editing any possibly incorrect entries made by the user.
- 08/09/2014 - Project overhaul - Sheets are now to be dynamically generated as opposed to the forms
which are being statically generated.
- 10/09/2014 - XML files are to be used to specify the questions which are to be dynamically generated.
- 13/09/2014 - XML files can be read and the appropriate questions are being generated dynamically.
Text, numeric, multiple choice single response, multiple choice multiple response, media, time/date and location
are the question types being currently catered for. This is being done using a custom XML parsing scheme.
- 20/09/2014 - Fixed bugs with the image editing activity, the image was being shown in a very low
quality before. This was because the image was being compressed at a very high rate. This has been modified
so that there is almost no compression done on the image.
- 28/09/2014 - Began to work on implementing cloud service integration. Options are Google Drive
and Dropbox.
- 29/09/2014 - Some functionality using the Dropbox API achieved. The application is able to
browse the user's
Dropbox storage using a Dropbox API Chooser.
- 06/10/2014 - Dropbox API incorporated into application now allows for user to save files onto
their Dropbox storage.
- 15/10/2014 - Met with Mano to discuss some options on display and functionality. Outcome was to change
layout so that there would be no sharing of the screen between the preview and the form (this caused congestion),
but a separate view for both of them. Also a schema defining the XML was to be made.
- 16/10/2014 - New project started in order to implement the changes which had to be made with
regards to the layout.
- 20/10/2014 - New layout achieved. Sliding from left to right and vice versa switches views between
the form and preview components.
- 21/10/2014 - XML Schema Definition (XSD) complete and validated online against the existing templates
which were being used for testing to date.