This document discusses how to promote service reuse through API management. It identifies challenges to service adoption such as delivery concerns, lack of trust in service stability, and inability to configure services for different consumers. This leads to redundant development rather than reuse of services. The document recommends establishing API governance practices such as publishing a service catalog, managing demand and capacity, and defining roles for API creators, publishers, and consumers to encourage collaboration and reuse of services.
1. Promoting Service Re-use with
API Management
Chris Haddad
@cobiacomm on Twitter
Read more about WSO2 API Manager at
http://wso2.com/products/api-manager
Read more about promoting service re-use with APIs at
http://wso2.com/whitepapers/promoting-service-reuse-within-your-enterprise-and-
maximizing-soa-success/
2. Your Service Oriented Architecture
Goals
• Enhance Agility
– by increasing service re-use
– with faster integration
– efficiently upgrading service subscribers
• Reduce Technical Debt
– Eliminate redundancy and duplication within
service portfolio [re-wire apps to standard service]
– Track adoption
4. Service Adoption(Challenges)
Often difficult to offer your business capabilities as a re-usable service
• Delivery Concerns
• Potential consumers do not trust service stability, reliability, availability,
or performance
• Providers have scalability concerns and lack an ability to manage
consumption
• Security risks prevent publishing and offering open access
• Poor Re-use
• Difficult to manage requirements from multiple consumers and
coordinate release schedule
• Few consumers adopting service
• Inability to configure service per consumer
• Business return requires service metering usage rates, and billing
5. Return(Service Sprawl);
Teams re-build rather than re-use
• Services proliferate (100s of services) and are minimally re-used
• Minimal communication and coordination
• Who is consuming service?
• Who is writing re-usable service?
• Prevalent SOA Anti-patterns
• Not Invented Here (NIH)
• Tight Coupling and Build again
• Shared service invisibility
• Teams do not know about service
• Non-functional and functional requirements are not well documented
• Teams can not easily map service to needed business capability
6. Refactor the portfolio and processes
• How can I identify technical debt?
• What is preventing service re-use, and how
can I encourage service consumption?
– When do consumers not know about a service?
– Why do services not meet consumer
requirements?
7. Promoting Service
Adoption and Re-use
Requires
• A published service catalogue and service tiers
• Demand and capacity management
• Lifecycle management and workflow
• Continuous provisioning and deployment
• Service level management
• Collaboration channels
8. Service Transformation
• An API (or a service) is a business capability delivered
over the Internet to internal or external consumers
• Network accessible function
• Available using standard web protocols
• With well-defined interfaces
• Designed for access by third-parties
• A Managed API (or a managed service) is:
Actively advertised and subscribe-able
Exhibits high Quality of Service (QoS)
Available with Service Level Agreements (SLAs)
Secured, authenticated, authorized and protected
Monitored and monetized with analytics
13. Best Practice Integration (SOA)
Use Cases and Roles
•API Creator
• Builds, manages, and versions API
• Understand business and technical requirements
• Cares about usage and scaling
• Seeks feedback, ratings, usage
•API Publisher
• Publishes, Promotes and encourages consumers to adopt APIs
• Determines usage patterns and how to best monetize asset
• Monitors and secures
•API Consumer
• Understands the interface definition
• Subscribes and connects application to API
• Monitors own usage and cost basis
• Provides feedback and ratings
16. Roadmap
1. Define roles and responsibilities
2. Extend SOA Governance and service run-time
policy into external API design, development,
and consumption activities
3. Establish on-demand self-service API
consumption channel
1. Analyze service dashboards and identify subscription
trends
2. Relentlessly reduce technical debt through service
re-use rather than re-build
18. References
Product Page
•http://wso2.com/products/api-manager/
Getting Started Guide http://d.content.wso2.com/files/WSO2APIManager-v1.0.0-
GettingStarted.pdf
White Papers
Promoting service re-use within your enterprise and maximizing SOA success
WSO2 API Manager Comparison
Blogs
•http://sanjiva.weerawarana.org/2012/08/api-management-missing-link-for-soa.html
•http://techfeast-hiranya.blogspot.com/search/label/api%20management
•http://sumedha.blogspot.com/search/label/API
•http://blog.cobia.net/cobiacomm
Hinweis der Redaktion
API management is a strategic component within your Service Oriented Architecture initiative. Many development teams publish services, yet struggle to create a service architecture that is widely shared, re-used, and adopted across internal development teams. SOA governance programs often fall far short of encouraging consumer adoption, tracking service consumption, and illustrating business value. Too often, there is little or no insight into:
How to enable business functionality as an API.
Who is writing re-usable APIs and services.
Who is consuming APIs and services.
How APIs and services are being used.
In this session Chris will describe benefits gained by:
Publishing managed APIs for consumption within your organization.
Establishing API manager and publisher roles to foster API adoption.
Extending the service governance registry to encourage cross-team (or cross-department) communication, coordination and collaboration.
Overcoming common SOA anti-patterns of ‘Not Invented Here’ (NIH) and ‘Build, and Build Again’ by using an API Store.
Following an API roadmap focused on increasing service re-use and enhancing IT business value.
Picture of
Several teams operate independently, and there is a need to improve communication and coordination. Hundreds of people write services; few people know who is consuming services, who is writing re-usable services, and how services are being used.
Difficult to offer your business capabilities as an API
Potential consumers do not trust API stability, reliability, availability, or performance
Providers have scalability concerns and lack an ability to manage consumption
Security risks prevent publishing and offering open access
Difficult to manage requirements from multiple consumers and coordinate release schedule
Inability to configure API per consumer
Business return requires API metering usage rates, and billing
Automated Governance
Governance is a practice, which defines policies, people, and processes. Effective governance mitigates risks, improves performance, and facilitates correct actions.
Automated governance enables application and infrastructure services to efficiently scale across numerous consumers and providers while effectively monetizing, maintaining, and securing assets and consumer-provider interactions. By publishing a service catalogue offering tiered levels of service, teams can promote standard offerings that meet customer requirements. By streamlining access and approval, automated governance encourages customers to choose standard offerings and reduce cost. Scaling a Cloud environment while right-sizing available capacity is non-trivial, and the infrastructure must support demand management and capacity management activities. When organizations move beyond their first Cloud service release, automated lifecycle management becomes a predominant concern. To effectively manage the service lifecycle, the infrastructure must report on service versions, subscribed consumers, and usage trends. In the run-time environment, an infrastructure authority component makes resource allocation decisions, which are enforced by service level management components.
Integrate with Business Activity Monitor to provide analytics, monitoring and business intelligence including custom KPIs
Service performance metrics
Usage, billing, and monetization metrics
Track Cloud service expense against business value