Come see us.Precocity LLC
3400 N. Central Expressway, Suite 100
Richardson, TX 75080
While the purpose of this post is not to discuss the breadth of all things related to digital transformation, it’s helpful to provide a common definition and describe typical outcomes used to gauge completeness and overall impact.
Digital Transformation is the process of changing an organization to more efficiently deliver and effectively utilize technology solutions with measurable value.
And while the specific targets of a digital transformation effort will vary across organizations, we see three common objectives that fit into the definition above:
One of the key tenets of our approach to digital transformation is what we call “Platform-Enabled Innovation”. This involves the development and adoption of reusable, and configurable technology components, patterns, processes, and methodologies that can be leveraged across the entire organization. This has the effect of enabling rapid delivery of innovation and business value at scale.
A key component of this Platform approach is “API-first” development. We’re going to explore how adopting API-first principles align with the objectives of digital transformation we described above. But first, to provide a bit of background, it makes sense to clarify what we mean by “API”.
Wikipedia provides a standard definition for Application Programming Interface (APIs) as “…a set of clearly defined methods of communication among various components”. In other words, they are the means by which a system allows other systems to retrieve or manipulate its data or to take action on their behalf. For our purposes, we will assume that APIs are based on the lingua franca of the web, HTTP, and utilize one or more of several common formats (e.g. RESTful, GraphQL, gRPC, Thrift, etc.).
Let’s explore how an API-first approach can help us achieve the three key outcomes of digital transformation.
As the standard mechanism for inter-system communication, APIs ease the burden of integrating two disparate components and foster the creation of a developer ecosystem. This is true for both internal-only and externally facing APIs. Via standards-based documentation and protocol support, they are the lowest common denominator with near ubiquitous support across products, tools, and programming languages. The net effect is that it’s easier to find engineers with the applicable skill set, and average developers can learn and be productive with minimal ramp-up time.
It also helps to contrast API-driven development with systems that only support traditional, batch “data shipping”. These legacy solutions are largely siloed systems that aren’t explicitly designed to communicate with external components. As a result, the default level of communication becomes direct database extracts. This is messy, fragile, and tends to involve replication of business logic and loss of semantic context typically applied outside of the database.
APIs, by design, focus first on the interface providing a layer of abstraction between the underlying implementation and how the functionality is exposed to a consumer. This offers many advantages. It allows for independent development for both producer and consumer using techniques like Contract-Driven Development. It also allows a system to offer multiple versions of the API allowing it to evolve without breaking any of its consumers. Lastly, it enables modern DevOps and deployment techniques that have become a staple of continuous delivery. These include canary and blue/greendeployments.
Lastly, as part of a well-developed platform, an API strategy allows the developer to focus on core business logic instead of plumbing. This is enabled via standardized integrations with monitoring, diagnostics, and troubleshooting tools. In addition, battle-tested security models can be quickly applied to ensure compliance and adoption of best practices around data and endpoint security.
The phrase “API Economy” has become commonplace in technical circles and in many enterprises. It stems from the notion that a platform based on APIs enables an organization to participate in a digital ecosystem. This ecosystem presents new opportunities for collaboration, monetization, and participation in new channels.
We’ve seen organizations across verticals use this strategy to create new product offerings and business models while expanding their reach into new and existing markets. We’ve seen tax software providers providing programmatic access to what has traditionally been “desktop only” software. Retailers are exposing services to their affiliates and partners to provide enhanced customer experiences. Healthcare companies are exchanging data in a secure and compliant manner to improve patient outcomes and increase operational efficiency. All of this is enabled by the creation of API-enabled platforms and services.
The means by which humans interact with technology continues to expand. Adopting an API-first strategy allows consistent and seamless adoption of new channels while leveraging a common base of business logic and providing a consistent experience. Mobile has become ubiquitous and we are seeing new interaction paradigms such as voice, chat, and wearables gain significant traction. Again, all of these are enabled by API-driven platforms.
Similarly, within the four walls of the enterprise, the API ecosystem is fostering innovation. By providing standardized access to key services, technical teams are able to move from being cost centers to value creators by synthesizing modular services in order to automate manual tasks, drive enhanced decision making, and improve overall operational efficiency. This can be done rapidly, independently, and without disrupting existing operations or systems.
We define a “data-driven organization” as one that relies on accurate, timely, and relevant data as the key driver in making both human-led and machine-led business decisions. This can be contrasted with a “data-informed” organization which uses historical data snapshots simply as an input to decisions largely made via human intuition. There are three key API-driven enablers that help organizations become data-driven.
One of the key tenets of being data-driven involves the use of timely data. While traditional batch data integration methods might run daily or even weekly, APIs and event-driven integration ensure up to the minute consistency across systems. We’ve successfully applied this pattern to give executives and store-based personnel in retail real-time views into sales performance. In the automotive industry, it has been used to provide customers with real-time notifications of their auto repairs.
As algorithms and machine learning techniques become increasingly accurate and powerful, there are opportunities to incorporate real-time, contextual data into machine-enabled decisions. This can be heavily leveraged in retail when a customer’s experience on the eCommerce site can be altered in real-time based on both current and historical behavior. Similarly, the same techniques can be used in a B2B setting to make on-the-fly adjustments to editorial content and recommended resources depending upon who is browsing the site.
Finally, by including context and business logic as part of the API, the underlying system can play its part in ensuring that the data provided by the service is both well-understood and used as intended. By providing a standard mechanism for documentation and ensuring all applicable business logic is applied upon interaction with the API, the producer can be assured that any consumer of the API will be served data that can be consistently interpreted and used throughout the enterprise.
We’ve shown how an API-focused platform strategy is a key enabler for each major transformation goal. More specifically, we believe that a modern platform approach enabling rapid innovation is a fundamental requirement for success, and that platform approach must include the transition to an API-first organization.
Digital transformation efforts are complex and unique across enterprises. If you’d like Precocity to help accelerate your transformation effort by helping with platform and API strategy, please contact us. We’d love to have a conversation.
Introduction Google Cloud Composer is a managed version of Apache Airflow that runs on a GKE (Google Kubernetes Engine) cluster....
The proverbial wagon is packed and your organization has decided to move on from the current, on-premise data warehouse. Perhaps...