• Minimum Viable API Architecture

    Minimum Viable Architecture is a set of design principles which is very suitable for APIs, microservices and API management as it is designed for different stages of growth and maturity.

    1

    Prototype

    Use when building a new API

    2

    Build Just Enough

    Use when building a new API for few consumers

    3

    Scale

    Use when existing API has growing number of consumers

  • The Phases

    Minimum Viable API Architecture consists of Prototyping, Build Just Enough and Scaling -phases

    Prototype

    Use when building a new API

    • Do not code, create only executable definitions (like OpenAPI).

    • make it easy to change plans with

    • Concentrate on information architecture and interface design.

    • Add only the endpoints and fields you absolutely are sure that are needed for the first consumers. If there is no clear answer whether something should be added, leave it out. It’s better for versioning, no one will start using it and depending on it and changes are kept to a minimum later.

    • Design with the API Audit criteria in mind, using style guide as your guideline.

    Build Just Enough

    Use when building a new API for few consumers

    • Nothing is built “Just in Case”

    • Use only components you know and have easy access. Stick to familiar architecture. When risks are small designs don’t have to be heavy and perfect.

    • Customer needs can evolve while building, with an as small budget as possible

    • Meet customer need in a few hours or days, not in months.

    • Do NOT think about scaling.

    Scale

    Use when existing API has growing number of consumers

    • Scale your architecture with the growing business

    • Optimize

    • Cache

    • Trust that something will break, make sure you are fall tolerant but only as much as the business is really willing to pay for.

    • See more detailed list for Scaling -phase

  • What is the Minimum Viable Architecture?

    Why is the MVA architecture chosen for this method

    The MVA (Minimum Viable Architecture) approach is usable for any architecture design process.


    Each Phase of MVAA goes through the entire APIOps Cycle. Development from here on goes in cycles and is iterative.

     

    One of the key elements in Agile methodologies is Minimum Viable Product. MVP is a product with "just enough" features to satisfy early customers.

     

    When they see and can try the MVP, they can give feedback for future development. Minimum Viable Architecture has a similar idea.

     

    Designing architecture so they can be prototyped and built fast. The sooner the consumers get to use the API the faster you discover the real requirements.

    See how to collect architecture requirements - in the APIOps Cycles way!

  • Scaling -phase in more detail

    1. Any peak times coming in near future?

    2. Are the non-functional requirements changing, for example, allowed downtime? Response times? New users from far away?

    3. Growing concurrency brings new bottlenecks to the architecture, load test first and monitor existing production, design improvements after that.

    4. Growing number of APIs need more teams and team members.

    5. API management needs to have more fine-grained user roles and separation.

    6. APIs and micro-services need more decoupled modules that can be scaled and developed independently.

    7. API design and information architecture need to be designed from the scalability point of view. For example, different customer segments or customers from different countries require different API features.

    8. Think about separation, not centralization all through, even in databases and Identity management, authorization and access management.

    9. Start with a load balancer and 1 run-time node, this way more nodes can be added easily.

    10. Consider when and how to do caching, fail-saves etc. but don’t implement them before they are actually needed, just know you can.

  • Related resources

    See detailed instructions on how to use the APIOps Cycles templates for collecting API architecture requirements with business people. They speed up the process and make it more collaborative.

    REST API Style Guide

    How should you design the actual API interfaces? See this guide if you are designing a REST API.

×
Privacy policy
SECTION 1 - WHAT DO WE DO WITH YOUR INFORMATION?
When you browse our website, we automatically receive your computer’s internet protocol (IP) address in order to provide us with information that helps us learn about your browser and operating system. 

With your permission, we may send you emails about our site, new services, events and other updates.
SECTION 2 - CONSENT
How do you get my consent? 
When you provide us with personal information to complete a transaction, verify your credit card, place an order, arrange for a delivery or return a purchase, we imply that you consent to our collecting it and using it for that specific reason only. 
If we ask for your personal information for a secondary reason, like marketing, we will either ask you directly for your expressed consent, or provide you with an opportunity to say no.
How do I withdraw my consent? 
If after you opt-in, you change your mind, you may withdraw your consent for us to contact you, for the continued collection, use or disclosure of your information, at anytime, by contacting us at [email protected]
SECTION 3 - DISCLOSURE
We may disclose your personal information if we are required by law to do so or if you violate our Terms of Service.
SECTION 4 – SERVICE PROVIDERS
Our website is hosted on Strikingly Inc., a Delaware, US based company. They provide us with the website platform including the subscription and web form data you submit to us.
Your data is stored through Strikingly’s data storage, databases and the general Strikingly application. They store your data on a secure server behind a firewall. More information can be optained from their Privacy policy https://support.strikingly.com/hc/en-us/articles/214364818 
We use Google’s application suite for email, documents and calendar and Campaign monitor for sending email campaigns. We only allow dedicated personnel to get access to these systems. Emails sent to our general email [email protected] are also stored in PlanMill, our ERP system, for customer service and archiving.
SECTION 5 - THIRD-PARTY SERVICES
In general, the third-party providers used by us will only collect, use and disclose your information to the extent necessary to allow them to perform the services they provide to us. 
However, certain third-party service providers, such as payment gateways and other payment transaction processors, have their own privacy policies in respect to the information we are required to provide to them for your purchase-related transactions. 
For these providers, we recommend that you read their privacy policies so you can understand the manner in which your personal information will be handled by these providers. 
In particular, remember that certain providers may be located in or have facilities that are located a different jurisdiction than either you or us. So if you elect to proceed with a transaction that involves the services of a third-party service provider, then your information may become subject to the laws of the jurisdiction(s) in which that service provider or its facilities are located. 

Links 

When you click on links on our store, they may direct you away from our site. We are not responsible for the privacy practices of other sites and encourage you to read their privacy statements.
SECTION 6 - SECURITY
To protect your personal information, we take reasonable precautions and follow industry best practices to make sure it is not inappropriately lost, misused, accessed, disclosed, altered or destroyed. 

SECTION 7 - COOKIES
You are asked separately for accepting cookies on the site.
SECTION 8 - AGE OF CONSENT
By using this site, you represent that you are at least the age of majority in your state or province of residence, or that you are the age of majority in your state or province of residence and you have given us your consent to allow any of your minor dependents to use this site.
SECTION 9 - CHANGES TO THIS PRIVACY POLICY
We reserve the right to modify this privacy policy at any time, so please review it frequently. Changes and clarifications will take effect immediately upon their posting on the website. If we make material changes to this policy, we will notify you here that it has been updated, so that you are aware of what information we collect, how we use it, and under what circumstances, if any, we use and/or disclose it. 
If our store is acquired or merged with another company, your information may be transferred to the new owners so that we may continue to sell products to you.
QUESTIONS AND CONTACT INFORMATION
If you would like to: access, correct, amend or delete any personal information we have about you, register a complaint, or simply want more information contact our Privacy Compliance Officer at [email protected]
-----