Unlocking Business Value Through APIs: A Business Analyst's Perspective
Understanding the importance of user stories in API development and focusing on user requirements is crucial for successful API projects. This article discusses various aspects of API development and shares insights from business analysts’ experiences at Mayven Studios.
API Categories
APIs can be categorized into two main types: Private APIs and Public APIs. Private APIs serve internal business purposes, while Public APIs expose business capabilities to external entities.
Private API
When working on private APIs, it’s essential to avoid a technology-first view and focus on desired business capabilities. For example, rewriting a developer-centric story to emphasize business needs helps create better alignment between the API and its intended purpose. Embracing concepts such as YAGNI (You Aren’t Gonna Need It) and the Tolerant Reader Pattern helps ensure that private APIs remain flexible and adaptable to changing business requirements.
Public API
Developing public APIs requires a deep understanding of the underlying business needs and motivations. Examples of successful public APIs, such as those offered by well-known companies, demonstrate clear messaging and branding. In public API projects, the role of business analysts involves helping the development team focus on meeting the needs of the target audience.
- Examples of very popular public APIs:
- Google Maps API: Allows developers to integrate maps, geolocation, and other geospatial services into their applications.
- Twitter API: Provides access to Twitter’s data, including tweets, user profiles, and trends, enabling developers to build applications that interact with the platform. This is a notorious example as Twitter has gone back and forth on restricting access to their API, making it difficult to rely on over time. Don’t be like twitter!
- Stripe API: Offers a suite of APIs for handling online payments, subscriptions, and managing customers in e-commerce applications.
- Spotify API: Allows developers to access Spotify’s music catalog, playlists, and user data for integration into web and mobile applications.
Analysis Tools
Domain Modeling and Event Storming are valuable analysis tools that help in identifying business-truthful APIs. These tools can drive out needs for extending communication to events and messages, ensuring that APIs are aligned with real-world usage.
- Domain Modeling is a technique used to create a visual representation of a problem domain, which includes the main entities, their relationships, and the business rules. It helps in understanding the system’s structure and requirements.
- Event Storming is a collaborative workshop technique where participants from various disciplines come together to explore complex business domains through events. It helps to identify key events, commands, aggregates, and read models, which can then be used to design and implement a system.
Using Epics to Track Business Value
Epics play a crucial role in tracking business value throughout API development. Aligning epics with business flows, measuring velocity through completed epics, and collaborating with product owners to prioritize epics ensures that APIs deliver maximum value.
Epics are large, high-level units of work in agile project management that encompass multiple user stories or tasks. They often represent significant features or functionality in a software project and can be broken down into smaller, more manageable user stories for implementation. Epics help teams to organize, prioritize, and track progress on large-scale initiatives.
API as a Product
Recognizing the importance of developer experience in API development is vital. By extending skills to product management and technical non-functional requirements management, business analysts can help ensure that APIs offer a delightful developer experience and are truly user-centric.
Examples of API as a product:
- Twilio: A cloud communications platform that offers APIs for voice, SMS, video, and other communication services, allowing developers to build applications with integrated communication features.
- SendGrid: An email delivery service that provides APIs for sending, receiving, and tracking emails, enabling developers to easily integrate email functionality into their applications.
- Algolia: A search-as-a-service platform that offers an API for developers to build fast and relevant search experiences in their applications.
- Plaid: A financial services API that allows developers to access and analyze users’ financial data, enabling the creation of applications for personal finance, investment, lending, and more.
API Strategy
A successful API strategy balances business-driven user stories, API and service management architecture, and API as a product considerations. An effective API strategy exposes high-value business capabilities, provides a delightful developer experience, and stays true to the business.
User stories play a critical role in a successful API strategy. By bringing user stories to the forefront of API projects, APIs deliver maximum value to both internal teams and external partners. Adopting an ‘API as a product’ approach and focusing on user needs leads to APIs that drive businesses forward and help clients succeed.