Ten years after the rise of Service Oriented Architecture, many organizations have identified and published services as shared assets, however teams and partners often continue to invest considerable time and resources when building new solutions.Â Many teams experience rapid portfolio proliferation and sprawl, but not enhanced portfolio efficiency or business agility. Achieving business agility requires the growth of development partnerships and interactions, which should span both internal and external teams.
Traditional SOA and integration platforms enable rapid development, but they provide little business partnership support. Teams commonly operate independently and autonomously. Hundreds of people write new APIs and services; few people know:
- who is consuming APIs and services,
- who is writing re-usable APIs and services, or
- how APIs and services are being used.
In order to overcome common SOA anti-patterns, teams must improve cross-team (or cross-partner) communication, coordination and collaboration. Teams should extend their governance effort, offer managed APIs through an API Store, and implement API management infrastructure. A managed API is:
- Actively advertised and subscribe-able
- Available with an associated, published service-level agreement (SLA)
- Secured, authenticated, authorized and protected
- Monitored and monetized with analytics
An API Store is a venue to find, explore, subscribe and evaluate available resources. The API Store enables partners to quickly find relevant APIs. Once a candidate list is identified, the API Store provides a structured environment for exploring the APIs and understanding solution fit. During the exploration phase, collaboration between the potential API consumer and provider is essential. After finding and exploring an API, a project may stall when the team attempts to gain access. An API store provides on-demand self-service subscription and collaboration channels, rapidly reducing the time and effort required to integrate and evaluate available API resources. Figure 1 illustrates API consumer lifecycle activities.
Figure 1: API Consumer Lifecycle Activities
When selecting APIs, trust is an important consideration. Without trust, potential business partners will choose other alternatives or build their own solution. Team leaders must establish an environment where their team is the trusted provider of choice. When teams follow best practices, potential partners recognize competency and reduce their adoption trepidation.
Establishing a separation of concerns between API provider and API manager responsibilities encourages competency. An API provider is responsible for building, publishing, scaling and versioning the API. The API manager is focused on promoting and encouraging potential consumers to adopt the API. The manager analyzes usage patterns and determines how to best monetize the asset. A monetization strategy solve a perennial IT questions:
- Once I offer an API, what should be the show-back, charge-back mechanism?
- How do I actually perform investment re-capture activities?
Figure 2 diagrams API lifecycle best practices for API providers and API managers.
Figure 2: API Lifecycle Best Practices for API Providers and API Managers
In the Spring of 2012, WSO2 recruited beta customers for the new API management infrastructure offering, WSO2 API Manager. Â Ideal candidates for the WSO2 API Manager beta program included enterprise IT professionals who were planning or evaluating infrastructure to offer APIs to third partiesâ€”whether externally or within the organization. Â For more information on API Management or WSO2 API Manager, please visit the product Web site at http://wso2.com/products/api-manager and contact us at mailto:firstname.lastname@example.org to join the beta program.
WSO2 API Manager will enable enterprises to extend their data, processes and services out to customers, partners and other business units via APIs while providing the ability to secure, protect and monitor API resource interactions. WSO2 API Manager also will enable developers to rapidly find, subscribe to, and evaluate the APIs that enterprises make available. Using WSO2 API Manager, enterprises will be able to:
- Offer APIs to their customers and partners, as well as other internal users.
- Display and promote APIs in an API store
- Enable developers to sign up and subscribe to APIs.
- Collect usage, performance, and quality of service metrics to analyze and understand how APIs are being used.
- Use a policy-based approach to securing APIs, managing access, and throttling usage.
Re-invent your software delivery and re-invigorate your SOA initiative by implementing API Management best practices, adding WSO2 API Manager, and encouraging API adoption.