Skip to main content

Maintenance Plan

Maintaining the VADEMOS tool requires attention to both data updates and application/server upkeep. Below is a structured overview of the key maintenance activities:


1. Data Maintenance

1.1. VADEMOS Database and AWS Maintenance

  • Database Licenses: Ensure that all AWS-related licenses (e.g., RDS instance) are renewed on time. Monitor database usage and ensure that resources (e.g., storage, CPU) align with the needs of the VADEMOS tool.
  • AWS Backups: Regularly back up the database to prevent data loss. Implement automated daily backups using AWS RDS features or similar tools. Verify backups quarterly.
  • Database Performance: Optimize queries and indices periodically to maintain performance as data grows. Monitor slow queries using AWS monitoring tools.

1.2. FAO Dataset Updates

  • Frequency: The FAO dataset is updated annually. When a new dataset is available, update the corresponding database table in VADEMOS.
  • Steps to Update:
    • Download the updated FAO dataset.
    • Preprocess the data to ensure it aligns with the format and schema used in the database.
    • Replace the outdated dataset in the database and test the app for any changes.
  • Verification: Cross-check key statistics (e.g., population trends) before finalizing the update.

1.3. Population Prediction

  • Yearly Run: Use the updated FAO dataset to generate new population predictions for the next 10 years using the AutoEnsemble model.
  • Steps:
    • Rerun the AutoEnsemble script with the new dataset.
    • Update the forecasted_data table with the newly generated population predictions.
    • Validate predictions using historical trends.
  • Timing: This should be done annually after the FAO dataset is updated.

1.4. Density Data Updates

  • Frequency: Gridded Livestock (GLW4) datasets are updated periodically (e.g., 2018, 2022). Monitor FAO for new releases.
  • Steps to Update:
    • Download the latest GLW4 dataset.
    • Rerun the GIS processing pipeline to recalculate density data (zonal statistics).
    • Update the density table in the database.
  • Verification: Ensure that calculated densities match expected values by sampling a few administrative regions.

2. Application and Server Maintenance

2.1. Shiny App Updates

  • Code Updates: Review and update the app code for any deprecated functions or packages. Perform this check biannually or when a major R version is released.
  • Package Management:
    • Regularly update R and R packages used in the app.
    • Test the app locally after each update to ensure no compatibility issues arise.
  • Feature Enhancements: Periodically review user feedback for new feature requests or usability improvements.

2.2. Server Monitoring and Security

  • Resource Monitoring: Use AWS CloudWatch or similar tools to monitor server performance (e.g., CPU usage, memory, and disk space).
  • Scaling: Adjust instance size or auto-scaling policies to handle increasing traffic.
  • Security:
    • Ensure that all server endpoints are secured with HTTPS.
    • Regularly rotate database credentials and AWS keys.
    • Monitor for unauthorized access attempts using AWS CloudTrail.

2.3. Regular Testing

  • Functionality Tests: Test the app's core functionalities after any update to the database, density data, or FAO dataset.
  • User Interface (UI): Review the UI for any display issues or responsiveness problems on different devices.
  • Load Testing: Perform load testing annually to ensure the app can handle peak traffic.

3. General Maintenance Activities

3.1. Documentation Updates

  • Keep all documentation (e.g., maintenance steps, data pipelines, user guides) updated after every major change to the system.
  • Maintain a changelog for every modification made to the app or database.

3.2. Disaster Recovery

  • Backup Testing: Periodically restore backups in a test environment to ensure data recovery processes are functioning correctly.
  • Failover Plan: Implement a disaster recovery plan with a backup server or database instance in a different region for high availability.

3.3. User Access Management

  • Regularly review user access permissions for both the database and the app. Ensure that access is granted only to authorized personnel.

Summary of Key Maintenance Intervals

ActivityFrequency
FAO Dataset UpdateAnnually
Population PredictionAnnually (post FAO update)
Gridded Livestock UpdateWhen new data is available (e.g., 4-5 years)
App Code UpdatesBiannually or as needed
Database BackupsDaily (Automated)
Security and MonitoringMonthly
Load TestingAnnually

By adhering to this maintenance plan, the VADEMOS tool will remain reliable, efficient, and up-to-date.