soa – design, development and governance · soa – design, development and governance ......
TRANSCRIPT
SOA – Design, Development and Governance
Rajesh ShewaniSoftware IT Architect [email protected]
Agenda
• Introduction
• SOA Design Scenario
• Governance
• Summary
A programming model complete with standards, tools, methods and technologies such as Web services
Capabilities that a business wants to expose as a set of services to clients and partner organizations
An architectural style that requires a service provider, requestor and a service description. It addresses characteristics such as loose coupling, reuse and simple and composite implementations
Implementation
Architecture
Business
OperationsA set of agreements among service requestors and service providers that specify the quality of service and identify key business and IT metrics
Roles
Service Oriented Architecture Different Things to Different People
Gather requirementsModel & SimulateDesign
DiscoverConstruct & TestCompose
Integrate peopleIntegrate processesManage and integrate information
Manage applications & servicesManage identity & complianceMonitor business metrics
Financial transparencyBusiness/IT alignmentProcess control
The SOA Lifecycle
Aligning Business and IT Objectives
Function(Service Definition)
Security &Compliance
Performance &Quality (KPI)
AccelerateTime to Market
IncreaseRevenue
ReduceCosts
Enterprise Architecture
Reference Architecture Governance
Roadmap
BusinessObjectives
ITObjectives
SOA and Enterprise Architecture: A Common Goal
However, achieving Flexibility is not easy; it requires an integrated set of tools, methods, models and reference implementations to guide an organisation
Operations Reference Implementations
Methods
Tools
ModelsDevelopersAnalysts
ArchitectsUsers
Decomposition of the Business Blueprint to the appropriate level for Business Services
1. Production
1.2Define Master
Planning
1.3Define
Rules & Policies
1.1Define
Production Strategy
1.4Schedule
the Production
1.5Operate
Plant
1.6Monitor
Production
1.7Control Quality
1.8Manage
Maintenance
1.4.1Schedule
production quantities
1.4.2Define Line Schedule & Sequence
1.5.1Track
production -Traceability /
Control
1.5.2Track and monitor
production parameters
1.5.3Assemble &
Package Product (vehicle)
1.4.3Pull
Material
1.4.4Schedule
Line Delivery
1.5.4Broadcast messages
1.5.5Manage alerts
1.5.6Manage
Manufacturng order mgmnt
1.5.7Control Flow
1.6.1Assess MPS
& MRP Performance
1.6.2Assess
Procurement Performance
1.7.1Establish
quality targets
1.7.2Monitor quality
1.7.3Feedback
quality status
1.7.4Continuous
improvement
Production
Production Strategy
Master Production Planning
Production Rules & Policies
Production Scheduling
Production Monitoring
Quality Control
Plant Operations
Maintenance Management
1.5.2.1Track WIP
1.5.2.2Get Bill Of
Material
1.5.2.3Capture as-
Built
8
Introduction to SOA Entry Points…the path for achieving business value from SOA
Existing assets can be leveraged by service enabling them and fill gaps by creating new reusable services
Customers, Partners and Employees can collaborate & share business assets for improved business operations
Better informed decisions can be made with trusted data & information throughout your organization.
Business Process Innovation and flexibility can be achieved by treating tasks as modular services & thru faster deployment
InformationInformation
ConnectivityConnectivity
ReuseReuse
PeoplePeople
Process Process
Systems, Users and Multi-channels can be easily connected to reduce maintenance costs and provide any-to-any linkages
Entry Point Realizations Add SOA into IT Environment
ReuseReuse• Access External
Service
• Access Service Directly
• Access Service Indirectly
• Create New Service
• Accessing EIS via Adapter
• Expose Message Broker Flow
• Expose IMS as a Service
• Business Rules
PeoplePeople• Portlet to
Services• Ajax Based Apps• Portlet Federation• Managed Client • Process Portal• Enabling
Organizational Collaboration
• Enterprise Content Mgmt
• User Deployment Services
• Composite Business Services with Portal
• Integrate & Expose Services via Portal
Process Process • Design &
Modeling of Processes
• Assembly of Processes
• Deployment of Processes
• Management of Processes
InformationInformation• Simple
Information Services
• Data Federation
• Data Consolidation
• Data Cleansing
• Master Data Mgmt
• Model SOA Lifecycle
• Manage SOA Lifecycle
• Enterprise Content Mgmt
ConnectivityConnectivity• Open Standards
access to APIs
• Multi Channel Access
• WS-Enterprise Apps
• ESB Federation
• WPS & WMB Interaction
• Value Based Service Availability
• Consumer Side ESB
10
Introduction to SOA Disciplines…advanced techniques to reinforce SOA progress
Identify and specify business services to remove redundancy and promote service reuseDesign
Develop and enforce governance processes throughout the service lifecycleGovernance
Bulk process enterprise information with state of the art scheduling and resource management to achieve high operational efficiencyBatch Processing
Establish test suites and test automation to ensure consistent resultsTesting
Maximize the benefits from business processes, as well as the people and information involved in them. BPM
Detect, decide and respond in accordance with defined business policies to enable dynamic decision makingEvent Processing
Monitor and secure services to ensure high quality, safe servicedelivery
Security & Mgmt
Realizations of SOA Disciplines Improve Execution
• Business Service Modeling
• Transformation Analysis & Service design
• Applying SOMA to Service Design
• Design of Composite Business Services
• Custom Patterns & Transformation
• Applying RUPSOMA for Service Design
• Govern Reuse• Comply with
Reuse• Manage Change• Value Realization• Regulating New
Service Creation• Enforcing
Standards & Best Practices
• Getting More Reuse of Services
• Service Change & Versioning Control
• Service Discovery
• Manage Services
• Manage Security
• Manage BPM, IaaS & Governance
• Create Web Services Fabric
• IT Virtualization
• Provisioning
• Metering & Financial Mgmt
• SLA Mgmt
• Develop Test Plans
• Automate Regression Tests
• Measure Test Coverage
• Monitor Test Execution
• Profile for Performance
• Modeling & Simulation
• Mgmt With Rules
• Monitoring BAM
• Choreography
• Content Centric
Design Governance Security & Mgmt Testing BPM
Agenda
• Introduction
• SOA Design Scenario
• Governance
• Summary
Implementation
Service Modelling
Process Modelling
Service Specification
ServiceAnalysis
Legacy SystemService Harvesting
Identify Project Scope
Service ImplementationOrchestrationImplementation
Interface Implementation
Identify Business Process Scope
IdentifyService
Candidates
Legacy SystemInterface Mapping
A SimplifiedSOA Development Cycle
ProcessAnalysis
Process Specification
Generate Generate Mapping
SOA Impacts the Whole Application Lifecycle
“Before I deploy it in production, how can I be sure that the service flow matches the design?”
“How can I debug my production application without reproducing the problem.”
“Which part of the SOA infrastructure is causing this service problem? The app server or the messaging connections?”
Assemble Deploy ManageModel
IntegrationDeveloper IT Service ManagerApplication
DeveloperService and
Solution Tester IT Operations
“How do I make sure it works reliably and securely with other services I’m dependent on?”
“What’s the root-cause of this service problem – the requirement, the service flow or the application?”
“Some of our services are used by our partners? How can I be sure they are meeting their SLAs?”
“Does my new SOA application meet it performance goals?”
“How do I design andimplement services basedon my existing systems?”
“What are the businessobjectives and how wouldI know when I meet them?”
“Which business services do I optimize? What impact will that have on my IT systems?”
BusinessAnalyst
“How do I test a composite solution when many of the pieces are external to me?”
Lotus DB2Rational WebSphere
Deploy
Deployment Team
Platform-specific Runtime
Specialists
Manage Quality of Service
Manage Runtime Platforms
Business Operations Analysts
IT Operations Managers
Monitor Business Results
Manage IT Performance
Create Business and IT Dashboards
Manage
Assemble
Development Team
Integration Developers
Testers
Choreograph Services
Develop New Services
Configure Human Task ManagerDevelop User
InterfaceTest
Business Driven DevelopmentAn Iterative, Business-focused Development Process
Team Unifying Platform
Model
Model Business RequirementsBusiness
AnalystsSoftware and Data
Architects Model Software Architecture
Unified Modeling Language
Continual Process Improvement
ObservationModel (KPIs)
Run-timeStatistics
WSDL
EAR, DDL
EventsBusiness Process Execution Language
Requirements
SOA Design Scenario – Purpose• SOA Design scenario focuses on aligning business design and IT solution
design such that an enterprise can be agile and responsive to new business opportunities
– Business design• Render explicit business strategy and objectives• Business-driven to prioritize and to shape service requirements, design and
implementation• Greater service reuse to speed up time-to-market while reduce business cost
– IT solution design• Provide services in support of key business initiatives with explicit traceability • Repeatable and scalable design method• Service composition for greater reuse• Service binding policy for multi-channel access• Solutions easy to assemble, deploy and mange
Scenario Focus Areas
• Methods– Provide the conceptual framework for the what’s, how’s & why’s of
modeling– Alignment between business design & IT design
• Artifacts– Roles involved in artifact creation & consumption– Tools involved and artifact mapping– Lifecycle management– Patterns and transformation template development
• Tools and Tool Integration– Use of tools in support of design method– Model traceability
Silo ServicesComposite
ServicesVirtualizedServices
DynamicallyRe-Configurable
ServicesComponentizedIntegrated
Level 1 Level 4 Level 5 Level 6 Level 7Level 3Level 2
Applications
Methods
Organization
Infrastructure
Architecture
Business View
Modules ServicesProcess
Integration via Services
Dynamic Application Assembly
ComponentsObjects
Structured Analysis &
Design
Service OrientedModeling
Service OrientedModeling
GrammarOrientedModeling
Component Based
Development
Object OrientedModeling
Ad hoc IT Governance
Emerging SOA Governance
SOA and IT Governance Alignment
SOA and IT Governance Alignment
Ad hoc IT Governance
Ad hoc IT Governance
SOA and IT Governance Alignment
Service Oriented Modeling
Process Integration
via Services
Platform Specific
PlatformSpecific
Platform Neutral
DynamicSense & Respond
PlatformSpecific
PlatformSpecific
Monolithic Architecture
Emerging SOA
Grid Enabled SOA
Dynamically Re-Configurable Architecture
ComponentArchitecture
Layered Architecture SOA
PlatformSpecific
Function Oriented
ServiceOriented
ServiceOriented
ServiceOriented
Function Oriented
Function Oriented
ServiceOriented
Service Integration Maturity Model (SIMM)
Transforming Business Needs to SOA solutions Requires a Systematic, Repeatable Best Practices based Approach
RealizationDecisions on sourcing of services
Specificationof Services, Components, Flows
Identificationof candidate Services, Components, and Flows
• A number of techniques have been defined to design good service architectures–Delivered through methods, tools, domain models, and service offerings–Examples include IBM’s RUP SOMA method–Rational Method Composer
A Service Specification defines the dependencies, composition, exposure decisions, messages, quality of service constraints and decisions regarding the management of state within a service.
Identify Quality of Service Requirements
Use non-functional requirements to specify the desired quality of service
Quality OfService
Identify Services Composition and
Flow
Review of functional areas and business processes will elaborate the composition of services from other services and their flow to enable the business function. (Service) Flow Specification describes the choreography between services.
Service Composition
Apply Service Litmus Tests & Document
Exposure Decisions
Use Service Litmus Tests to make service exposure decisions – “From my candidate services, which ones I choose to expose?”
Service ExposureDecisions
Service MessagesSpecification
Identify and specify the format and content of input and output messages of a service.
ServiceMessages
Document State Management Decisions
Sometimes the composition of services requires management of state. Document these decisions such as the answer to “What kind of persistence will be used and how will to be enabled?”
Service Model
State ManagementDecisions
Identify ServiceDependencies
Service Dependencies
Detailed review of the service may expose service dependencies on other services or applications that will be used to realize the functionality of the service.
Example: Candidate Service Definition using SOMA
Service Specification
Agenda
• Introduction
• SOA Design Scenario
• Governance
• Summary
When Do I Need SOA Governance?
• When the organization reaches the stage where they would like tobegin wide spread adoption of SOA, issues arise that demonstrate the need for a governance framework tuned and modified for SOA
Many customers start their SOA journey by building a Many customers start their SOA journey by building a proof of conceptproof of concept or or embark on a small embark on a small pilot projectpilot project..
The objective is to demonstrate that the technology can be succeThe objective is to demonstrate that the technology can be successfully ssfully used by the organization to build an SOA application.used by the organization to build an SOA application.
see Appendix A
Currency conversion service
Accounting department
App. 1 App. 2
1. Provide acurrency service that fills a specific line of business (LOB)
A scenario on the importance of SOA governance –step 1
* Scenario from Introduction to SOA Governance, Bobby Woolf.
Currency conversion service
Accounting department
App. 1 App. 2
Orderfulfillment
Sales
Purchasing
Legal
2. Other LOBs start using
the service
A scenario on the importance of SOA governance –step 2
1. Provide acurrency service that fills a specific line of business (LOB)
Currency conversion service
Accounting department
App. 1 App. 2
3. LOBs increase use
of services / quality suffers
A scenario on the importance of SOA governance –step 3
2. Other LOBs start using
the service
1. Provide acurrency service that fills a specific line of business (LOB)
Orderfulfillment
Sales
Purchasing
Legal
Currency conversion service
Accounting department
App. 1 App. 2
3. LOBs increase use
of services / quality suffers
A scenario on the importance of SOA governance –step 3
2. Other LOBs start using
the service
1. Provide acurrency service that fills a specific line of business (LOB)
Orderfulfillment
Sales
Purchasing
Legal
x
x
x
x
x x
4. Service is fixed at provider’s
expense
Currency conversion service
Accounting department
App. 1 App. 2
3. LOBs increase use
of services / quality suffers
A scenario on the importance of SOA governance –step 4
2. Other LOBs start using
the service
1. Provide acurrency service that fills a specific line of business (LOB)
Orderfulfillment
Sales
Purchasing
Legal
4. Service is fixed at provider’s
expense
Currency conversion service
Accounting department
App. 1 App. 2
3. LOBs increase use
of services / quality suffers
A scenario on the importance of SOA governance –step 5
2. Other LOBs start using
the service
1. Provide acurrency service that fills a specific line of business (LOB)
Orderfulfillment
Sales
Purchasing
Legal
x
x
x
x
x x
5. Fix works temporarily but problem
reappears
4. Service is fixed at provider’s
expense
Currency conversion service
Accounting department
App. 1 App. 2
3. LOBs increase use
of services / quality suffers
A scenario on the importance of SOA governance –step 6
2. Other LOBs start using
the service
1. Provide acurrency service that fills a specific line of business (LOB)
Orderfulfillment
Sales
Purchasing
Legal
5. Fix works temporarily but problem
reappears
xx
xxx x
6. Maintenancecosts soar /
provider ends service
Define the Governance Approach
Monitor and Manage the Governance Processes
Deploy the Governance Model Incrementally
Establish the Governance Need
Industry proven SOA Governance and Management MethodDetailed governance process guidance Comprehensive framework and processes span lifecycle of SOA governanceMethodology to help customer establish SOA Center of Excellence
MethodMethod
Foundation to realize SOA business benefitsLeverages existing Governance structuresMethodology and tools based on best practices and thought leadership and support for open standardsSkills and experience gained from many SOA engagementsCatalyst to align business and IT strategy
Customer ValueCustomer Value
SOA Business and IT Governance PrinciplesCustomized processesCenter of Excellence OrganizationRoles and responsibilitiesDefined metricsSOA Governance Transition Plan
DeliverablesDeliverables
The Governance roadmap will be a participative model
Define the scope of governance: business,
development governance or service management or all of
the above
Define new governance processes for services and
define SOA governance mechanisms such as the SOA
Center of Excellence
Begin implementation of the SOA Center of Excellence,
Skills Enablement, Organizational Change,
Infrastructure Change, etc.
Monitor composite application performance
and adjust; Monitor effectiveness of governance
changes
The Governance workshop
Understand current governance structures
Determine the Governance Focus
Plan
Continuous SOA Governance Process Measurement & Improvement
Define Enable Measure
Define the SOA Governance Model
Implement the SOA Governance Model
Refine the SOA Governance Model
Create IT governance baseline for HDFC
Define scope of governance
Define and refine governance processes
Define organizational change
Conduct change readiness survey within
HDFC
Define IT changes in SOA development
Implement the transition plan
Initiate SOA Org Changes
Launch the SOA Center of Excellence for HDFC
Implement infrastructure for SOA
Measure effectiveness governance processes
Measure effectiveness of organization change
Review and refine operational environment
Agenda
• Introduction
• SOA Design Scenario
• Governance
• Summary
Summary
• Focus of Enterprise Solutions Today– Service-oriented architecture– Model driven development – Business, domain, system,
application…..– Business innovation and optimization
• Keys to Successful SOA– Successful Alignment of IT and Business– Understanding and Enforcing your Architecture– Taking Advantage of "heritage"/Mainframe/Core Assets – Keep Design Assets and Code in-sync/aligned/coordinated – Capture and Reuse of Architectural IC– Early Focus on Quality and Testing– Govern and Manage Effectively across E2E Assets