Move From Silo-Based Development to Modular, Open Architecture (SOA) RIGIDITY Business Process Functions Presentation Layer/ UI Infrastructure (HW, Network, Data Center) Current Technology Stack Monolithic Applications 2 1 4 Data Connectivity/ Messaging 3
The Result: Typical IT Budget Allocation Horror story: adding two digits to a part number that requires $2M and one year to implement (but added no additional business value) because it touched on almost every system in the enterprise Maintenance Integration New Applications 70-90% 15-30% 5-15%
Service : A specific style of functionality based on a service contract
Modular and self contained
Not all services are created equal.
Service Level Agreement Service Interface Implementation Internal Data Internal Functionality Virtual Business Objects Service Interface Service Contract
SOA vs. Web Services SOA Web Services SOA Web Services SOA Web Services Or Or
Move From Silo-Based Development to Modular, Open Architecture (SOA) RIGIDITY Business Process Functions Presentation Layer/ UI Infrastructure (HW, Network, Data Center) Current Technology Stack Monolithic Applications 2 1 Infrastructure Services Future Loosely Coupled, Open Model Based on SOA 4 Data Interface Services Framework Connectivity/ Messaging 3 Integration Services Framework Business Services Framework FLEXIBILITY Infrastructure Services Framework Business Process Services Integration Services Interface Services 1 3 2 4
Coupling refers to the amount of dependency between services
Loosely coupled services have few well-known dependencies
Tightly coupled services have many known and more importantly, unknown dependencies
Basic recommendation for XML, other for loosely coupling – If “receiver” gets “unknown” parameter – discard it!
Sun Composite Application Platform Suite (CAPS) – Composite Applications are built on top of a comprehensive ESB CAPS ESB CAPS Composite Apps Messaging and Request / Reply ETL Customer Data Integration BAM Workflow B2B B2B A2A A2A BL BL B2B Portal B2B Portal Wrappers / Adapters Transformation Orchestration
Service Infrastructure Reference Architecture Order Management Process Services Routing AquaLogic Service Bus Data Services AquaLogic Data Services Platform Portal Tier WLP Service Routing Billing Inventory Management Mainframe .Net ERP Data Warehouse Oracle Process Tier WLI Portlet Web App Security Services AquaLogic Enterprise Security Service Registry AquaLogic Service Registry End-to-end Web Services Management Service Registry
SOA Runtime Management… Credit Service 1 Credit Service 2 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <po-number> A234235 </po-number> </soapenv:Body> </soapenv:Envelope> Enterprise Service Bus
Metadata Information - many sources ! Use cases Business process models Best practices Design patterns Technical architectures Applications Components Services Documentation Test cases LOGIDEX Analysis + Design Coding Testing + QA Deployment Requirements METADATA
Phased Development Approach Future Business Services Architecture Business Models Infrastructure effort % done time Project 1 Infrastructure Project 1 Business Service Project 3 Infrastructure Project 3 Business Service Project 2 Infrastructure Project 2 Business Service prioritization Process and Governance
1. Determining business goals and strategy – understand what is driving towards SOA, what the overall business goals and strategy are, what is driving the industry over the next 3-5 years. Determine an ‘overall theme’. An example of this is ‘Customer Centric’
2. Determine existing systems and capabilities
3. Develop high-level SOA service organization – propose an organization of service groups that aligns with the goals. Elaborate on the roles and responsibilities of each service group.
4. Determine technology requirements.
5. Develop overall SOA Roadmap – this is where we combine the strategy, SOA and technology into an overall roadmap.
6. Finalize SOA Roadmap.
Hierarchy of Service Types Foundation Service Layer (May be used by all other services) Business Service Domain Service ... Domain Service Atomic Component Integration Service ... Utility Service ... Enterprise Business Process Business Service
Hierarchy of Service Types Foundation Service Layer (May be used by all other services) For specific LOB – details of Check For specific LOB Operation – changing date of Check For several LOB Operation – relevant information several LOB for ZIPCODE External service (bank of Israel) or Legacy Business process – altering the status of personal Account Altering the status of person in different Accounts (savings, investments, loans, etc.) Business Service Domain Service ... Domain Service Atomic Component Integration Service ... Utility Service ... Enterprise Business Process Business Service