council april 16, 17 2008. soa governance thomas reimer enterprise technology strategist (catm)...
TRANSCRIPT
SOA Governance
Thomas ReimerEnterprise Technology Strategist
(CATM)Microsoft Corporation
Benefits of SOA
SOA provides opportunity to leverage and reuse IT resourcesBenefits can accrue quickly
Common SOA Scenarios
Abstracting back end systems from customers and clientsAutomating mission-critical processesEnabling new channels and business modelsProviding visibility and governance across disparate heterogeneous systems
Typical SOA Governance Challenges
How can I ensure service developers can easily publish and discover services?How can I guarantee existing SLAs when I add new consumers?How can I ensure that services created are easily discovered and not re-invented?Ensure that services created adhere to governance policies?How can I manage services in a scalable way?
Service Versioning Challenge
Application Owner
Application Owner
UIUI
Logic Logic
Data Data
Service A
• Operation 1
• Operation 2
• Operation 3
Service A
• Operation 1
• Operation 2
• Operation 3
Service A’
• Operation 1
• Operation 2 v1.5
Governance Types
Governance
Corporate Governance
SOX Codes of Business Conduct
IT GovernanceEnterprise Architectu
re
IT Portfolio Manageme
nt
Project Governance
SOA Governance
Design time
Governance
Runtime Governa
nce
Microsoft Confidential
ServiceAnalysis
ServiceDevelopment
ServiceTesting
ServiceProvisioning
ServiceOperation
ServiceChange
Management
ServiceDecommission
Governance
ServiceConsumption
Service Lifecycle Envisioning
Planning
Stabilizing
Management
Deploying
Developing
Microsoft Philosophy
End-to-End lifecycle approach is required
SOA Governance Capabilities
Envisioning
Capability Assessment
Project management
Programme Management
Reporting
Portfolio Management
Asset Management
Planning
Service design
Event & Schema design
Policy / standards
specification
Service taxonomy
Capability Repository
Service Repository
Developing &
Stabilizing
Service develop
ment
Service testing
Service publishin
g
Service discover
y
Deploying
Stage Managemen
t
Provisioning
Dependency Analysis
Service versioning
Build processes
Management
SLA enforcement
Service Monitoring
Rogue Service discovery
Exception Management
Reporting
Notification Services
Design Time Governance Runtime Governance
Design time / Runtime Governance Relationship
Design Time GovernanceKey Runtime Time Governance
Service Discovery
Service Creation
Service Validation
Service Publication
Runtime
Service Discovery
Define & apply runtime
policies
Runtime
Service Monitoring
Create service in Registry
Validation Service Against Governance Policies
Publish validated Services for runtime consumption
Discovery dependencies on other services - dynamically
Define usages policies to control runtime access
Enforce policies and SLAs at runtime
Discover existing services – not reinvent
SOA Governance Applied
Envisioning
Capability Assessment
Project management
Programme Management
Reporting
Portfolio Management
Asset Management
Planning
Service design
Event & Schema design
Policy / standards
specification
Service taxonomy
Capability Repository
Service Repository
Developing &
Stabilizing
Service develop
ment
Service testing
Service publishin
g
Service discover
y
Deployment
Stage Managemen
t
Provisioning
Dependency Analysis
Service versioning
Build processes
Management
SLA enforcement
Service Monitoring
Rogue Service discovery
Exception Management
Reporting
Notification Services
Design Time Governance Runtime Governance
MSBA, SOM
Visual Studio Team System 2005
SCOM 2007, MSEWindows Server Platform
Partners
MOF
MSF
Partners
.NET 3.0 (WCF)
SOA Design Time Governance
Design Time Governance Capabilities
Applies across Envisioning, Planning & Developing phases
Design Time Governance includes capabilities such as:
Service / Capability determination
Service Registry / Repository
Service Visibility
Service Trust
Change Management / Dependency Analysis
Policy Management / design time enforcement
Project Compliance
Microsoft Services Business Architecture (MSBA)
Business Architecture methodology tackles “how and where to start with SOA?”Methodology is endorsed by the creators of Six Sigma, business process reengineering, and Zachman.MSBA delivers:
Business ArchitectureProject recommendationsStructure and focus for SOA decisions
No need to spend 6 –12 months on SOA analysis and paralysis.
What does MSBA provide?
Business case for initiating SOA projects.Schematic language that is easily understood by business and IT stakeholders.Industry templates and tools.Exposes high-value business areas.Risk mitigation approach for large SOA projects (typically 2 – 8 week projects).Structured methodology to analyze governance and compliance.
Detailed Capability Map
Prioritize Technical Capabilities
Service Oriented Modelling (SOM)
Define FutureBusiness
Architecture
Define FutureTechnical
Architecture
Where you really are
Busi
ness
A
rchit
ect
ur
e
Tech
nolo
gy
Arc
hit
ect
ur
e
Business Architecture
1 Capability
1.1 Capability
1.2 Capability
2 Capability
2.1 Capability
Business Architecture
1 Capability
1.1 Capability
1.2 Capability
2 Capability
2.1 Capability
Where you want to be
AlignmentMicrosoft ServicesService Oriented
ModellingAlignment
Business Architecture
1 Capability
1.1 Capability
1.2 Capability
2 Capability
2.1 Capability
Technology Architecture
1 Capability
1.1 Capability
1.2 Capability
2 Capability
2.1 Capability
Understanding SOM
SOM is an Approach to bridge the gap between Business Architecture and Technology Architecture using connected modelsSOM enables
VisibilityVisibility of Business Architecture through Capability Models and Heat Maps
Rapid Decision MakingVisibility enables business to focus doing the right thing
AgilityAgility comes from ability to react
AccountabilitySOM ultimately provides accountability for chosen project
SOM provides a foundation for Incremental, Consistent and Repeatable Service Delivery through modelling:
Capability, Process, Service and Entity Models
Service Oriented Modelling
Capability Models
Capability Modelling
Industry Templates
ProcessModels
ProcessModelling
Templates
Service Models
Service Modelling
Templates
Services
Implementation
Templates
Where you really are
Where you want to be
Backwards Traceability and Forward Engineering
Service Oriented Modelling
Business Architects
Architects ArchitectsDevelopment
Teams
SOM Forms
Repository
SOM Modellers
Orchestration, Workflow and Service Engines
MSE ESB Guidance
Existing Models
Runtime Adapters
Import Adapters
Repository Adapters
Development
Automation Adapters
Modelling Framework
Customisation
Architecture Overview
SOM Modellers in Action
ConsolidatedInformation
Capability Models Process Models
Entity Models
Service Models
SOM Lead
Microsoft ServicesBusiness Architecture
Service Administration
Service Consumption
Service Implementation
CapabilityBasic Standardized Advanced Dynamic
Maturity Level
Loosely-coupled Composition
Service Discoverability
Testing Support
Enterprise Security
Organizational Alignment
Common Entities
Design Patterns
Uniform Contracts
Enterprise Governance
Development Process Efficiency
Service Adoption
Integration Efficiency
Basic security
Maintenance Efficiency
Basic Governance
Explicit Contracts
Service Boundaries
Service Identification
Semantic Services
Deployment Management
Service Level Agreements
Self Service
Extensible Service Channels
Advanced Monitoring
Process Modeling Support
Progressive Composition
Composable Policy
Business Analytics
Executable Policy
Versioning Support
Consumable Type System
Provisioning Management
Rules Driven Policy
Scenario Impact Analysis
Back Channel Messaging
Extensible Security
SOAMaturity Model
Capability Models
Process Models
Service Models
En
tity
Mo
de
ls
Direct Transformation
Direct Transformation
Factory Transformation
MicrosoftServer Platform
MicrosoftOffice Platform
MSBA Drives SOM Delivery
SOAMM Drives SOM Customisation
MicrosoftDevelopment Platform
Software Factories,App Blocks and Guidance
•BizTalk•BAM•WF•WCF•SQL•Etc.
•SharePoint (WF)•Office Docs•InfoPath •Etc.
•Source Code•Configuration•WCF Factory•EntLib•Etc.
Service DevelopmentOnce services or capabilities have been identified – service development Lots of challenges
Service versioningChange managementMultiple roles engaged / collaborationTransparency
Visual Studio Team System
Visual Studio Team SystemDesign time governance comprehensive support
Tester
Developer
Architect
IT / ProjectManager
BusinessAnalyst
Database ProfessionalDesigner
SoftwareQuality
TeamCollaboration
Planning
Capability Assessment
Project management
Programme Management
Reporting
Portfolio Management
Asset Management
Architecture & Design
Service design
Event & Schema design
Policy / standards specification
Service taxonomy
Capability Repository
Service Repository
Construction
Service development
Service testing
Service publish
ing
Service discov
ery
Deployment
Stage Manageme
nt
Provisioning
Dependency Analysis
Service versioning
Build processes
Management
SLA enforcement
Service Monitoring
Rogue Service discovery
Exception Management
Reporting
Notification Services
Visual Studio Team System
Project transparency
Change Managem
ent
ReportingServiceVersioning
MSF
Microsoft Solutions FrameworkSoftware development processes, principles & proven practicesMethodology templates
MSF for Agile Software DevelopmentMSF for CMMI Process Improvement
Visual Studio 2005 Team
System
Microsoft Solutions
Framework
enacts
guides
Planning
Capability Assessment
Project management
Programme Management
Reporting
Portfolio Management
Asset Management
Architecture
& Design
Service design
Event & Schema design
Policy / standards specification
Service taxonomy
Capability Repository
Service Repository
Developing & Stabilizing
Service develop
ment
Service testing
Service publishi
ng
Service discove
ry
Deployment
Stage Management
Provisioning
Dependency Analysis
Service versioning
Build processes
Management
SLA enforcement
Service Monitoring
Rogue Service discovery
Exception Management
Reporting
Notification Services
MSF
Service Publish & Discovery
Shared Services publishedDuring development – need to discover and consumeMicrosoft Windows UDDI Server
Part of Windows Server 2003 platformPublish and discover servicesEnables client applications to programmatically interactSupports UDDI version 2.0Future support for v3.0SDK for developers to publish and discover services
Service Registry
Windows UDDI server
Design time discovery
Partner InteroperabilityMicrosoft SOA platform also interoperates with Service Registry/Repository vendors such as
HP SystinetSOA Software
Visual Studio
Registries / Repositories
Design time discovery
SOA Runtime Governance
Runtime Governance Capabilities
Applies across Deployment, Management phasesTypical capabilities include:
Service VirtualizationService ManagementService MonitoringService Discovery Service UsageService Control
Planning
Capability Assessment
Project management
Programme Management
Reporting
Portfolio Management
Asset Management
Architecture
& Design
Service design
Event & Schema design
Policy / standards specification
Service taxonomy
Capability Repository
Service Repository
Developing & Stabilizing
Service develop
ment
Service testing
Service publishi
ng
Service discove
ry
Deployment
Stage Management
Provisioning
Dependency Analysis
Service versioning
Build processes
Management
SLA enforcement
Service Monitoring
Rogue Service discovery
Exception Management
Reporting
Notification Services
Runtime Governan
ce
SOA Runtime Governance – Microsoft Approach
Managed Service Engine (MSE)System Center Operations Manager 2007 Platform - WCF runtime discoveryPatterns & Practices:
Microsoft Operations Framework Standards based approachPartner Interoperability
Amberpoint Demo
Planning
Capability Assessment
Project management
Programme Management
Reporting
Portfolio Management
Asset Management
Architecture
& Design
Service design
Event & Schema design
Policy / standards specification
Service taxonomy
Capability Repository
Service Repository
Developing & Stabilization
Service develop
ment
Service testing
Service publishi
ng
Service discove
ry
Deployment
Stage Management
Provisioning
Dependency Analysis
Service versioning
Build processes
Manage
mentSLA
enforcement
Service Monitoring
Rogue Service discovery
Exception Management
Reporting
Notification Services
SCOM 07
MOFDSI
SML.NET 3.0
Service Virtualization
Host Service
Address
Virtual Service
Implementation Pattern
Service Intermediary
Address
Messenger
A
B
C
Broker
A
B
C
DispatcherA
B
C
Service Repository
Managed Services ArchitectureBuilt on metadata and runtime
messaging
Messenger
Message Normalization
DecryptionEncryption
Authentication
Authorization
Broker
Operation Selection
Policy Enforcement
Authentication
Authorization
Dispatcher
Operation Invocation
Message Translation
DecryptionEncryption
Service Logic
Client
Service Catalog(Meta Data Repository)
(Service Runtime Engine)
Managed Services Engine (MSE)
The Managed Services Engine (MSE) is one approach to facilitating Enterprise SOA through service virtualizationBuilt upon the Windows Communication Foundation (WCF) and the Microsoft Server Platform (BizTalk Server, UDDI)Developed by Microsoft Services to help customers address the challenges of SOA in the enterprise
Managed Services Engine (MSE)
Service virtualization through a Service Repository
Deploy services fasterCoordinate change managementMaximize the reuse of various service elementsVersioningAbstractionService managementRouting, and runtime policy enforcement
Customer Usage ScenariosAIM Healthcare
Exposed SQL Server Stored Procs and Biztalk OrchestrationsMultiple consumer authentication models, AzMan for authorization
End-to-End Service
Management
System Center Ops Mgr 2007 • Proactive management of your IT services
• Integrated monitoring of distributed applications, the end user perspective, and supporting infrastructure
• Reduced problem resolution time• Management packs that include
Microsoft expertise for applications, servers, and clients Best of Breed
for Windows
• Simplifies managing your IT environment and improves time to value
• Role based security, self monitoring infrastructure, and improved scalability
Increased Efficiency and Control
System Center Capabilties
Envisioning
Capability Assessment
Project management
Programme Management
Reporting
Portfolio Management
Asset Management
Planning
Service design
Event & Schema design
Policy / standards
specification
Service taxonomy
Capability Repository
Service Repository
Developing &
Stabilizing
Service develop
ment
Service testing
Service publishin
g
Service discover
y
Deploying
Stage Managemen
t
Provisioning
Dependency Analysis
Service versioning
Build processes
Management
SLA enforcement
Service Monitoring
Rogue Service discovery
Exception Management
Reporting
Notification Services
Design Time Governance Runtime Governance
WCF Monitoring
Windows Communication Foundation (WCF) Service Trace Viewer Tool
Runtime Discovery
WCF Live Service Trace ViewerService dependency analysis
Platform + Partner Solution
Envisioning
Capability Assessment
Project management
Programme Management
Reporting
Portfolio Management
Asset Management
Planning
Service design
Event & Schema design
Policy / standards
specification
Service taxonomy
Capability Repository
Service Repository
Developing &
Stabilizing
Service develop
ment
Service testing
Service publishin
g
Service discover
y
Deploying
Stage Managemen
t
Provisioning
Dependency Analysis
Service versioning
Build processes
Management
SLA enforcement
Service Monitoring
Rogue Service discovery
Exception Management
Reporting
Notification Services
Design Time Governance Runtime Governance
SOA Software
Governance SolutionsCompliance CheckingPolicy ManagementService DiscoveryLifecycle Management Exception ManagementReliability and performance managementTolerance and mediationDecouplingSecurity SolutionsTrust enablementSOA Policy ManagementPolicy managementPolicy enforcementMetric collection and analysisCompliance management and reporting
COUNCIL