• No results found

Collaborative development of open source software for mobile and web data capture and management

N/A
N/A
Protected

Academic year: 2021

Share "Collaborative development of open source software for mobile and web data capture and management"

Copied!
45
0
0

Loading.... (view fulltext now)

Full text

(1)

Collaborative development of

open source software for mobile and

web data capture and management

Achievements, tools and processes, lessons

learned and dynamics of changing mobile platforms

Jørn Klungsøyr

(2)

DESIGN www.openXdata.org COLLECT www.openxdata.org MANAGE DESIGN

Video tutorials available at: doc.openXdata.org

www.openXdata.org [email protected]

(3)

Design complex forms in graphical interface

Supported question types include e.g.:

Text, Numbers, Date, Time,

Single / Multi-select,

Multimedia, Geotagging

Define skip logic & answer validation criteria
(4)

Collect -

Mobile

Structured SMS – manually coded forms – for any phone

(5)

Web-based forms can be accessed through desktop computer, laptop, netbook, pads/tabs and

smartphones with access to the internet and

JavaScript support

(6)

Own your data - host on your own servers

Define roles for different types of users (e.g. administrator, study manager,

mobile data collector)

Export data to CSV or direct to a relational database

Manage data and forms using a standard web-browser
(7)
(8)
(9)
(10)
(11)

Palm (C/C++)

PocketPC / Windows Mobile (VB.net / C#)

J2ME (Java) – Nokia / Sony Ericsson / Blackberry

Linux (C/C++)

iPhone/iPad (Objective C)

Android (Java)

WebOS

HTML5 / JavaScript

Requires flexible architecture to support multiple platforms, sizes and versions.
(12)

EpiHandy was developed using .NET / Microsoft Technologies (MSSQL, IIS, VB, C#)

Running on Windows and PocketPC

EpiHandyMobile using Java (J2ME and J2SE) connected to existing .NET based applicaiton

OpenXdata was developed in Java.

Replaced EpiHandy and built on EpiHandyMobile

OpenXdata uses GWT/JavaScript for web front end.

Next steps? JavaROSA based android, native android, eCollect – HTML5/JavaScript client.
(13)
(14)

GarageHacking / Anarchy - just make it work

High level of trust/autonomy - no way to handle review/merits

Distributed teams – no fixed/regular interaction cross sites.

Ant based - no dependency management

Dependencies as binaries in subversion

Fragile release management

Mobile build required WTK

Long release cycles (1/2 - 1 year)

Numerous forks and paralell efforts
(15)
(16)

Formal consortium founded in June 2010

Organizations as members

Management Committee

Steering Committee

Core Developers

External Contributors
(17)

Agile / XP and Apache community influenced

Tickets

Management Committee

Prioritized backlogs

Core committers - how to become

Milestones

Patch submission

Daily standups - skype

2 week iterations with releases of each discrete component

Public releases handled through maintenance releases.
(18)

Iterations / Releases Backlog

Projects / Sources

(19)

Maven – Code build and dependency management tool

Subversion - Code repository

Trac – Ticket and development management

Jenkins – Continuous Integration server (build server)

Nexus – Artifact repository (dependencies)

Cobertura – Test coverage

FindBugs – Code analyse

Checkstyle – Code style checking

Concordion - Acceptance tests
(20)

Clinical Study in Peru with ~24K participants (OpenMRS)

Routine HIV reporting in South Africa ~10K users (DHIS)

DOTS for MDR-TB in Pakistan++ (OpenMRS Xforms)

Community HW - MoTeCH in Ghana(MoTeCH+OpenMRS)

Mobile Clinical Trial: OMEVAC in Uganda (OpenClinica)

Immunization Registry: mVAC Albania - Workflow (YAWL)

Web mapping: OpenXmapper (GeoServer/OpenLayers)

Web analytics: OpenXanalyzeR (R for analysis)

Offline web (eCollect)

Reporting (JasperReports)

Security: OpenXsecure (BouncyCastle)
(21)

Initial assumption to use structured SMS by health workers to create and update medical records using their own phones using "free" SMS.

o The required messages were long and complex

o The costs of SMS's would sum up to be a significant cost

Calculated costs of SMS compared to forms based application (J2ME).

o It was much cheaper to give new phones and pay for mobile data than cover costs of "free" SMS.

User comparison / validation workshop

o SMS was surprisingly cumbersome, challenging and unfamiliar o openXdata was intuitive and required little training to start using

Conclusion:

o "on all fronts it ended up being better. It was cheaper, better ease of use, better quality of data that could be presented and we could collage much more data - enabling more functionality in the system."

(22)

OpenXdata introduced risks and challenges

o Knew they had to change/modify to make more robust

o No proper release process

Interoperability was challenging

o Used pieces of openXdata – not the full package

o Used whitebox integration with OpenMRS

Unstable components

o Xforms designer in openXdata was extremely fragile

(23)

Designer has been source of a lot of griefs and tears.

Performance issue - some things can be quite slow in the admin interface.

The form designer takes quite some time to load.

Large projects managing users - usernames, passwords -especially if users only have access to mobile.

Lack some features like automated reports/statistics

Problems with Data validation and Form version creation.

Lack of support for advanced logic

Development branches – re-integration

Lack of multitenant hosted/cloud solution
(24)

Ability for a someone who is not a programmer to design a

questionnaire – a very powerful questionnaire with complex skip logic

Flexibility to create forms based applications for any type of domain.

Change management – in custom applications – a change can have huge implications. How we can manage that in openXdata is incredible.

Remote – used openXdata at the furthest locations on low-end phones in disconnected mode.

Enabled individual level data at point of service

Xforms and XML based

Web-based dashboard and management

Supports very large and complex forms on both web and mobile

Automated availability of data in regular SQL database.
(25)

It is open source and free and cost of maintenance is very low.

Do not need latest phone models.

Dashboard works in regular browsers

Mobile works on low-end / low-cost phones

Flexibility to adapt it to the requirements of clients

Ability to deliver solutions fast due to not starting from skratch

Immediate availability of data once uploaded from phone

Data is validated during collection

Reduced cost of data capture

Digitized individual level data – automated reporting

Mobile is easy – field workers have not have had challenges – the cell phones is ubiquos
(26)

DESIGN www.openXdata.org COLLECT www.openxdata.org MANAGE DESIGN

Video tutorials available at: doc.openXdata.org

www.openXdata.org [email protected]

(27)
(28)

Java

Spring

Hibernate

GWT/GXT

MySQL

Apache Tomcat

Xforms and XML

Liquibase – Database change management

Testing frameworks - JUnit / Spring Testing

Framework

Build Tool – Maven

Dependeny management -Nexus

Mobile: J2ME
(29)

Binary Protocol plugin – handle multiple versions of clients.

Non-binary protocol support e.g. REST

Serverside processing of XForms and XML

Versioned Hybrid XML and Relational DB
(30)

2 locations 400km apart in Norway

o University of Bergen

o University College of Ålesund

Local backup and cross site replication

LDAP – Linux servers and services.

Pgina is investigated to offer authentication for windows clients.

Account registration

30+ vm’s on XenServer (4 physical – 2 simple)

CentOS 5.7

Ubuntu 10.04 (switching to12.04)

Windows 7 / 2003
(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)
(40)
(41)
(42)
(43)
(44)
(45)

DESIGN www.openXdata.org COLLECT www.openxdata.org MANAGE DESIGN

Video tutorials available at: doc.openXdata.org

www.openXdata.org [email protected]

References

Related documents

“Open Altra Economia” (OAE) is an Italian R&D project experimenting with Open Data and Open Source Software (OSS) to advance the cause of "Altra Economia

The other part of this study is structured as follows: in Section 2 some studies related to these issues are presented; Section 3 considers open source communities;

The implementation of a supply chain management in public administration will help the government to better manage their data flow, improve the quality of

FEPS provides fi ve data input tabs: Event Information, Fuel Loading, Fuel Moisture, Consumption and Hourly Input.. The most recent FEPS update, version 1.1, includes fuels data

KEMRI: Kenya Medical Research Institute; KWTRP: KEMRI-Wellcome Trust Research Programme; CTDMS: Clinical trials data management system; OC: OpenClinica; CRF: Case report form;

After the implementation of a Lucene-based text index of “semi-structured data”, a college radio station's card catalog application was able to deliver higher-quality search

There are many challenges remaining for this study in terms of: Availability of spatial data, standards and policies; Data quality which has an significant role in decision

The objective of this study is to develop a web-based geo-information service using open source software for distributing Multi-temporal data such as flooded areas satellite