Now loading.
Please wait.

menu

IIC Technologies supporting the National Oceanic and Atmospheric Administration (NOAA) Precision Marine Navigation Program

Home IIC Technologies supporting the National Oceanic and Atmospheric Administration (NOAA) Precision Marine Navigation Program
NOAA

IIC Technologies supporting the National Oceanic and Atmospheric Administration (NOAA) Precision Marine Navigation Program

posted in development by admin

Under the NOAA Precision Marine Navigation Program, IIC was contracted to develop online support for S-100 data cataloguing, discovery, packaging, and distribution automation. The resulting NOAA S-100 Metadata system provides the functionality needed to store dataset discovery metadata records in the metadata database and to use them to construct the exchange set catalogues ready to be consumed by other systems.

Background

Ports and the associated trade flows are the lifeblood of the U.S. economy. By providing access to international markets, U.S. seaports support economic activities that in 2018 had a total economic impact to the national economy that exceeded $5.4 trillion and supported more than 30.8 million jobs. Today's ships are moving through U.S. ports with little extra room - under their keels, under bridges, and in narrow channels. As vessel size increases and port infrastructure remains largely the same the margins of error become smaller and the need for better navigation data increases. The "just-in-time" supply chain upon which the U.S. economy depends demands that ports operate continuously, 24 hours a day, 7 days a week. However, delays and due to the uncertainties posed by environmental factors can equate to millions of dollars a year in lost revenue for shipping companies and ports. Unfortunately, the tools currently available to mariners for making safe operational decisions have not changed significantly over the last twenty years forcing increased vessel load and wait times in ports.

NOAA’s Precision Marine Navigation program aims to address the above issues by seamlessly integrating high-resolution bathymetry, high accuracy positioning and shoreline data with forecast data—such as water levels, currents, salinity, temperature, waves, and weather forecasts—to provide NOAA data in a format that can be easily accessed and integrated into maritime portable pilot units or decision support tools. As a result, mariners will be better equipped to make critical navigation decisions. This means that under the Precision Marine Navigation Program NOAA’s marine navigation data will be available in one location online and through navigation software systems and apps that mariners and recreational boaters are already using. The collective value of these datasets is even more powerful when they are integrated than when they are each disseminated separately.

Solution

The IIC Technologies development team has been NOAA’s dedicated industry partner for many software tools. Under the Precision Marine Navigation Program IIC was contracted to develop online support for S-100 data cataloguing, discovery, packaging, and distribution automation via REST API using Python and Django and XML frameworks.The resulting NOAA S-100 Metadata REST API system provides the functionality needed to store dataset discovery metadata records in the metadata database and to use them to construct the exchange set catalogues ready to be consumed by other systems. Additionally, the API subsystem provides the support functionality needed to manage the full life cycle of all records and any auxiliary information in the database, including the ability to create, read, update and delete individual records as needed. Users are also able to export the resulting XML exchange set catalogues and perform their validation based on the underlying S-100 metadata XML schemas. Currently the system supports four S-100 products, namely S-101, S-102, S-104 and S-111. The system is part of NOAA S-100 data dissemination system and interconnects with other NOAA systems operating using Amazon cloud services as shown in figure 1.  

Figure1

Figure 1. NOAA S-100 data dissemination system overview.


In addition to a model driven development of the underlying database, one of the fundamental goals for this project was to have a fully automated machine-to-machine data exchange capability via a standard REST API implementation. Such an implementation allows the system to operate fully autonomously, in the cloud by providing access to all database resources and functionality via a set of predefined methods defined using the OpenAPI 3.0 specification. The NOAA S-100 Metadata REST API system was designed in line with the OpenAPI 3.0 using Swagger API design toolset as pictured in the figure 2. 
 

Figure2

Figure 2. NOAA S-100 API definitions using OpenAPI 3.0.
 

Formalizing API design using OpenAPI specifications is one of the modern industry best practices andgoes a long way to help developers deliver stable systems that can be reliably maintained online. Equally importantfor an API stability, is to comprehensively test the system, ideally using tools supporting test automation within a full-featured test harness. IIC uses Postman API test toolset that allows for scripting of collections of automated tests to quickly test the entire API after any code changes. Figure 3. Illustrates one of the NOAA S-100 API test collections executed prior to final project delivery, with over 160 automated tests successfully passed.
 

Figure3

Figure 2. NOAA S-100 API definitions using OpenAPI 3.0.

 
The system also provides an online metadata editor that can be used to make metadata record modifications using an interactive, web browser based, interface as depicted in the figure 3.
 

Figure4

Figure 3. NOAA S-100 online metadata editor. 

 

 

27 May, 21