API: The Unsung Hero in Technology – Chizaram Mbachu


Surprised by the title? Well, that is the simplest way to understand the role of APIs (Application Programming Interfaces) in technology. As a technical business analyst, understanding APIs can seem daunting. You might find yourself asking:


What do I need to know about APIs?


How do I elicit requirements around APIs?


Let me explain based on my experience.


Understanding APIs Through an Analogy


Imagine you are at a restaurant with your family. You are sitting at the table with a menu full of delicious options. The kitchen is where the food is prepared, but you cannot go there directly to tell the chefs what you want. Instead, a waiter takes your order and communicates it to the kitchen. Once the food is ready, the waiter brings it to your table.
In this scenario, the waiter is like an API. Just as the waiter helps you communicate with the kitchen, an API helps different software applications talk to each other and exchange information. You can think of an API as a helpful messenger that delivers information between different software applications.


Real-World Example: Amazon


For more context, consider what happens when you place an order on Amazon. There are two main systems at work. One is the Ordering System that handles the process of you choosing a product and making a purchase. The other is the Delivery Update System that tracks your order and sends you updates about when your parcel will be delivered. Even though the Ordering System and the Delivery Update System use different technologies, they can communicate and work together seamlessly with the help of APIs.


This is the power of APIs – they allow different systems to communicate and share information, enhancing our online shopping experience.
The Role of a Business Analyst in API Projects
Now that you have a basic understanding of what APIs are, your next question might be: as a Business Analyst, what requirements do I need to gather from my stakeholders in relation to APIs?
As a Business Analyst, one’s role involves bridging the gap between stakeholders and technical teams. When it comes to APIs, here are some key requirements to focus on:


Functionality Requirements: Understanding what functionalities the API needs to provide. This includes the specific tasks it should perform and the data it needs to handle. For example, if an API is designed to retrieve customer data, it should be able to handle requests for customer details, order history, and preferences.


Performance Requirements: Determining the performance metrics that the API must meet, such as response time and availability. High performance is crucial for ensuring that the API can handle a large number of requests without delays, providing a smooth user experience.


Security Requirements: Identifying the security measures that need to be in place to protect data and ensure secure communication between systems. This includes implementing authentication, authorization, and encryption to safeguard sensitive information.


Compliance Requirements: Ensuring that the API complies with relevant industry standards and regulations. This might involve adhering to data protection laws, such as GDPR, and following best practices for API development.


Documentation Requirements: Gathering requirements for the documentation that will accompany the API, including usage instructions, examples, and troubleshooting guides. Comprehensive documentation is essential for developers to understand how to use the API effectively.


Best Practices for Working with APIs


To ensure that the APIs developed meet the needs of stakeholders and contribute to the overall success of development projects, here are some best practices to follow:


Clear Communication: Maintain open lines of communication with both stakeholders and technical teams to ensure that requirements are clearly understood and met.


Iterative Development: Use an iterative approach to API development, allowing for continuous feedback and improvements. This helps in identifying and addressing issues early in the development process.


Testing and Validation: Conduct thorough testing and validation of the API to ensure it meets all functional, performance, and security requirements. This includes unit testing, integration testing, and performance testing.


Version Control: Implement version control for the API to manage changes and updates effectively. This ensures that different versions of the API can coexist without disrupting existing integrations.


Monitoring and Maintenance: Set up monitoring and maintenance processes to ensure the API remains reliable and performs well over time. This includes tracking usage metrics, identifying potential issues, and applying updates as needed.


In all, APIs may be the unsung heroes of technology, but their impact is undeniable. By understanding and effectively gathering requirements around APIs, business analysts play a crucial role in leveraging their power to create seamless, efficient, and innovative solutions. APIs enable different systems to communicate and share information, enhancing user experiences and driving business success. As a Business Analyst, the focus on functionality, performance, security, compliance, and documentation ensures that APIs meet the needs of stakeholders and contribute to the overall success of development projects.


By following best practices and maintaining clear communication, a business analyst professional can help bridge the gap between stakeholders and technical teams, ensuring that APIs are developed effectively and efficiently. In doing so, one contributes to the creation of robust, reliable, and scalable solutions that drive innovation and success in the ever-evolving world of technology.


Chizaram Mbachu, a certified Business Analyst, writes from London, United Kingdom. She would love to hear your thoughts at mbachuzara@gmail.com

Related Articles