Proposed Activities

ActivityFunded (Y/N)CostDelivery Date
Technology Transfer - Update and Improve DocumentationY

$10,000 (HEC labor)

$20,000 (Field labor)

 

Technology Transfer - Host Webinars and WorkshopsY

$20,000 (HEC labor)

$30,000 (Field labor)

 

Fix Bugs as ReportedY

$60,000 (HEC labor)

$55,000 (Field labor)

 

Improve Performance and StabilityY$50,000 (HEC labor)

 

Software Improvements - Update QueriesY$100,000 (HEC labor)

 

Software Improvements - Cloud MigrationY$40,000 (HEC labor)

 

Software Improvements - Production OpenDCS in CWBIY

$35,000 (HEC labor)

 

Software Improvements - District Control of ConfigurationsY

$10,000 (HEC labor)

 

Update and Improve Documentation

Documentation will be updated and improved as needed throughout the year. Over time, the team will increase the documentation coverage and make the information easier to find and digest for the users.

Host Webinars and Workshops

The team plans on hosting webinars and workshops throughout the year to inform users on new features within OpenDCS. As cloud migration continues to progress, many districts are needing help with using OpenDCS. These training opportunities will help to better inform the field on how to use OpenDCS.

Find and Fix Bugs

Bugs will be fixed when they are identified and reported. OpenDCS is a complex suite of software components that has made many assumptions over time about what behavior is correct. As users identify bugs, either failures or implementation that does not match the documentation, the team will fix those issues and make new releases.

Improve Performance and Stability

OpenDCS has been developed and improved over 20 years, and the developers had to make assumptions about how certain resources are, or can be, managed. Additionally, some components are slower than they could be, due to lack of time the original development team was given to optimize sections of code. Some of these assumptions also affect stability, or the ability of the application to continue to run. As specific issues are discovered and reported, the team will strive to correct them while improving overall performance.

Update Queries

The queries that OpenDCS uses to interact with the database do not properly use bind variables when interacting with the database, which affects application security. This is more critical with services exposed to the web. The team will update queries within OpenDCS to remove security issues.

Cloud Migration

Cloud migration efforts include setting up OpenDCS in a way that is practical to manage within a cloud environment, such as running in docker containers and automatically scaling when the task list increases.

Production OpenDCS in CWBI

Some work will be completed to allow for production OpenDCS to be hosted in CWBI. OpenDCS is currently running in CWBI Test. The team will analyze lessons learned from that setup experience to create an easier to manage infrastructure for the production environment.

District Control of Configurations

District staff will be responsible for management of data ingestion and computations for their own districts. National teams will be responsible for managing data (such as GOES) to prevent unnecessary duplication of data. There is basic support for differentiating offices now, however it is set up using a Windows Virtual Machine and an OpenDCS profile per district. Some progress will be made on the OpenDCS RestAPI's CWMS Support, and the team will start to leverage that setup to provide access to the system.