NCEAS / vegbank2

Design and development for VegBank
http://vegbank.org
1 stars 0 forks source link

Design planning and Storage Service and API #8

Open mbjones opened 3 months ago

mbjones commented 3 months ago

This phase creates an upgraded postgres database using the current VegBank data model, and deploys it on an updated operating system, and with a newly designed REST API that provides a service access layer to both download and upload all data within the system. To the extent possible, this storage service will implement an API that is compatible with the DataONE REST API, to enable VegBank to become a member of the larger DataONE federation of data repositories. At the end of Phase I, the core VegBank data store will be a standalone service that can be directly accessed by both the Phase II web application and other client tools, such as commmand line browsers such as curl and scripting languages such as R and python. This system should be smaller and more maintainable than any web application that relies on it, and will be designed for maintainability.

Task# Description Weeks Notes
1 Spinup on existing codebase and data model 4
1a Data model - Design iterations, simplification 4 NB: simpler to keep existing model, unless there are missing data types?
2 REST API - Design iterations 2
xx REST API - Design over-the-wire data representation 4
3 REST API - Code and Test 8
6 Design and code new data loading format and loading process for efficiency 16
8 New build system (maven) 2
9 New testing suite/CI 2
10 Automate build and deploy process 2
11 Deploy REST Service (upgrade postgres, web servers, etc) 1
12 Supervision and coordination (one week each for Jones, Lee, and the developer) 3
xx Contingency time 16

TOTAL: 64 person weeks