development collaboration workshop 2010 iris. field needs an advanced set of integrated dss tools...

31
Development Collaboration Workshop 2010 Iris Iris

Upload: sophia-sherman

Post on 27-Dec-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

Development Collaboration Workshop 2010

IrisIris

Field needs an advanced set of integrated DSS tools Situational awareness beyond current capabilities of AWIPS

○ Event logging/storm reporting

○ Cataloging of impacts/concerns

○ Contact management (spotters, EM, etc.)

○ Sharing of local office DSS data to assist in service backup

○ Mapping data interface – common application to display all data

Field needs a single framework for future field innovation efforts

Field Motivation

Build Data Compatibility / Build DSS Solutions Central collection and distribution point for many types of data

Replace multitude of programs, databases, and data formats with a single structure and location where this information is stored and retrieved

Facilitate sharing of information between offices, programs, regional and national headquarters

Provide common interface from which forecasters can easily determine if forecast weather will have an impact on particular NWS stakeholders.

Iris Motivation

What is Iris?

A database framework engineered to manage many types of NWS data: customer contact information, criteria and thresholds, spotter

information, communication logs, equipment status, office/community events, weather events and storm reports, NWS products, and verification

Products broken down and stored in their atomic parts

Development being done with industry standards AND consistent with AWIPS Extended technologies

Background

Grew from field efforts to address DSS needs; each application using similar data StormLog (spotter management / report logging) PANDA (verification) SevereClear (situational awareness) Various spreadsheets / contact management

Each application required its own database and decoders Info entered multiple times; hard to manage or share, duplication

of effort

Group of field/regional staff banded together and engineered concept of single database structure for all applications

Often without easy ways to support backup modes

BackgroundContinued

Iris team developed current goals/structure/framework

Sought out and conducted own training on technologies

Field/Regional staff developing in spare time ITOs, SOOs, WCMs, Forecasters, Program Mgrs Using patch work equipment

Progress has been good...given part-time aspect

IAB/RITT/OS&T funded 2 developer workshops (January 2010, August 2010)

Architecture

DatabasePostgres

+PostGIS

PersistenceHibernate

SpringRPC

Jabsorb

Web ClientQooxdoo

IrisCore

Database

Postgres

PostGIS extensions

Contains Pre-populated quality controlled NWS and General GIS data

Persistence Layer

HibernateORM (Object Relational Model)

○ Translates objects between database and Java

Hibernate SpatialAllows use of spatial data and spatial restrictions in

ORM

Write queries in HQL, SQL, or Criteria

Spring

Dependency InjectionConnection of objects in configuration files

Relieves righting of lots of boilerplate code

Security

Spring MVC

Spring AOP

Integrates well with Hibernate

Jabsorb

RPC framework between java objects and JavaScript

Exchange done in JSON

Have written custom marshalling and unmarshalling for GIS object, using GeoJSON

Qooxdoo

JavaScript framework

Adapted to work with Jabsorb

Also integrated with OpenLayers

Built Iris Javascript framework on top of Qooxdoo

Uses Python compilation to build and minify code for deployment.

Development environment

Subversion

Maven

Eclipse

Trac

Agile Development process

Broken out so the client developers only need to setup small environment to get working

Distributed Development

Maven

Project DependencyDependency management through pom.xmlThis version controlled

Project Lifecycle ManagementClean, Build, Deploy, Package and configure from

build scripts

Distributed Development

NWSChat

GoToMeeting

Bi-weekly conf calls

Planning and code sprint meetings

Iris Web Client Applications

Initial phase: implement 4 DSS applications – Iris Web: Next Generation Local Storm Report (LSR) Program Contact Management Impacts Catalog Situational awareness display

All using a single database and client application framework

Allows for ease of local data sharing, especially for service backup situations

Iris Web Client Application

Next Generation LSR Program Easy collection and logging of storm

reports More accurate location data GIS enabled data Multiple exporting formats to meet

customer needs

Will meet Service Assessment action from Enterprise, AL assessment (recommendation 3c)

Currently being tested in some field offices Awaiting hardware, hosting issues to

be solved

Iris Web Client Application

Contact Management

(in development/testing)Allow field/regional office to

collect, store, share, and use contact information

Spotters, partners/customers, agency contacts, media logs, calendars, etc

Can integrate this data with the other applications

Impacts Catalog (in planning phase) Tool to organize and utilize individual core partners’

weather impact criteria○ Learn their needs and decisions, input the weather impacts

into Iris Web○ Means to begin capturing impacts based verification

(developing service based matrices)

Searchable, GIS database puts local impact information in hands of forecasters to better provide DSS

Iris Web Client Application

Iris Web Client Application

Situational Awareness Display (in development/testing) Mapping data interface – The common application to all applications

○ Queryable mashup of all data (live and archived)○ Forecasters can keep track of warnings, reports, radar, contacts, and quick

verification....all in one display

Will meet Service Assessment action from Super Tuesday Tornado assessment (recommendation 6)

Scheduled Milestones

Development cycle is managed through Sprints

Sprint to happen on a month cycle

Backlog

Major Data and Design Elements

All data modeled in POJO (Plain Old Java Objects)

Javascript mapping is to standard (JSON and GeoJSON)

Using industry standards and conventionsSpring, Hibernate, PostGIS, Maven, Agile

development

Store existing NWS products in Spatial database

Correlation of Spatially related data

Use Case one (Contact Management)

Office needs to manage contact listEMAsSpottersPlaces to call to validate storm impact

Data needs to be spatially related and queried spatially

Shared among office for backup operations

Use Case two

Impacts catalogDecision support

○ Need to manage weather related criteriaExample is iNWS

Needs to be formally integrated across all offices

Need to be able to spatial correlate to forecast and warning data, for alerting

Areas of interest and overlap

Share same architectural elements as AWIPSCamel, Hibernate, Spring, Quartz

We all deal with spatially related dataThis project provides the backbone for iNWS, and

Ridge II data ingest

Current Iris Connections

Iris concept established through other OSIP projects RIDGE 2 radar (OSIP 05-072) iNWS mobile dissemination application (OSIP 09-017) Next Generation LSR Program (OSIP 09-013) NWSChat (OSIP 08-020)

Collaborating w/GSD on Integrated Hazards Information System (IHIS) (OSIP 04-008) Lots of common ground between the projects

Working with OCWWS/HSD to meet action item from Red River Service Assessment for AHPS

Known overlaps

Potential Overlaps

WESNeed for same data Playback of archived data for training and reviewCase review

ADVISORSituational awareness

Long-Term Goals – NWS Use of IrisBe the standard database framework for all NWS weather operations (consolidate systems/databases)

“Achieving the NextGen weather vision will require increased compatibility among NOAA systems (e.g., through common data standards and formats), the enterprise infrastructure to link the systems to one another, and intensified cooperation among the

NOAA system owners.”

Build compatibility

Future

Delivery of Virtualized development server to CRH

Integration with NWSChat

Integration with Twitter

Deployment on Operational server