Abstract

BackgroundThe Epi-Info software suite, built and maintained by the Centers for Disease Control and Prevention (CDC), is widely used by epidemiologists and public health researchers to collect and analyze public health data, especially in the event of outbreaks such as Ebola and Zika. As it exists today, Epi-Info Desktop runs only on the Windows platform, and the larger Epi-Info Suite of products consists of separate codebases for several different devices and use-cases. Software portability has become increasingly important over the past few years as it offers a number of obvious benefits. These include reduced development time, reduced cost, and simplified system architecture. Thus, there is a blatant need for continued research. Specifically, it is critical to fully understand any underlying negative performance issues which arise from platform-agnostic systems. Such understanding should allow for improved design, and thus result in substantial mitigation of reduced performance. In this paper, we present a viable cross-platform architecture for Epi-Info which solves many of these problems.ResultsWe have successfully generated executables for Linux, Mac, and Windows from a single code-base, and we have shown that performance need not be completely sacrificed when building a cross-platform application. This has been accomplished by using Electron as a wrapper for an AngularJS app, a Python analytics module, and a local, browser-based NoSQL database.ConclusionsPromising results warrant future research. Specifically, the design allows for cross-platform form-design, data-collection, offline/online modes, scalable storage, automatic local-to-remote data sync, and fast analytics which rival more traditional approaches.

Highlights

  • The Epi-Info software suite, built and maintained by the Centers for Disease Control and Prevention (CDC), is widely used by epidemiologists and public health researchers to collect and analyze public health data, especially in the event of outbreaks such as Ebola and Zika

  • We propose and implement a new crossplatform architecture for Epi-Info software suite, which can simplify the codebases, expedite the development process and incorporate open-source techniques for flexible interfaces

  • Implementation We present a cross-platform system architecture which allows for intuitive form-design, data-collection, online and offline modes, automatic local-remote data sync, fast analytics, and scalable storage

Read more

Summary

Results

We have successfully generated executables for Windows, Mac, and Linux machines from a single code base, and we have shown that performance need not be completely sacrificed when building a cross-platform application. As opposed to Kivy, allows engineers to work with familiar technologies which can be encapsulated in the framework We feel that this should allow for increased flexibility, a reduction in development time, and greater ability to share components across applications. We feel it would be easy to extend their application, wrap it in an electron framework with an embedded NoSQL database, and allow for a robust offline use-case. This would not be possible if each group were not using such widely. PouchDB was discovered, and we found it to have adequate support, greatly simplifying and expediting the development process

Conclusions
Convert JSON to Pandas DataFrame
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call