4 Governance definitions A lot of debates about SOA Governance definition… … but no doubt about the importance of Governance to succeeding with SOA We take the following definitions of SOA governance: “The ability to organize, enforce and re-configure service interactions in an SOA”. (Michael Wheaton – Sun) SOA Governance is a set of roles, policies and procedures that guide the adoption of SOA (Miko Matsumura – Software AG)
5 Governance Infrastructure The main components of an SOA Governance solution: Service Platform ESB Application Server Mainframe SLA Enforcement Policy Enforcement Runtime Management: Probes and Modules Registry/Repository Lifecycle Management Versioning Publish and Discover Reporting Dependency Management Notifications GUI Modeling Tools IDE modules (Eclipse plugin) SLA Management Policy Management
6 Registry/Repository Useful to: Provide a single system of record where all relevant elements of your SOA become visible to all interested parties Main features: Registry Publish, discover services and related metadata like WSDL, XSD, etc. Organization management (enterprises, persons, jobs, etc.) Roles of organizations in relation to services and endpoints Agreement established between consumers and providers Publish, discover policies that govern the behavior of users (persons or systems) that participate in the service lifecycle Dependencies between services or between services and other SOA assets (BPEL processes, etc.) Lifecycle management Reporting: usage indicators, policy violations, etc. Repository Service metadata storage Versioning Notification
7 Contract/Agreement Management Useful to: streamline service consumption Main features: Service Level Agreement (SLA) negotiation between service consumer and provider Establishing SLA policies like authentication and QoS Definition of penalties and rewards Contract lifecycle and versioning
8 Policy Management Useful to: Ensure desirable behavior among SOA participants (people or systems), all along service lifecycle Support an increasing number of services, service providers and service consumers Main features: Policy publication, discovery Support of different kind of policies like conformance policies (WSI Basic profile), QoS policies (latency, availability, etc.), Security policies (access right, encryption, etc.), etc. Policy lifecycle and versioning Policy enforcement at design time and runtime (in relation to runtime management)
9 Runtime Management Useful to: Have an unified vision of all service runtime environments Significantly increase the adaptability to consumers needs Main features: Service definition and access point import Service monitoring: availability, latency, consumption, reusability, etc. SLA and Runtime Policies enforcement Policy violation notification
11 Dragon Governance Platform Open Source governance solution: LGPL license Developed by eBM Websourcing, leader in open source middleware solution development Member of the OW2 consortium Based on Web Services standards: includes support for WSDL (1.1, 2.0), XSD, WS-* (WS-Agreement, WS-Policy, etc.) Integrates with different kind of Service Platform: Enterprise Service Bus (PEtALS ESB), Application Server, etc. Integrates with a lots of Database: Oracle, MySQL, HSQLDB, etc.
12 Dragon architecture Dragon Repository (JAXR)Registry Publish Discover CataloguingValidation Life cycle Management Dependency Management User Management Versioning Fine-grained Access Control Fine-grained Locking Notification UDDI APISOAP APIJAXR APIREST API Web UIEclipse PluginMaven Plugin Security, QoS, SLA enforcement Monitoring ProbesImport/Deployment PEtALS Distributed Service Platform Servi ce JDBCLDAP File System Contract Manager Policy Manager eBM Websourcing governance solution: Dragon
18 Dragon targeted audience Business Analyst: has a business vision of a specific domain. Defines new business capabilities, objectives, processes and constraints (or rules). SOA Architect: has a global vision of the entire (or domain specific) service architecture. Assembles services into business processes or composite services. Service Developer: implements and maintains (updates, fixes...) services based on service definition and business constraints. Quality Manager: defines and executes service tests based on service definition and business constraints. Operator: push to production, setup and monitor services.
19 Dragon targeted audience Service Manager: manages service versions and life cycles (state transitions). Defines service categorization and semantic. Enforces policies and SLA. Chief Information Officer: monitors SOA indicators (QoS, Service usage/reuse, development time...). Operation Analyst: creates SLA and other policies based on business constraints and objectives. SOA Librarian (Administrator): manages governance platform (roles, access rights, service categories, tags, indexation rules, life cycle definitions...).