Upload
nathaniel-mcwilliams
View
215
Download
1
Tags:
Embed Size (px)
Citation preview
Copyright © 2006 Data Access Technologies, Inc.
Open Source eGovernment Reference ArchitectureApproach to Semantic Interoperability
Cory Casanave, PresidentData Access Technologies, Inc.www.enterprisecomponent.com
Page 2 Copyright © 2006 Data Access Technologies, Inc.January 2006
Semantically grounded Executable Architectures
• OsEra Overview
• What MDA brings – Executable Architectures providing Business Driven Interoperable Components
• What the Semantic Web Brings –Interoperability between independent architectures
Copyright © 2006 Data Access Technologies, Inc.
Caveat
OsEra and the Semantic Core is work in progress, not a ready to use capability
Page 4 Copyright © 2006 Data Access Technologies, Inc.January 2006
OsEra Stack
Enterprise Service BusjBoss
ApplicationServer
jBossApplication
Server
BPELProcesses
BPELProcesses
PolicyPolicyWeb
ServicesWeb
Services
Semantic WebArchitecturePublishing
ArchitecturePublishing
Provisioning
Model Repository
Tool Integration
SemanticsCore
SemanticsCore
TransformationsTransformations
Model->IntegrateModel->Integrate
UMLUML
EDOCEDOC
Component-XComponent-X
UMLUML
SystemArchitectSystem
Architect
FEAFEA
InferenceInference
Import/ExportImport/Export
Runtime capabilities for
deployment and integration of application
components
Import/Export external information and produce
documentation and technical artifacts.
Publish and Integrate enterprise
intellectual capital on the web
Manage models and information
from diverse sources across
projects and communities
Architecture Modeling
ProcessProcess
InformationInformation
RulesRules
ObjectivesObjectives
Capture existing information and integrate with choice of tools
Provide tools for the entire
integrated life cycle
Integrate diverse information into a
coherent enterprise view
FEA with real time metrics
This is planned but not the current
focus
RDF & OWLRDF & OWL
ModelIntegrationModel
Integration
EclipseEclipse
EclipseEnvironment
Eclipse is an open source
“IDE”
Copyright © 2006 Data Access Technologies, Inc.
Model to Integrate
Using MDA and SOAfrom modelsto Solutions
Page 6 Copyright © 2006 Data Access Technologies, Inc.January 2006
BusinessArchitecture
SimulatedModel Driven Architecture
SimulatorSimulator
EnterpriseEnterpriseArchitecture Architecture
ModelModel(PIM)(PIM)
Live Process Simulation
Refine/Iterate
Semantic CoreMeta Model
Page 7 Copyright © 2006 Data Access Technologies, Inc.January 2006
BusinessArchitecture
AutomatedModel Driven Architecture
Framework &Framework &InfrastructureInfrastructure
(E.G. -J2EE-WS)(E.G. -J2EE-WS)PSMPSM
InfrastructureInfrastructureMappingMapping
(E.G. J2EE-WS)(E.G. J2EE-WS)
Mapping is tunedMapping is tunedto the infrastructureto the infrastructure
ToolsToolsProduce &Produce &IntegrateIntegrate
EnterpriseEnterpriseComponentsComponents
Enterprise Enterprise Architecture Architecture Model (CIM)Model (CIM)
Minimize and structuremanual implementation
C
TechnicalArchitecture
Page 8 Copyright © 2006 Data Access Technologies, Inc.January 2006
SOA Architecture Modeling
• Standards Based– OMG “Enterprise Collaboration Architecture”
• http://www.omg.org/technology/documents/formal/edoc.htm
• Models Collaborative Business Processes
• Link between business and SOA
• “Drills down” to SOA interfaces
• Provides the context for services
Page 9 Copyright © 2006 Data Access Technologies, Inc.January 2006
Collaborative Process ModelEnterprise Role. A major area of functional responsibility within the discipline of financial management.
Enterprise Role. A major area of functional responsibility within the discipline of financial management.
Work Role. A role responsible for a specific functional area within an enterprise role, such as might be assigned to a single worker or supported by an IT system.
Work Role. A role responsible for a specific functional area within an enterprise role, such as might be assigned to a single worker or supported by an IT system.
Activity. A specification of a business function in carried out the context of a work role.Activity. A specification of a business function in carried out the context of a work role.
Protocol. A defined conversation between two roles that may be extended over time. One role initiates and the other responds to the protocol, but information may flow both ways across the protocol.
Protocol. A defined conversation between two roles that may be extended over time. One role initiates and the other responds to the protocol, but information may flow both ways across the protocol.
Information Flow. An individual flow of information across a protocol or into or out of an activity.
Information Flow. An individual flow of information across a protocol or into or out of an activity.
Subactivity. A specification a subfunction within necessary to carry out an activity.Subactivity. A specification a subfunction within necessary to carry out an activity.
Page 10 Copyright © 2006 Data Access Technologies, Inc.January 2006
Example Work Roles
Work RoleWork Role
Enterprise business service
Enterprise business service
Inter-work role protocol
Inter-work role protocol
Enterprise role (within the Financial Management discipline)
Enterprise role (within the Financial Management discipline)
Page 11 Copyright © 2006 Data Access Technologies, Inc.January 2006
Receivables Management Activities
Related to Customer Orders
Related to Receivables
Page 12 Copyright © 2006 Data Access Technologies, Inc.January 2006
Information Model Example
A term in the vocabulary represents a class of things to be described.
A term in the vocabulary represents a class of things to be described.
Attributes specify descriptive information having simple types.
Attributes specify descriptive information having simple types.
Entities may be described as having a unique identity.
Entities may be described as having a unique identity.
A relation between terms is described by an association between classes.
A relation between terms is described by an association between classes.
This means “zero or more”
This means “one or more”This indicates a compositional (as opposed to referential) association.
A class may be specialized into sub-classifications.
A class may be specialized into sub-classifications.
This is a constraint that defines the sub-classification.
An un-shaded class is further detailed on a different diagram.
Page 13 Copyright © 2006 Data Access Technologies, Inc.January 2006
Enterprise Service Bus to Enable Target State
•Services driven from the business model
•Reusable Enterprise Services are independent & easily adapted and interconnected
– Services communicate with each other like humans do with email
•Information systems become a lattice of cooperating components providing services
•SOA/Enterprise Service Bus using commercial standards
– Industry best practice to avoid developing large monolithic applications
One-GSA Business Model
FundsManagementService
Contracting Service
Solution ProviderService
ProjectManagementService
Enter
prise
Ser
vices
Page 14 Copyright © 2006 Data Access Technologies, Inc.January 2006
Core Financial System Specification
Service Interfaces
Enterprise ComponentsWork Components
Service Manager ComponentsBehavioral Specifications
Data ModelMessage SpecificationsData Manager Components
Persistent Data Specifications
Core Financial System Specification
Service Interfaces
Enterprise ComponentsWork Components
Service Manager ComponentsBehavioral Specifications
Data ModelMessage SpecificationsData Manager Components
Persistent Data Specifications
Platform Specific Model
Core Financial System Implementation
Web Services
Enterprise Information SystemsSystem Components
System Functions
Data DefinitionXML SchemasData Bases
Data Base Schemas
Core Financial System Implementation
Web Services
Enterprise Information SystemsSystem Components
System Functions
Data DefinitionXML SchemasData Bases
Data Base Schemas
Platform Specific Model (PSM)Platform Independent Model (PIM)
Page 15 Copyright © 2006 Data Access Technologies, Inc.January 2006
Example of XML provisioned from model
<CustomerOrderEstablishment>
<Inter-Work-RoleTransaction>
<inter-work-roleTransactionID> … </inter-work-roleTransactionID>
…
</Inter-Work-RoleTransaction>
<newOrder>
<orderingCustomer>
<customerID> … </customerID>
</orderingCustomer>
<controllingSalesInstrument>
<salesInstrumentId> … </salesInstrumentId>
</controllingSalesInstrument>
<customerOrderAmount> … </customerOrderAmount>
…
<lineItems>
…
</lineItems>
</newOrder>
</CustomerOrderEstablishment>
Note; Don’t have to really read this!
Page 16 Copyright © 2006 Data Access Technologies, Inc.January 2006
Example Transaction Message XML Document
<CustomerOrderEstablishment><customerOrderEstablishment>
<newOrder><customerOrder>
<customerOrderID> … </customerOrderID><customerOrderAmount> … </customerOrderAmount>
<orderingCustomer><customer>
<customerID> … </customerID></customer><party>
<name> … </name></party>
</orderingCustomer><controllingSalesInstrument>
<salesInstrumentID> … </salesInstrumentID> </controllingSalesInstrument>
… <lineItems> … </lineItems>
</customerOrder> </newOrder>
</customerOrderEstablishment><businessDomainTransaction>
<transactionID> … </transactionID></businessDomainTransaction>
</CustomerOrderEstablishment>
<CustomerOrderEstablishment><customerOrderEstablishment>
<newOrder><customerOrder>
<customerOrderID> … </customerOrderID><customerOrderAmount> … </customerOrderAmount>
<orderingCustomer><customer>
<customerID> … </customerID></customer><party>
<name> … </name></party>
</orderingCustomer><controllingSalesInstrument>
<salesInstrumentID> … </salesInstrumentID> </controllingSalesInstrument>
… <lineItems> … </lineItems>
</customerOrder> </newOrder>
</customerOrderEstablishment><businessDomainTransaction>
<transactionID> … </transactionID></businessDomainTransaction>
</CustomerOrderEstablishment>
Page 17 Copyright © 2006 Data Access Technologies, Inc.January 2006
Example Web Services Definition
<wsdl:portType name="CustomerOrderEstablishment.CustomerOrderEstablishment"> <wsdl:operation name="CustomerOrderEstablishment"> <wsdl:input message="tns:CustomerOrderEstablishmentPanopticInheritanceCluster“ name="CustomerOrderEstablishment"> </wsdl:input> </wsdl:operation> </wsdl:portType>
<wsdl:portType name="CustomerOrderEstablishment.CustomerOrderEstablishmentCallback"> <wsdl:operation name="CustomerOrderEstablished"> <wsdl:input message="tns:CustomerOrderEstablishedPanopticInheritanceCluster“ name="CustomerOrderEstablished"> </wsdl:input> </wsdl:operation> <wsdl:operation name="CustomerOrderEstablishmentRejected"> <wsdl:input message="tns:CustomerOrderEstablishmentRejectedInheritance“ name="CustomerOrderEstablishmentRejected"> </wsdl:input> </wsdl:operation> </wsdl:portType>
The primary port type has operations corresponding to the request flows in the protocol.The primary port type has operations corresponding to the request flows in the protocol.
The callback port type has operations corresponding to the response flows in the protocol.The callback port type has operations corresponding to the response flows in the protocol.
Page 18 Copyright © 2006 Data Access Technologies, Inc.January 2006
What MDA Provides
• Business-centric Enterprise Models of Collaborative Processes, Information and Rules
• That are refined to produce SOA based component specifications – independent of middleware and implementation technologies
• Enabling model-based acquisition, FEA support, simulation and execution
• Facilitating Automated Development of Services and Implementations
• Providing for interoperable components that integrate new and legacy capabilities
• MDA provides an Architected Solution to interoperability
Copyright © 2006 Data Access Technologies, Inc.
Page 20 Copyright © 2006 Data Access Technologies, Inc.January 2006
What is the Semantic Core?
• The semantic core integrates the concepts of architecture as expressed in multiple languages such as UML, OWL, FEA, BPM, EDOC, XML, Requirements, Etc.
• This provides for a unification of the intellectual capital used to specify– Organizations– Systems– Information– Interfaces– Processes– … Anything we architect
• Making the organizations, processes and systems more agile and interoperable
• Providing for the integration of independently developed architectures– Or the integration of intellectual capital
Page 21 Copyright © 2006 Data Access Technologies, Inc.January 2006
Driver: Interoperability
• Interoperability of information and interfaces is a primary driver today. The cost and agility advantages are established, the issues known. We must enable a solution to these problems.
• Semantic core provides a missing link for enabling interoperability, this is our driving requirement.
– Adaptation of similar information and interfaces across organizations, processes, and systems.
• Semantic Core combined with the capabilities of service oriented and model driven architectures provides a capability for wide scale, net centric interoperability.
Page 22 Copyright © 2006 Data Access Technologies, Inc.January 2006
The Basics
• Problems to be solved– Interoperability of organizations and technology– Collaboration– Architected business information and processes– Agile solutions based on the architectures– Fully integrated life-cycle approach supporting the FEA
• The Approach– Architecture models grounded in an open and extensible semantic
framework– Model Driven Architecture to generate technology components– Service Oriented Architecture as the infrastructure
Page 23 Copyright © 2006 Data Access Technologies, Inc.January 2006
“Meta” Integration Problem
ArchitecturalEnvironment
SystemBusiness orTechnical
LanguageUML Class
Diagram
LanguageActivityDiagram
LanguageSAML
LanguageEDOC
LanguageER
LanguageWSDL
LanguageExcel
LanguageEJB Descriptor
ClassDiagram
LanguageOWL
Activites
Web ServiceSpecification
Ontology
SecuritySpecification
DatabaseSchema
EJB EarSpecification
SOACollaboration
Requirements
Key
Uses
Defines
Artifact
Too many ways to talk about the same thing, redundant and conflicting semantics.
Page 24 Copyright © 2006 Data Access Technologies, Inc.January 2006
How this Effects Government
• Contractors, using different and incompatible tools
• Generate different architectures about the same things
• That then need to be aligned – but are never maintained
• Each project becomes an island, without reuse or interoperability
• The resultant complexity is expensive, and anti-agile
Page 25 Copyright © 2006 Data Access Technologies, Inc.January 2006
Adapting Systems with OsEra
OsEra
Semantic Core
UML XML
Provision
Adapter
PurchasingSystem
InvoicingSystemCommerce
Ontology
Described in Described in
J2EE Microsoft .NET
Described in
Page 26 Copyright © 2006 Data Access Technologies, Inc.January 2006
Integration Via Semantic Hubs
ConceptsWeSpecify
SemanticHub
ReferenceOntologies
CommonConcepts
MonetaryTrade
Part Of
IsMapped
Dis-IntegratedInformation
Buy
Purchase
WaysTo SpecifyThings
SemanticCore
JointBehavior Part Of
De
scribe
s
De
scribe
s
UML
XML
De
scribe
s
Library of common conceptsCan grow over time
Mappingis not
“one-one”
Page 27 Copyright © 2006 Data Access Technologies, Inc.January 2006
“Views” of Integrated Information
OsEra
Semantic Core
UML
DoDAF
BPMN
Ontologies
FEA
Requirements
EDOC XML
SQLOWLProvision
Web Services
Java/J2EE
WorkflowDocumentation
Components BPEL
E/R Models Security
Page 28 Copyright © 2006 Data Access Technologies, Inc.January 2006
Semantic Core
OWL Concepts
XML Concepts
UML Concepts
Semantic Components
SemanticComponent
SemanticComponent
SemanticComponentSemantic
ComponentSemanticComponent
SemanticComponent
SemanticComponent
SemanticComponent
SemanticComponentSemantic
Component
SemanticComponent
SemanticComponentSemantic
ComponentSemanticComponent
SemanticComponentSemantic
Component
SemanticComponent
•Library of component concepts
•Growing based on need
•Modular, not monolithic
•A construction set for languages
•A lattice of interoperable concepts
Page 29 Copyright © 2006 Data Access Technologies, Inc.January 2006
System A
Interoperability of Systems
SharedContext
System B
System C
System D
SharedContext
HubContext
System of Systems
Page 30 Copyright © 2006 Data Access Technologies, Inc.January 2006
Unifying Intellectual Capital
BusinessProcess(BPMN)
SystemArchitecture
(UML)
XMLVocabulary
OsEra
ProcessModel
ComponentModel
DocumentModel
Order OR_ST_05PO
Reference OntologyOrder Concept Unified
Architecture
Order
Human/AutomatedIntegration
Page 31 Copyright © 2006 Data Access Technologies, Inc.January 2006
Ontological Grounding
• Grounding our common concepts in Ontologies has multiple advantages
– We can add “axioms” that help to more concretely define the concepts– Ontology tools can use this information to bridge like terms for the same
concept or similar concepts– Other ontology aware components can assist architects in “grounding” their
models– Adaptation components can help build “adapters” between different
interfaces and information stores– Inconsistencies can be identified and resolve early– As ontologies advance, additional capabilities can be added
• We can connect Ontological “hubs” – not requiring “one true solution”
Page 32 Copyright © 2006 Data Access Technologies, Inc.January 2006
Example Workflow
Use tools tocompare/adapt grounded specs
Import new or Legacy Specand instances
Make New ConceptRelate to existing Concepts
For each term, Relateto reference Ontologies
Validate with Instances Make new termfor existing Concept
Generate AdapterImplementations
Extend/CorrectAdaptationCorrect?
GroundingComplete
Term Exists
Concept Exists
no
Yes
Yes
yes
no
Page 33 Copyright © 2006 Data Access Technologies, Inc.January 2006
Joining the “Stacks”
• Modeling & Architecture “Stack”– UML– Model Driven Architecture– Meta Object Facility– Business Process
• Semantic Web & Ontology “Stack”– RDF– OWL
• Current Project – MOF to RDF– Makes ANY MOF compliant model (UML, EDOC, E/R, Etc) an OWL
Ontology– Provides foundation for grounding models– Reduces the gaps between the camps– Allows models to be published as semantic web ontology resources
Page 34 Copyright © 2006 Data Access Technologies, Inc.January 2006
Summary
• Semantic integration and interoperability requires– A Business driven approach– Intellectual capital contained in semantically grounded models– Provisioning to technology infrastructures– Tooling and automation– Standards
– An approach for executing architected solutions – MDA– An approach to integrate architectures – Semantically Grounded
Architectures & Semantic Core
Page 35 Copyright © 2006 Data Access Technologies, Inc.January 2006
Resources
• OsEra– www.osera.modeldriven.org– www.osera.gov
• Data Access Technologies, Inc– www.enterprisecomponent.com
• Cory Casanave– Cory-c (at) enterprisecomponent.com
• OMG Model Driven Architecture– www.omg.org/mda