An Artificial Intelligence Platform for the Enterprise

Bashir E
katella.ai
Published in
6 min readFeb 1, 2018

Artificial Intelligence (AI) refers to machines or software that are capable of performing functions that require human intelligence like understanding language or telling a duck from a goose. With the increase in computing power, rapid production and cheap storage of large amounts of data and advances in computer science, we are now able to build increasingly sophisticated intelligent systems that help automate and optimize various aspects of our lives from tagging our photos to driving our cars.

Business NOT as usual will be the new norm in the coming decades. For centuries businesses ran workforces with stringent processes and management structure to enable each person to work on the right thing at the right time to optimize business goals. You can imagine a future where those processes and orchestrations are done by AI powered systems that can objectively look through all the data about the business and individual employees and providing each with personalized insights and action plans and the right time to optimize goals and minimize human error.

The status quo. Let’s look at how some of the larger enterprise tech companies fair on the road to integrated artificial intelligence in the enterprise:

Salesforce’s Einstein has provided the giant’s CRM software with integrated machine learning like predictive lead scoring.

SAP’s Leonardo provides an AI services platform for enterprises to build against. SAP’s Copilot is a chatbot that handles some basic built in tasks like taking intelligent screenshots.

Oracle has implemented AI more deeply into its products with embedded analytics and simple models within existing products that offer some out of the box ML enhanced insights.

Microsoft’s investments have been on a consumer Bot assistant like Cortana and Azure AI platform services that can be utilized to build AI capabilities into applications.

What’s missing? The large IT companies due to their disparate business divisions and lack of a comprehensive AI/ML strategy have so far really only produced three directions:

  1. Application level ML features
  2. Basic Chatbots
  3. AI PaaS

What’s missing from enterprise intelligence strategy is an end-to-end look at enterprise apps and how employees interact with and across these applications to perform functions that elevate their company. At Katella, we took a comprehensive look at an Enterprise Intelligence strategy that instead of looking at point solutions, considers the entire dynamic ecosystem and insights as a layer with the following characteristics:

Uniform: At a typical company, one may need to interface with 5–15 enterprise apps in the course of performing one’s function. Each of these apps have their own unique interfaces, authentication and ways to query for data. In order to improve integration of a heterogeneous array of applications into higher value intelligence layer and help automate functions and inform consistently, uniformity of access removes the need for individual integrations and enables higher level abstractions to be constructed.

Example: ask Jira, Pivotal Tracker or Asana:
“show me all blocking tickets in the past 3 days”

While individual apps use JQL, custom keys search or APIs, you can uniformly interact with them without knowing the complexity and nuances of each application.

Composable: While each individual app may be great at enabling a particular function, like project management, the isolated interactions lack insights and data from other applications that are powering higher level initiatives. Composability enables discoverability. One can now derive insights across multiple applications and optimize business objectives.

Example: being able to ask:

“calculate next sprint velocity based on vacations”

While you could ask your project management software for your team and workload, only your calendaring system or HR system knows who is out of the office. When you can compose applications, you can answer questions that previously you had no way of arriving at answers for

Insights Augmentation: While interactions with enterprise apps are designed to basically execute commands and accomplish specific tasks, if those same tasks are now augmented with insights, they may enable the user to make better informed decisions or automate the function to optimize efficiency and impact. This, just in time delivery of insights to the right person can really improve productivity and impact.

Example: answering a customer service ticket and receiving the insight:

“34 other customers have asked similar questions. Would you like me to automatically answer these questions with your answer?”

Actionable: While informing people has a good feel to it, what really moves the needle is delivering actionable insights to help guide the users to an action in the real world that makes impact. Strategies that stay focused on actionability of insights are destined to make the most impact.

Example: guide users to actions on insights

“The following ticket has been open for 3 days. Would you like me to A. Ping the owner B. Open ticket C. Close ticket”

Secure: The enterprise applications often contain very sensitive information and building any layers on top of this data requires a comprehensive and built in security framework from the start. The goals will be to minimize surface area for leaks or exploits and enforce all built in data access rules/policies for the enterprise.

Architecture for an Enterprise Intelligence Platform:

Katella Enterprise Intelligence Platform

When we started building Katella, we wanted it to be configurable, composable, extensible and secure. Let’s look at how the Katella platform delivers on all the requirements of a versatile Enterprise Intelligence Platform.

Application Adapters: There are many ways of communicating with enterprise applications. Some are cloud based and some are hosted inside the enterprise and some still may be home brewed applications. With Katella we wanted to be able to connect and interact with all three of those application deployments. The Adapters layer deals with various installation and authentication methods and is configurable for specific applications. Now if we need to integrate a new hosted application with LDAP authentication or another cloud based oauth application, we need only configure those applications.

Configurable UI: Another big aspiration for us was to build a platform that is configurable and does not require any line of code written to add new skills. Skills are basic capabilities that execute some commands/APIs with target applications. We built skills as both configurable and composable. One can simply go to the management console for Katella and create a new skill (say order uber to work when one says “car”). Skills may be composed as well through the UI.

Composable Skills: This is an architecture feature that to our knowledge no one else (Alexa, Google Home, etc) even has. It is the ability to compose skills. Through the Katella UI, you can simply create a new skill (“cost of a point”) that can combine three other skills, one being (“total story points delivered in the last month”) retrieved from Pivotal Tracker and another being the (“salary cost for my team”) that connects to BambooHR for team and salary information and last one being (“how many days of PTO did my team have last month”) that connects to Google Calendar and retrieves PTO days from the PTO calendar.

Executor: is the orchestration and federation engine that fully resolves each skill and its dependency chain as well as orchestrate scheduled events and broadcast responses to multiple consumers.

NLP engine: Our own natural language processing engine that has better understanding of enterprise dialogue patterns and jargon. It’s main function is using machine learning to improve the accuracy of mapping of NLP requests to intents.

Client Adapters: Katella platform is designed to be input modality agnostic and we’ve built client adapters to receive natural language inputs from chat apps like Slack and Microsoft Teams or receive commands/apis from web browsers or mobile applications. This allows Katella to be both a client or integrated into the enterprise application ecosystem and power other services.

Streaming Insights Derivation Engine: As part of the security by design implementation of Katella, we built the intelligence platform as a streaming service so we would never store or cache enterprise data, leaving no traces behind. This pipeline receives passive data from each executed intent and analyzes it for insights that can be pushed to the client. It starts by resolving entities in the data and augmenting the data with other intents if necessary. The resolved entities are then turned into feature vectors for ML analysis. The models are run on the data stream and potential insights are then produced that may invoke other intents for actions to be taken or the client informed.

Enterprise Companies of the Future will be powered by artificial intelligence enhanced automation and actionable insights to highly productive employees who are more fulfilled as the repetitive tasks are automated by bots and agents leaving them to attend to high function, high impact initiatives. We are confident that the automation and transformation engine of the future enterprises will have the ability to build a uniform and exchangeable flow of data, insights and actions that power the employees with the right insight or automation at exactly the right time. We built Katella with that vision in mind and cannot wait to enable people to thrive.

--

--