EPA Android App - Final Specification







    The challenge is finished.
    Show Deadlinesicon-arrow-up

    Challenge Overview

    1. Project Overview

    The EPA is a U.S. federal government agency devoted to safeguarding the environment. One of the EPA's great concerns is the profileration of cyanobacterial harmful blooms (cyanoHABs) in the nation's lakes. The following resources provide information on what cyanoHABs are and how they threaten the environment.

    The TopCoder project on cyanoHABs aims to develop an algorithm that will be deployed in an Android app with mapping and data visualization capabilities. The app will inform local and federal policy makers about locations where bloom events are likely to occur, allowing them to concentrate their efforts in those areas.

    2. Contest Overview

    In this contest, we are looking for you to design the final specification for complete EPA Android App. There are a series of modules that have already been developed and many more to complete. We want you to use all the available information architecture in form of wireframes, storyboards and conceptualization document in designing this specification. We will provide access to the prototype and front-end that have been already developed. We will also provide you component specification for a component that we are planning to embed into the backend. Finally, we will provide you with the system design specification and system architecture details which were obtained in a recently completed system architecture contest.

    enlightened Tips for Sucess:
    • Asking questions early and getting feedback is very important for the success of this competition.
    • Ask questions if you feel anything is confusing, or if you have any questions on the provided resources.


    Given the conceptualization document, wireframes and system architecture in addition to the other resources, produce an Application Requirement Specification for the EPA Android App.

    3. Data Details

    We have two types of input data:

    • Image Data : GeoTiff images which has geo-encoded information
    • Text Data: Excel files containing data.

    The data is in very large amounts. The images will always be GeoTiff. The data management module will have the component which will read all this data and convert into single canonical structure. The component specification will provide information about this process.

    4. Technology Overview

    The working environment requirement details for this application are outlined in the System Design Specification. An overview of the environment requirements is listed below:

    1. The Android App front-end has been developed for Android 4.1-4.4 support using android developer tools. It also uses Google Maps Android API v2, AChartEngine 1.1.0 and ProgressWheel.

    2. The Data Standardization component (to be embedded in data management module) is being developed in Java.

    3. The Admin Website is a CMS developed using Django framework 1.6.1, Python 2.7x and PIL 1.1.7.

    4. We are open to use of any technology for the back-end and data management module as far as it does not limit any specific OS requirements.

    5. We plan to host the back-end and data management module along with the admin website on a single (same) server - ex. Amazon EC2 Server.

    6. Open source software resources are welcome, but they must have third party support services available.

    7. Image data is being read using gdal Library.

    Please Note: For Section 508 compliance, this contest must follow the accessibility rules provided here:  http://developer.android.com/guide/topics/ui/accessibility/index.html


    5. Resources Provided

    The following resources have been provided in the forums. You will be able to access it after registration:

    1.) Conceptualization Document

    2.) EPA Android App Wireframes

    3.) EPA Android Website Wireframes

    4.) EPA Android App Storyboards

    5.) EPA Android App Front-End Prototype. (Android)

    6.) EPA Android Admin Website Prototype. (Python + Django)

    7.) EPA Android App Data Standardization Component Specification. (Java)

    8.) System Design Specification

    9.) System architecture TCUML

    Reliability Rating and Bonus

    For challenges that have a reliability bonus, the bonus depends on the reliability rating at the moment of registration for that project. A participant with no previous projects is considered to have no reliability rating, and therefore gets no bonus. Reliability bonus does not apply to Digital Run winnings. Since reliability rating is based on the past 15 projects, it can only have 15 discrete values.
    Read more.


    2014 TopCoder(R) Open


    Final Review:

    Community Review Board


    User Sign-Off