presented to: by: date: federal aviation administration registry/repository in a soa environment soa...
TRANSCRIPT
Presented to:
By:
Date:
Federal AviationAdministrationRegistry/Repository in
a SOA Environment
SOA Brown Bag #5
SWIM Team
March 9, 2011
2Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Agenda
• Service Discoverability• What is a Service Registry/Repository?• Taxonomies and Artifacts• Standards• Design-Time vs. Runtime• NAS Service Registry/Repository (NSRR)
– Roles– Access Requirements– Standards and Policies
3Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Service Discoverability
• Discoverability is a key Principle of Service Design1 in a Service-Oriented Architecture (SOA)
• Common metadata framework to express purpose and capabilities of the Service– Allow human browsing– Allow machine-to-machine queries
1 Principles of Service Design, Erl et.al. Prentice Hall, 2008
4Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Registry Repository
ServiceConsumer
ServiceProvider
ServiceRegistry
ExchangeMessages
Publishand Register
Contract
Discoverand Retrieve
Contract
"In fact, it was the existence of a discovery mechanism that primarily distinguished SOA from previous distributed architecture models."
Principles of Service Design
"In fact, it was the existence of a discovery mechanism that primarily distinguished SOA from previous distributed architecture models."
Principles of Service Design
5Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Service Registry/Repository
• A Service Registry is a resource that provides controlled access to data necessary for the governance of SOA projects
• A Repository is a database containing the software and metadata that constitutes a SOA registry– Sometimes called a meta-repository– Facilitates content validation and workflow support– Stores Policies, Processes, and Schemas to support
Governance Activities
Note: These are usually referenced as one product, often called a Registry/Repository
6Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Why a Registry/Repository?
• Centralized Discovery• Lifecycle Governance• Centralized deployment• Policy and Standards enforcement• Automated Service Notification
mechanism• Central to any SOA infrastructure in the
promotion of Reuse
7Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Implementing an Infrastructure for SOA Governance
Web ServicesWeb ServicesProviderProvider
Federated Federated Identity Identity ManagerManager
Identity Identity ManagementManagement
Record Record AlertsAlerts
Discover Discover Services Services and Policyand Policy
Monitor Monitor ServicesServices
ll
PolicyPolicyMetadata
Web Services Web Services ConsumerConsumer
AccessAccessManagerManager
IdentityIdentityManagerManager
Access Control Access Control & Single Sign-On& Single Sign-On
User User ProvisioningProvisioning
Service ManagementService ManagementServiceServiceRegistryRegistry
ServiceServiceSecuritySecurity
ESB
ll
PolicyPolicyMetadata
SLA SLA InformationInformation
8Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Governance
9Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Taxonomies
• “A hierarchical organization of categories or values used for classification” (FAA-STD-066)
• FAA-STD-066 defines required taxonomies for FAA
• Use and support of taxonomy enforcement is critical to the success of any registry implementation
• SWIM has defined additional taxonomies required for NAS Services
10Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Potential Taxonomy Candidates
• Organization Unit• Business Name
• Lifecycle Stage• Services for Citizens
11Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Artifacts
• An Artifact is a repository item attached to a service that describes the service or may be used to access the service
• Some examples include:– WSDL
• Web Service Description– WSDD
• Web Service Description Document• Defined in FAA-STD-065
– ConOps• Concept of Operations, for interfaces, messaging, etc.
– IRD• Interface Requirements Document
12Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Registry Standards
• Universal Description, Discovery, and Integration (UDDI)– Supports the enforcement of enterprise policies– Policy enforcement will enhance registry data quality
• Minimize inconsistent or incomplete data in the registry• Ensure mandatory fields are mandatory
• Electronic Business XML (ebXML)– Created to primarily support secured business
transactions
13Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Universal Description, Discovery, and Integration (UDDI)
• UDDI is an XML-based Web service standard that describes how to implement and interact with a service registry
• UDDI is focused exclusively on this discovery aspect• The framework describes which data structures and
Application Programming Interfaces (APIs) a Web service registry must offer to support Web service publication and search
• UDDI is the most prominent e-business registry specification for discovery purposes
14Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Electronic Business XML (ebXML)
• An ebXML registry is focused on both discovery and collaboration
• Promotes an open XML based infrastructure for interoperable, secure and consistent exchange of information about electronic business
• Provides a framework to define core components for e-business that can be reused in any context, such as the naming of data types in a WSDL document
• ebXML registries are web services and, as such, they can be registered in UDDI, becoming available as any other web service
15Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Types of Registry Interfaces
• Design-time Registry– The Design-time registry provides an environment
where one is able to publish and subscribe to the available assets within registry
• Runtime Registry– A Runtime registry provides all of the capabilities of
the Design-time registry with additional capabilities that include, monitoring, policy enforcement, metric reporting, etc.
16Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Design-time vs. Runtime
Design-time• Human interactive• Generate service Stubs from
WSDLs• Browsing typically done
through web interface
Runtime• Machine-to-Machine• Focus on discovery of
endpoints that comply with certain service interfaces– Decision Support tools – Service Compositions
• Runtime Requirement is a driver for standardized registry interface (UDDI)
17Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
NAS Service Registry Repository
• NSRR Product– Hewlett Packard – Systinet 3.20– Anticipate migration to Systinet 4.0– Underlying Oracle database
18Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
NSRR Functionality
19Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
NSRR Login
20Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
NSRR User Access
• Access can be gained by completing the NSRR User Account Request Form
Location:
www.swim.gov -> documents -> SWIM Compliance Documents -> NSRR User Account Request Form
Mail to: [email protected]
21Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
NSRR Discovery
• The Search capability within the NSRR allows the discovery of services• Queries can be enhanced by the use of:
• Wildcards “%” & “*”• Logical Operators
• “AND”• “OR”• “NOT”
22Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
NSRR Search Results
23Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Service in NSRR
24Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
Organizational Units
• Services in the NSRR must be associated with a registered Organizational Unit– Typically a Program Office– Allows hierarchical categorization of
Services, with a single managerial point of contact
25Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
NSRR Roles
• NSRR Administrator• Service Provider• Service Consumer• Governance Lead• Points of Contact
– Manager– Architect– Developer– Production Manager– Technical Support
26Federal AviationAdministration
Registry/Repository in a SOA EnvironmentMarch 9, 2011
WWW.SWIM.GOV