Serverless water trading - Murray Darling Basin Authority Barmah Choke API

Existing processes werelargely manual and automation was needed to allow real time trading capabilities.

 

Image/ Flickr/Parks Victoria.

The Murray-Darling Basin Authority (MDBA) is responsible for managing the Murray-Darling Basin. Sustainability of the river system is a collective endeavour of the various ‘Basin States’ and the Australian Government, along with industries and communities who depend on the river system.

The Barmah Choke is a naturally occurring narrow stretch of the River Murray that begins downstream of Cobram, Victoria and ends upstream of Echuca, Victoria. The Choke runs through the Barmah–Millewa Forest on the Victorian/NSW border.

It  restricts the flow of the River Murray to just over 10,000 ML per day – the lowest flow in any stretch of the Murray. It presents a challenge for river management, primarily because it limits the delivery of irrigation water during periods of peak demand, generally in spring and summer.

The Challenge

MDBA and the Victorian Department of Environment, Land, Water and Planning (DELWP) were seeking to automate the existing manual process used to trade water on the Barmah Choke. The DELWP automation needed to allow real time trading capabilities, including retrieving balances and making trades. The existing process was largely manual and facilitated by uploads to an FTP server. 

Barmah Choke water trades in Victoria had required manual processing since 2014, when a rule that restricted allocation trade from upstream of the Choke to downstream was reinstated by the Authority.

The Authority now wanted to minimise operational costs and achieve a May go-live date for the automation project.

The Datacom Difference

Datacom worked collaboratively with DELWP and MDBA and brought in specialist API and integration knowledge.

MDBA acting head of Compliance, Brent Williams said the new system eliminated inconsistencies between states, as both New South Wales and Victoria can now process trades on receipt.

"This new online tool means that Victorian water users have the same opportunity as New South Wales water users to request trades across the Barmah Choke as long as there are no other restrictions on trade," said Williams.

"These improvements mean that people wanting to trade water across the Choke will have more accurate information to support their decision."

The water trading API runs on AWS API Gateway. Datacom worked with MDBA and DELWP to develop the OpenAPI definition which describes and builds the API. The definition includes models used to validate incoming messages, and authorisation which manages access to the API.

The integration layer is completely serverless, running on AWS Lambda. Datacom developed the Node.js microservices which integrate the API with the backend SQL infrastructure, based on existing PHP code provided by MDBA’s own IT team.

Datacom also created a DevOps pipeline using AWS CodeCommit, AWS CodeBuild and AWS CodePipeline, which tests, builds, packages and releases all code changes. Datacom worked with the MDBA IT team to create Ops monitoring, in the form of notifications and AWS CloudWatch dashboards.

Results

Datacom was able to build the development and test APIs based on requirements within one week of starting the engagement. After technical and security reviews by MDBA, the production API went live on schedule and on budget in May 2018.

The Datacom solution is completely serverless, marrying cutting-edge API and microservices technology with existing traditional relational databases to rapidly achieve MDBA’s desired outcome.

The operational cost for this serverless solution is negligible since it was built on the existing AWS environment. .

The AWS API Gateway is now responsible for validating and authorising incoming messages, the integration code is concerned only with value - the business logic for trading water.

A new DevOps pipeline has reduced the time for deployment to seconds and increased stability by ensuring consistency across environments.

Summary

“The MDBA is very satisfied with the outcome of the Barmah Choke API project.  With limited time to implement, Datacom collaborated with a number of business stakeholders, and drew on the knowledge of their specialist resources to implement a cutting edge capability on the Authority’s existing traditional relational databases.  This outcome has delivered efficiency through integration, stability, cost efficiency and greater supportability.  A great outcome!” Rod Barlow, Director, ICT Service Operations, Murray Darling Basin Authority

“The MDBA is very satisfied with the outcome of the Barmah Choke API project. With limited time to implement, Datacom collaborated with a number of business stakeholders, and drew on the knowledge of their specialist resources to implement a cutting edge capability on the Authority’s existing traditional relational databases. This outcome has delivered efficiency through integration, stability, cost efficiency and greater supportability. A great outcome!”

Rod Barlow, Director, ICT Service Operations, Murray Darling Basin Authority