Document 7672966

Download Report

Transcript Document 7672966

S.R.F.E.R.S.
State, Regional, and Federal
Enterprise Retrieval System
Inter-Agency & Inter-State
Integration Using GJXML
Background
Project Goal:
The S.R.F.E.R.S. Project is tasked with
using existing infrastructure and GJXML
to build a system for sharing regional
data.
Background
Why do we care about regional data
sharing?
• 80% of justice data at local level
• Largely invisible
• Needed by:
– Neighboring Regions
– National Law Enforcement
– Intelligence
Background
Why aren’t these agencies sharing now?
• In most cases there are good relations.
• In most cases all parties recognize the
usefulness of being able to share data.
• So what’s the problem?
Background
Why aren’t these agencies sharing now?
• No readily available network
• Differing record formats and data columns
• Incompatible communication systems
(MQ vs. Web Services)
• Difficulty of getting data out of legacy
systems.
Background
So what are we doing about it?
A Reusable Toolkit
Our goal is to create a set of reusable
tools, methodologies and infrastructure
to solve these problems.
Background
No readily available network
NLETS
• Available in every state
• Working to increase local agencies
access to it.
Background
Differing record formats and data columns
GJXML
Background
Incompatible communication systems
(MQ vs. Web Services)
Message Broker (current system)
• Centrally located in NLETS
• Translates between MQ Series and Web
Services
• Rout one client request to multiple data sources.
Possibly to different types of data sources.
Background
Difficulty of getting data out of legacy systems.
No silver bullet. Each agency will need to do the
work to get data from their native
environment into GJXML.
We will provide:
•
•
•
•
A methodology
Working examples
A Sample Data Sharing MOU
Privacy Impact Assessment
Flexible Point to Point Data Sharing
In San Diego an officer
runs the name of a
suspect through their
hand held Global Query
application. No match is
found in the San Diego
records, but…
In Phoenix a parole officer
runs a check on one of his
parolees. No new records
are found for him in
Phoenix, but…
The officer sees that he
was fined for possession
in San Diego. A check of
the photo confirms that he
violated his parole.
A Phoenix booking is
returned.
The officer pulls up the
booking photo and a
witness makes a positive
ID.
TCP / IP
Router
TCP / IP
Router
NLETS Network
Regional
Data Source
Regional
Data Source
NLETS
Message Broker
Law Enforcement
Terminal
1) Client Makes Request
An Alaskan investigator with
only a name and a license plate
number tries to track down a
suspect. There is no record of
the him in Alaska, but...
LPR
Boarder Crossing
License Plate
Data
4) LPR data
is retrieved
2) NLETS Repeats the
Request to the San Diego
Data Sources
3) NLETS Repeats the
Request to the Phoenix
Data Sources
5) RAND data
is retrieved
NLETS Data Center
Regional
Data Source
A NOOGLE search shows that:
- The car crossed from Canada
into Washington last week.
- The suspect was once
arrested San Diego.
- A detective in Phoenix has
been running searches on the
suspect as well.
RAND
Searchable
Archive
of NLETS
Messages
Regional
Data Source
Future Directions for SRFERS
• Based on the work done in SRFERS,
California will soon be providing Drivers
License and Booking photos.
• Smart Search
Knowledge Exchange
Where GJXML fits into the S.R.F.E.R.S.
project.
• How it fits our bigger picture of inter
agency integration
• What other tools and techniques were
needed
Knowledge Exchange
GJXML is a HUGE step forward for justice data
sharing. Given the large and diverse user
base that it serves, creating a common
“language” that we can all communicate in is
a GREAT achievement.
It is not, however, a complete integration
solution. It is a tool to assist in our integration
efforts.
Topics
What to share?
How to share it?
Integration Documents
Application Structure
 GJXML – what it does  Supporting a Variety of
and does not provide.
Document Formats
 An XML Wrapper
 Multi-Tier Architecture
 NLETS Message Broker
GJXML
What it provides
The Data Model is a nationally recognized
“vocabulary” of terms for describing
justice data.
GJXML
What it does not provide
Context – GJXML represents raw justice documents,
but not to do with the data.
What to do with the record?
• Add
• Delete
• Search
GJXML
What it does not provide
Security Information:
• Where did the record come from:
– Agency or Application ID
– Password or credential to verify the source
• Audit information
– User ID of the officer entering the report
GJXML
What it does not provide
Network Routing information:
• Destination address
• How to respond
– MQ Series Queue
– Correlation ID
Topics
What to share?
Integration Document
 GJXML – what it
does and does not
provide.
 An XML Wrapper
How to share it?
Application Structure
 Supporting a Variety of
Document Formats
 Multi-Tier Architecture
 NLETS Message Broker
XML Wrapper
There are a number of ways to convey these
additional pieces of data.
For instance if you are communicating using
web services then the action to be performed
and the destination address are implicit in
the URL of the web service being called.
XML Wrapper
SOLUTION: We chose to add this additional
information as part of the document being
passed.
Two primary reasons:
1. To be compatible with “store and forward”
systems like MQ Series
2. Conform to audit and logging requirements
of some of the intermediate networks
XML Wrapper
<xml_wrapper>
<header>
<Routing Information>
<Security Information>
<Context / Action>
<Response Information>
</header>
<payload>
<GJXML Document>
</payload>
</xml_wrapper>
Topics
What to share?
Integration Document
 GJXML – what it
does and does not
provide.
 An XML Wrapper
How to share it?
Application Structure
 Supporting a Variety of
Document Formats
 Multi-Tier Architecture
 NLETS Message Broker
Supporting a Variety of
Document Formats
Plan to support a variety of document formats.
These could be:
• Legacy formats
• Future versions of GJXML
• Variations in GJXML 3.0 documents from
different sources
Supporting a Variety of
Document Formats
Variations in GJXML 3.0 documents? What!!!
Yes, for the near future expect to see variations in the
structure of the GJXML you receive from 3rd parties:
• Within the GJXML system there are often a number of
ways to create the same document.
• IEPs are being designed, but they overlap and in many
cases there is no clear adopted ‘standard’ IEP for a
given document type. There are also MANY application
specific schemas used by vendor products.
Supporting a Variety of
Document Formats
Don't stove pipe.
Handling each document type separately is termed
“stove pipe” integration.
It the simplest approach, but is hard to maintain and
upgrade:
• Business rules must be copied for each
• Data validation must be done for each
• Often leads to a hard link between two applications
instead of a reusable interface
Supporting a Variety of
Document Formats
SOLUTION: Convert all 3rd party documents
into your own document format.
Legacy
Legacy
Interface
GJXML
GJXML 3.0
Interface
GJXML
COTS
Interface
Internal
Doc
Database
Supporting a Variety of
Document Formats
Your native format could be:
• Your version of GJXML which contains all the
fields your system understands.
• A legacy format you are already setup to use.
• If you’re a Java or .Net shop it may be a
native Data Object which has variables for
each of your data fields.
Topics
What to share?
Integration Document
 GJXML – what it
does and does not
provide.
 An XML Wrapper
How to share it?
Application Structure
 Supporting a Variety of
Document Formats
 Multi-Tier Architecture
 NLETS Message Broker
Multi-Tier Architecture
A multi-tier application architecture is a good
practice in an enterprise environment.
• Promotes code reuse
• Simplifies maintenance
• Enhances system flexibility
– e.g. Multiple documents types for the same
functionality
Multi-Tier Architecture
The architecture we decided on within ARJIS.
Legacy
Legacy
Interface
GJXML
GJXML 3.0
Interface
GJXML
COTS
Interface
Internal
Doc
Native Interfaces
(application
specific)
Database API
(shared between
applications)
Application
Data
Validation
Basic
Data
Validation
Business
Logic
Database
Programming
Database
Topics
What to share?
Integration Document
 GJXML – what it
does and does not
provide.
 An XML Wrapper
How to share it?
Application Structure
 Supporting a Variety of
Document Formats
 Multi-Tier Architecture
 NLETS Message Broker
NLETS Network Broker
We had 2 design goals for interoperability between
agencies.
1) Wanted each client to be able to communicate
without needing to know about the recipient.
Specifically we need to support both:
• Web Services
• MQ Series
NLETS Network Broker
2) Retrieve data from multiple sources with a
single request.
Nice To Have:
As new data sources come online we wanted
a way to easily make them available to the
agencies already using the system.
NLETS Network Broker
SOLUTION: NLETS has setting up a “broker”
that handle these network needs.
• Receives both MQ or Web Service messages.
• Sends on either MQ or Web Service
messages, depending on the destination.
• Routs responses back using the correct
protocols
• Has the ability to broadcast a message to
multiple destinations.
NOOGLE
Search
Law Enforcement
Terminal
1) Client Makes Request
An Alaskan investigator with
only a name and a license plate
number tries to track down a
suspect. There is no record of
the him in Alaska, but...
LPR
Boarder Crossing
License Plate
Data
4) LPR data
is retrieved
2) NLETS Repeats the
Request to the San Diego
Data Sources
3) NLETS Repeats the
Request to the Phoenix
Data Sources
5) RAND data
is retrieved
NLETS Data Center
Regional
Data Source
A NOOGLE search shows that:
- The car crossed from Canada
into Washington last week.
- The suspect was once
arrested San Diego.
- A detective in Phoenix has
been running searches on the
suspect as well.
RAND
Searchable
Archive
of NLETS
Messages
Regional
Data Source
Topics
What to share?
How to share it?
Integration Document
 GJXML – what it
does and does not
provide.
 An XML Wrapper
Application Structure
 Supporting a Variety of
Document Formats
 Multi-Tier Architecture
 NLETS Message Broker
Contact Info.
Dustin Henson
ARJIS San Diego
(Automated Regional Justice Information System)
[email protected]
Bob Slaski
NLETS
The International Justice and Public Safety Information Sharing Network
[email protected]