41
Connecting People With Information Service Orientation For further information email OSD at: [email protected] Version 08.4 DoD Net-Centric Data Strategy (DS) and Community of Interest (COI) Training

Connecting People With Information Service Orientation For further information email OSD at: [email protected] Version 08.4 DoD Net-Centric Data Strategy

Embed Size (px)

Citation preview

Connecting People With Information

Service Orientation

For further information email OSD at: [email protected]

Version 08.4

DoD Net-Centric Data Strategy (DS) and Community of Interest (COI) Training

2

Purpose/Outline

• Purpose: To provide context for the importance of services in the DoD’s Net-Centric Strategies, e.g.,– Demonstrate how data (via services) can be combined in

innovative ways to create new value-added capabilities

• Outline – Definition of Terms– Examples of Services– Service Oriented Architecture– Motivators for Adoption– Identifying Potential Services for a Pilot– Example “Mashups”

3

What is a Service?

Service:

“A mechanism to enable access to one or more capabilities, where the access is provided using a prescribed interface and is exercised consistent with constraints and policies as specified by the service description.”

DoD Net-Centric Services StrategyMay 2007

Corollary: A capability may be realized through the execution of one or more services

• Characteristics of services– Modular (able to be composed, much like building blocks)

– Network-accessible

– Reusable

– Standards-based

– Distributed capabilities

4

Who is Using Services?

By show of hands…

• Banking– How many of you pay bills online?

• Directions– Who uses MapQuest or Google Maps for directions?

• Travel– Who uses Travelocity, Priceline, or KAYAK?

Many of us are using software services everyday Many of us are using software services everyday

5

Case Study: Online Banking

• Online banking, Quicken, Microsoft Money

– Ability to view multiple accounts, pay bills, and transfer funds from a variety of applications and interfaces

– Open Financial Exchange (OFX) – http://www.ofx.net Specification for the electronic exchange of financial data between

financial institutions, business and consumers via the internet Specification created by CheckFree, Intuit, and Microsoft in early

1997 As of May 2006, OFX supported by over 3500 banks and

brokerages Leverages open standards: XML, TCP/IP, HTTP, and SSL

• Revolutionized existing business processes. Banks have become more virtualized

Here is a real world example of a COI in action…A net-centric information sharing approach led to a revolution in the way people and organizations do their banking

services + open standards + community specification + over 3500 adopters = TRANSFORMATION!

Here is a real world example of a COI in action…A net-centric information sharing approach led to a revolution in the way people and organizations do their banking

services + open standards + community specification + over 3500 adopters = TRANSFORMATION!

6

Case Study: Amazon.com

• Amazon E-Commerce Service (ECS) exposes Amazon's product data and e-commerce functionality

– Allows developers, web site owners and merchants to leverage the data and functionality that Amazon uses to power its own e-commerce business

• With ECS, developers can add rich content and powerful capabilities to Web sites and applications by using the following features:

– Detailed Product and Pricing Information on Amazon.com– Access to Amazon.com Product Images – All Customer Reviews associated with a Product – Access to Amazon.com’s “Advanced Search”– Remote Shopping Cart – Amazon Wish List Search

• Amazon Associates Program – Amazon.com's affiliate marketing program– Associates drive internet traffic to Amazon.com via services that allow Amazon to track

sales and other activity– Associates earn up to 10% in referral fees on all qualifying revenue made through their

links

7

Case Study: Amazon.com (example usage)

Using Amazon E-Commerce Service….• ScanLife provides a

convenient mobile shopping technology that enables customers to check Amazon.com prices instantly on their cell phone.

http://www.scanbuyshopper.com

8

Case Study: PayPal

• eCommerce business that allows payments and money transfers to be made over the Internet– Performs payment processing for online vendors, auction sites,

and other corporate users

• PayPal provides service interfaces for processing credit card payments, sending money, receiving money, refunding transactions, searching transaction histories, etc

PayPal is an example of a machine-to-machine servicePayPal is an example of a machine-to-machine service

9

What is a Service Oriented Architecture (SOA)?

• An architectural style– NOT a product– NOT a bunch of web services

• An architecture based on flexibly linked software components that leverage web standards and services

• Formal Definition*: Service Oriented Architecture is a paradigm for organizing and utilizing distributed capabilities that may be under the control of different ownership domains

* Taken from OASIS Reference Model for Service Oriented Architecture 1.0

10

Why an SOA?

• Results in an explosion of capabilities for our warfighters and decision makers

• Provides more agility

• Provides the building blocks for a net-centric information sharing environment

11

Drives

Enables

Process for Developing Services

Data Needed

Data Needed

Service Implementations

Service Implementations

STARTHERE

STARTHERE

STARTHERE

Enables

Community Information Exchange

Vocabulary

Community Information Exchange

Vocabulary

Capability Delivery

Capability Delivery

Drives

InfoSharing

Need

InfoSharing

Need

Drives

Service Needed

Service Needed

12

Identifying Potential Services for a Pilot

• Identify information sharing needs • Analyze business processes – current & desired

– Identify processes for service insertion– Bias toward creating enterprise services

• Questions to consider– What business services do you provide now?– What business services will you provide in the future?– What data do people ask you for most?– What are your organization’s core competencies?– Where does your organization overlap with other efforts?

Potentially identifies a common service

13

Identifying Potential Services

Source: modified from original in DOD Net-Centric Services Strategy (DRAFT, May 2007); page 2

Request ammunition Get Inventory Count Place Order

Checkammunition status

Place and confirm order with supplier

Munitions run low.Request supply

Is itin stock

elsewhere?

Depot

Services

Business Process: Munitions supply

11 22

33

44

Services align with business processesServices align with business processes

14

Identifying Potential Services

• Consider Blue Force Tracking (BFT)• Despite advances, stovepipes still exist; fratricide still

occurs• By publishing Blue Force positions authorized users can

subscribe and identify friendly positions

Authoritative Sources

Ad

P

Ad

D

AMPSAMPS

D

ServiceAdapter(*)

ServiceAdapter

FBCB2FBCB2

Guard

ServiceAdapter(*)

WEBWEB

Federated DDS Nodes

Consumers

Web Services Info Grid

Advertise

Publish

Subscribe

Deliver

Web Services Info Grid

Advertise

Publish

Subscribe

Deliver

Ad

P

S

D

S

S

AdP

Ad

D

CPOF/MCSCPOF/MCSServiceAdapter

C2PCC2PC

ServiceAdapter

DDS DDS DDS

DDS

USMC

ServiceAdapter

USN

ServiceAdapter

USA

ServiceAdapter

USAF

ServiceAdapter

Multi-National

ServiceAdapter

D

15

Example “Mashups”

Mashups are an example of an aggregation serviceMashups are an example of an aggregation service

• We have provided an overview of SOA and the motivation for its adoption

• We have discussed how you might identify potential services for a pilot

• We will now consider a few example internet “mashups”

• Mashups illustrate the types of new, innovative services that can be developed when data is visible, accessible, and understandable over the web

16

Mashups

• “A mashup is a website or application that combines content from more than one source into an integrated experience.” – Wikipedia (http://en.wikipedia.org/wiki/Mashup_(web_application_hybrid)

• http://www.programmableweb.com/ has a list of over 3,000 mashups from various sources

• The following slides present some examples of different mashups

Mashups assume the visibility, accessibility, and understandability of data and services

Mashups assume the visibility, accessibility, and understandability of data and services

17

Examples

• http://www.programmableweb.com– Maintains a listing of different mashups

• http://pipes.yahoo.com– Demonstrates how disparate RSS feeds can be graphically joined together to produce new and innovative

RSS services• www.google.com/ig

– Demonstrates discovery of portlets that provide customizable views for end users• www.zillow.com

– Estimates home valuations using publicly available information such as comparables and tax information; overlays estimates on top of each house on a map

• Crime mashups (e.g. http://chicagocrime.org, http://crimeinDC.org )– Display crime incidents within a localized region over a period of time

• http://mapsexoffenders.com– Aggregates registered sex offender information from state databases and overlays residence locations

onto Google Maps• http://weathermole.com/WeatherMole/index.html

– The weather forecast component is from NOAA's Experimental National Digital Forecast Database XML Web Service and the map component is from Google Maps

• http://gmapsflighttracker.com/– Displays flight locations on top of Google Maps for several US airports

• http://www.findmesomewifi.com/– Locates wifi hotspots around the world quickly and easily by consulting a very large database of wifi

hotspots and integrating that data with Google Maps • https://caernarfon.spawar.navy.mil/mdads/

– CAC required– Displays data from Automatic Identification System (AIS) aggregation centers (USCG, Navy, Office of

Naval Intelligence, and Dept of Transportation) onto Google Earth or Google Maps.

Found many of these with a simple five minute search on http://www.programmableweb.com

Found many of these with a simple five minute search on http://www.programmableweb.com

18

http://pipes.yahoo.com

Demonstrates how disparate RSS feeds can be graphically joined together to produce new and innovative RSS services

Demonstrates how disparate RSS feeds can be graphically joined together to produce new and innovative RSS services

19

Zillow (http://www.zillow.com)

Estimates home valuations using publicly available information such as comparables and tax information and overlays estimates

on top of each house on a map

Estimates home valuations using publicly available information such as comparables and tax information and overlays estimates

on top of each house on a map

20

Crime Mashups (e.g. www.chicagocrime.org, www.crimeinDC.org)

Display crime incidents within a localized region over a period of time

Display crime incidents within a localized region over a period of time

21

GlobalIncidentMap.com

Ability to sort by type of incident,

date, location, etc.

Ability to sort by type of incident,

date, location, etc.

Listing of bomb-related events between 14 Feb 08

and 15 Feb 08

Listing of bomb-related events between 14 Feb 08

and 15 Feb 08

Worldwide threats and incidents: airport, chemical, bridge, railway, bombs, etc. It also has links to related news stories and a searchable database.

Worldwide threats and incidents: airport, chemical, bridge, railway, bombs, etc. It also has links to related news stories and a searchable database.

22

Portable Flight Planning Software (PFPS) Google Earth Tool

• A free conversion utility that interfaces between US military PFPS software and Google Earth

• Privately developed by Capt Mark Jacobsen– C-17 pilot with 10th Airlift Squadron

• He was inspired to write the software while on Operation Enduring Freedom (OEF) deployment– Squadron used Google Earth for visualization of airdrops in

Afghanistan

• Users can use the utility to create and edit waypoints, threats, and different kinds of airspace

• http://www.googleearthpilot.com/

Allows pilots to quickly and easily visualize their flight-plan routes in Google Earth.  Other uses: airspace management, threat plotting and

avoidance, and target/drop zone visualization

Allows pilots to quickly and easily visualize their flight-plan routes in Google Earth.  Other uses: airspace management, threat plotting and

avoidance, and target/drop zone visualization

23

This is a Google Earth screenshot, showing the capabilities of PFPS Google Earth Tool. It shows several types of objects that the user can create.

Flight Corridor

Flight route

Cylindrical airspace volumes to encompass local airfields

Restricted Areas

24

Maritime Domain Awareness Data Sharing Community of Interest (https://mda.spawar.navy.mil/)

Displays Automatic Identification System (AIS) data from US Coast Guard, Navy, and Dept of Transportation onto Google Earth

Displays Automatic Identification System (AIS) data from US Coast Guard, Navy, and Dept of Transportation onto Google Earth

25

Summary

• Making your data visible, accessible, and understandable via services enables mashups, aggregation and innovative value-added capabilities– Without going through JCIDS, PPBE and large acquisitions!– Without a $100M contract!

• By exposing your data, you are enabling innovation– You may not even realize the impact you will have– You may enable the next great mashup

Expose data. Enable innovation.Expose data. Enable innovation.

26

Backups

27

DoD Net-Centric Services Strategy Recap

• A strategy for a net-centric information sharing, service-oriented DoD Enterprise

• Four Goals:– Provide Services: Make information and functional capabilities

available as services on the network– Use Services: Use existing services to satisfy mission needs

before creating duplicative capabilities– Govern the Infrastructure and Services: Establish the policies

and processes for the single set of common standards, rules, and shared infrastructure and services throughout the DoD Enterprise to ensure execution enables interoperability

– Monitor and Manage Services via GIG NetOps: Implement services in accordance with DoD’s GIG NetOps Strategy and Concept of Operations (CONOPS) to ensure situational awareness of the net-centric information sharing environment

28

Process for Developing Services

1. Identify an information sharing problem2. Check to see if a service exists to meet your need. If not…3. Specify the services you are going to develop4. Develop an architectural approach

• Determine the appropriate information interaction model• Request / Response (e.g., SOAP)• Publish / Subscribe (e.g., NCES Messaging Service)• Notification followed by Request / Response • Consider data access constraints

• Use Core Enterprise Services where possible/practical5. Implement services and provide them to the enterprise

• Make services visible• Register services in the enterprise service registry to aid discovery

• Make services accessible• Users need to discover and access them in a timely, secure, and effective manner• Use NCES core security services where possible to ensure widest possible access

is supported• Make services understandable

• NCES will provide a Service Specification Template (SST) to descibe services

29

Service-Oriented Architectural Design Patterns

COI s can employ several different architectural approaches when providing and consuming services

– Publish/Subscribe (Pub/Sub)

– Request/Response

– Service Brokering

30

M M

M M M

Publish/Subscribe (Pub/Sub) Architecture

Publisher Publisher

Consumer Consumer Consumer

Bus

Publish Publish

Subscribe Subscribe Subscribe

M = Messages

M M

M M M

31

Request / Response Architecture

ServiceProvider

ServiceConsumer

Request

Response

32

Service Brokering

ServiceProvider

ServiceConsumer

Request

Response

ServiceBroker

RequestResponse

33

ServiceA

Web services swapping roles during a conversation (Request/Response)

ServiceB

“Could you do this for me?”

Now, I act like a

client

Now, I act like a

server

Now, I act like a

server

Now, I act like a

client

“Ok, I’ll get right on it.”

“Now I need you to do something”

“Yeah, alright. I’ll take care of it.”

Source: Erl, Thomas. Service Oriented Architecture: A Field Guide to Integrating XML and Web Services. Page 51

34

Pub/Sub vs Request/Response

• Neither is better than the other, per se– Each has it’s own strengths and design considerations

• Some situations are better suited for Pub/Sub– Time sensitive data– Dynamic data that changes frequently– Large numbers of consumers– Alerts and broadcasts

• Other situations are better suited for Request/Response– Sensitive information– Smaller number of consumers– Data may not be as time-sensitive– Large data sets

• Some situations use a hybrid approach– NCES Messaging

Message bus is Pub/Sub but interfaces to the bus are currently request/response

– RSS Behaves like Pub/Sub but actually implemented with request response

35

Tight vs Loose Coupling

Source: Krafzig, Banke, Slama. Enterprise SOA: Service-Oriented Architecture Best Practices. 2005.

* Note: table items in italics modified slightly from original

Level Tight Coupling Loose Coupling

Physical coupling Direct physical link required Physical intermediary

Communication Style Synchronous Asynchronous

Semantics* Interface semantics* Payload semantics*

Interaction pattern OO-style navigation of complex object trees

Data-centric, self-contained messages

Control of process logic

Central control of process logic

Distributed logic components

Service discovery and binding

Statically bound services Dynamically bound services

Pattern dependencies Strong OS and programming language dependencies

OS and programming language independent

36

http://www.programmableweb.com/

Maintains listing of different “mashups”Maintains listing of different “mashups”

37

www.google.com/ig

Demonstrates discovery of portlets that provide customizable views for end users

38

http://www.mapsexoffenders.com

Aggregates registered sex offender information from state databases and overlays residence locations onto Google Maps

Aggregates registered sex offender information from state databases and overlays residence locations onto Google Maps

39

http://gmapsflighttracker.com/

Displays flight locations on top of Google Maps for several US airports

Displays flight locations on top of Google Maps for several US airports

40

http://weathermole.com/WeatherMole/index.html

The weather forecast component is from NOAA's Experimental National Digital Forecast Database XML Web Service and the map component is

from Google Maps

The weather forecast component is from NOAA's Experimental National Digital Forecast Database XML Web Service and the map component is

from Google Maps

41

http://www.findmesomewifi.com/

Locates wifi hotspots around the world quickly and easily by consulting a very large database of wifi hotspots and integrating that data with

Google Maps

Locates wifi hotspots around the world quickly and easily by consulting a very large database of wifi hotspots and integrating that data with

Google Maps