Having Access to Data doesn’t make your software “Smart”

5 minute read

A version of this post from The TAS Group’s Donal Daly originally appeared on Marketing ID.

There’s a frenzy in Silicon Valley right now around “smart” Software as a Service (SaaS) technology and predictive analytics. Everything from messaging solutions to the app you use to pay for your morning coffee is described as smart. But are they really?

Intelligent technology absolutely exists: There are hundreds of examples of software doing things faster, better and far differently than ever before possible, and tools like predictive analytics are a big part of that evolution.

As with all emerging areas, the problem is a lack of definition. Recently, when people say “smart” in the context of software applications, what they really mean is that the product uses Big Data from somewhere, in some way. But that’s not enough to make an application intelligent.


First, let’s draw a distinction between technology that simply interacts with data and truly smart technology: the former means your software has access to a dataset and delivers it to you; the latter takes that same data and adds meaning to it. Truly smart software puts information into context to help the user make better decisions or even make decisions on its own.

The difference ultimately comes down to three factors: knowledge, context and applied reasoning. It’s only when you view raw data through the lens of these three filters that you end up with something of actual value.

Data on its own is fallible. It’s hard to make sense of a massive dataset, and easy to get confused trying to identify patterns amongst the sea of incoming information. And that confusion isn’t limited to humans–computers are just as susceptible when their programming isn’t exactly right. One of the best examples of this problem is also one of Silicon Valley’s favorite topics: predictive analytics.


The biggest problem with predictive analytics is best illustrated by a sports example: Imagine a robot charged with making predictions about the future outcome of FIFA’s World Cup. Such a robot, armed with the power of predictive analytics, would inevitably arrive at the following conclusion: All future World Cups will be won by European or South American countries.

To you as a human being, this conclusion is obviously wrong. It is probable that an African or Asian country — or maybe even the U.S. — will win the World Cup in the near term. But given the current data, that’s what predictive analytics would tell us. That is the danger with drawing correlations from data without context or broader knowledge.

So far, there have been 20 World Cup final games, all of which have been won by a country in either Europe or South America. So with a dataset where n=20, if you were to test for the winning continent, the data would show a correlation that would predict all future winners would also come from Europe or South America. The historical data doesn’t account for the increased investment in soccer in the U.S. and other countries.

At this point, predictive analytics can’t differentiate between correlation and causation. They, alone, aren’t smart. If this were a scenario where the computer’s conclusion was less obviously incorrect — like in advanced business analysis — it could also be terribly misleading.

That doesn’t mean predictive analytics aren’t useful or can’t become smart, however. In conjunction with knowledge, context and applied reasoning, they absolutely can.


Let’s start by defining each of the components of the formula for smart, building from the most basic to the most advanced:

Data: This one is fairly self-explanatory: it’s the set of information your program has access to. The data in the example above would be the list of past World Cup winners and their continents of origin.

Knowledge: Knowledge here refers to domain knowledge — it’s what tells you the right questions to ask. Knowledge is what establishes the path forward in using your data.

Context: Context is an awareness of the reality surrounding your dataset. This is the first component of “smart” technology that’s missing in the soccer scenario. The robot wasn’t aware there were other continents participating in the games. Context can be difficult to apply to software, but it can also be absolutely critical. The only way to instill your software with contextual awareness is to program it in. That often means layering incoming data from multiple sources, so the end product has as much perspective as possible to perform its functions.

Applied Reasoning: Applied reasoning refers to taking one conclusion and then using it to form another. It’s the mechanical equivalent of the human logic process. Carefully developed smart software can take action based on its interpretation of data. For example, an application that tracks people’s dining patterns might automatically recommend restaurants in the area based on past behavior. That’s definitely smart.

Once you’ve identified each element of an intelligent application, you can put them together to do things worlds beyond supposedly “smart” data reiteration or simple predictive analytics. The more effort you put into building out the knowledge, context and applied reasoning components of your software, the more sophisticated your technology will become.

We’re only beginning to explore the incredible things software can do. Just like humans, not all technology is equally intelligent, but, also like humans, some of it can be simply incredible.

Reliable products. Real results.

Every day, thousands of companies rely on Upland to get their jobs done simply and effectively. See how brands are putting Upland to work.

View Success Stories