As you grow the number of APIs (+ services and events) in your enterprise, the complexities surrounding them grow too. In this post we’ll be sharing insights from our recent webinar on how to capture and manage API complexity. You can watch the full on-demand webinar here.
Being Complicated isn’t Cool… but it’s an innate part of being a large enterprise
Being digital in the enterprise means being reliant. Reliant on internal and external providers of functionality, on back-ends that aren’t always built for nice front ends, on planned and unplanned changes. It becomes complex. But managing that complexity correctly accelerates becoming an API-centric organization.
As a large enterprise, you’ve likely built-up layers of digital complexity over time. When we’re talking about digital complexity, we mean everything that powers the frictionless and consumer-focused world of digital products and platforms – all the APIs, and all the complex IT systems, data and processes, relationships and dependencies that are below the elegant consumer experience. We recently created a takeaway piece to deep dive into the nature of digital complexity in enterprises, the questions you should be thinking about, and how to know if you’re managing it successfully – you can download that piece here.
Managing Complexity starts with being able to capture it. In our enterprise service architectures, it can be quite difficult to incapsulate the Designs, Builds, and Deployed APIs (plus services and events) that exist across Business Units, App teams, and the Organization, but that’s just the tip of the iceberg.
We then need to consider the many layers of Process, Documentation, Versions, Metadata, and Rich Technical detail that is stored… “well… I know we store it somewhere” or across the many Repositories, Runtimes, and Gateways we have.
So now that we know we have to capture and manage complexity at scale in our enterprise, how do we actually do it? We’ve identified 6 key tactic areas for success.
Tactic #1: Creating a Holistic View of all APIs, Services, and Events
The first stop on this journey is obtaining a Holistic View (and a single source of truth for APIs).
We’ve got years of hard work running out there for our Customers, Partners, and Internal Teams. It’s time to bring our mess into a single unified view, so we can begin enabling Search and Discovery, and leverage it to build new value and new experiences.
To employ this tactic effectively we need to:
- catalog all our APIs, Services, and Events
- surround them with rich metadata in a consistent way
- bring in our Taxonomies and Information Models that we use to establish and understand the hierarchy of our Business and Products and the areas they serve
- link APIs, Services, Events and Documentation in our Design, Specifications, and Methods to Taxonomies, and classifying them so that we can see our Coverage and Gaps
Tactic #2 and #3: API and Data Lineage & Mappings
We can use Lineages and Mappings as their own objects to establish relationships between services that, much like our Taxonomies, allow us to get clear visibility into our architecture.
Lineages allow us to define how our APIs, Services, and Events work together through Provider and Consumer Relationships. Mappings meanwhile, enable us define the Sources and Targets for our Payloads.
To employ these tactics effectively we need to:
- Record provider/consumer relationships at the Design, Specification, and Method level as lineages
- Record all the data transformations for our APIs as mappings
- Bake lineage and mapping into the same place as our single source of truth.
Tactic #4, #5, and #6: API Versioning | Change management | Governance
Where’s my Change Management hat?? Oh, there we go! When it comes to enacting change and empowering our Leadership, Business Analysts, Product Owners, and Developers to create it, we must consider our Process around Versioning, Change Management, and Governance. The enterprise has various guardrails, workflows, approvals processes, and standards that must be adhered to.
To employ these tactics effectively we need to:
- Implement robust versioning (and tracking thereof): including supporting versions of multiple architectural styles for a service (e.g. SOAP, REST, Avro, GraphQL) under a central Design
- offering developers a way to safely build out new iterations – without risking or compromising Production Services
- Insure, verify, and protect our API, Service, Event assets through access control rules
- Automate and enable self-service governance and standards, aligning assets to our enterprise governance model (more on that in our Overthrowing The Governance blog.)
Implementing these 6 tactics may seem a challenging ask, but there are solutions that can help. During the webinar (download here), we demonstrated these key areas of capturing and managing digital complexity surrounding APIs at scale using our ignite platform.
Abstracting Away & Demystifying the Catalog with the ignite platform
ignite’s Holistic Catalog has been developed to give the Enterprise a single source of truth for Designing, Building, and Deploying services. ignite has a unique ability to capture and manage API complexity around the full depth of these services, peripherals, and how all are interacting. Furthermore, baking in Security, Versioning, Change Management, and Governance empower Business Units to move, and quickly. All this while remaining in accordance with enterprise-wide standards.
ignite then abstracts this information so that Leadership, Business Analyst, Product Owners, and Auditors are given all the details needed to understand or drive change in the business. The Result is a Demystified Service Architecture that can be viewed through the many unique lenses of our Enterprise becoming the catalyst!
See this blog in action – check out the webinar recording now!