Self-driving enterprise software

By using advanced technologies within pattern recognition, machine learning and computer aided decision support systems, as well as new IoT devices, software can make automated decisions on behalf of the user, or provide guidance to allow users to make intelligent decisions based on smart patterns. This is achieved through self-learning software that assumes actions based on previous or similar scenarios and uses that to pre-populate and self-drive.

Interaction with the software is minimized to only involve people when human intelligence and experience is critical to resolving a business issue or to drive business processes in the right direction. If user interaction is required, a UI will be provided in its simplest form to accommodate that, on the users preferred device of choice, intelligently adapted to the situation.

Incredible value can be derived by limiting the amount of manual input required by users so they can focus on serving customers. This is the future of business software.

What is self-driving enterprise software really about?

In a nut shell self-driving enterprise software is literally about creating software with which the user does not need to interact, or at least interaction is minimized. The reality is that the majority of the interactions users have with their enterprise software is administrative. It’s not about doing their job well or running their business but simply maintaining the mechanics of sending invoices, doing bookkeeping or filing expense reports.

All these mechanic interactions can be tracked, analyzed and fed into algorithms so the software can learn typical usage patterns within a specific context whether that’s procurement, invoicing, bookkeeping or expenses. Through pattern recognition and statistical analysis the software can “learn” typical user actions in specific situations and automate the expected action in the future.

Analyzing past interactions will allow us to construct more semi-intelligent solutions. Solutions that dynamically alter behavior based on previous interactions, decisions and user actions. There are a number of different aspects to self-driving software.

Adaptive UI

The fundamental idea of adaptive UI is, as the name suggests, UI that intelligently adapts to the user based on previous interactions. In today’s enterprise software, forms or screens typically contain many fields that need to be filled out by the user. Some fields are linked with other fields, and there are even hard dependencies meaning that if a certain field has a specific value, others need to be populated exactly right for the system to accept the data as a whole. As a causal user simply entering a purchase order it can be a horrifying experience – regardless of how nice the UI looks. The adaptive UI records everything the user is doing, when he or she is doing it and in what order. If a user always populates a specific number of fields with the same values it can do that automatically. Even better, if some fields are always left untouched – they can be removed dynamically from the UI to make it less ‘noisy’ or confusing. By removing un-used fields, and populating everything automatically based on previous interactions – the system can complete the task on the user’s behalf. For example, if someone orders A4 binders on every second Monday from the same vendor, the system might as well just do it.


Normally business processes require user interaction for approvals. A manager needs to approve a request for a new laptop from one of his reports for example. If the manager in question always approves requests within certain criteria, most commonly the price, the system can give that approval and notify the manager it’s been done.

Historical and Current Data

What I’ve discussed above is all based on historical data; however, using aggregation of historical and current data – like your present location software has the ability to automatically populate travel expenses, field service work reports, and even suggest additional maintenance work do be done as part of a field service visit.

Some examples of where self-driving ERP will add significant value:

Expense Reports

Expense reporting is a great example of an administrative task that lends itself to self-driving software. In the future systems will automatically create line items in an expense report based on the scanning of a receipt. By extracting the address the system can gauge what the item is and based on the time know if it’s breakfast, lunch or dinner. Essentially populating the complete line. Rather than having to store the receipt, go into the system and enter expense type, date, amount, all the user has to do is photograph the receipt.

Field Service

Within field service, systems can schedule maintenance visits for equipment based on the previous maintenance of similar equipment at other customers. Also, if a visit is already planned, it may prove more economical to – pro-actively – service other equipment while already on-site.

The future is here

Previously analyzing massive amounts of data was expensive due to the amount of data storage and computational power required. However, due to ever decreasing prices on storage and CPU, running advanced algorithms becomes more accessible enabling inclusion of semi-intelligent agents into a vast majority of the functionality within enterprise software. Customers will benefit from being able to focus on running their businesses and serving their clients rather than the tedious mechanics of maintaining the ERP.

This is why we focus on developing enterprise software that allows customers to focus on their business instead of focusing on the software, by making it completely self-driving. We’re already starting to deliver this in our software.

How to Predict next Disruptive Technology

On a very lazy Saturday I was pondering about what eventually could be the next great disruptor within technology, that I could lash onto and be among the first movers. But how would anyone be able to predict that? One of natures hard questions – I guess. I quickly dismissed the idea of dreaming something up myself in hope that whatever irrelevant thought I came up with, would end up taking over the world, and commenced a small research project looking at recent disruptive innovations within the technology space to see if I could spot a trend.

As a starting point I listed the technologies or shifts that have had most profound impact on our lives and also caused disruption in existing business. The first game changer was the rise of the personal computer – 1970ish –  exactly when depends on the definition of PC, carving the road for affordable computers. The second one was the internet on which web browsers (1990) was based, personally the biggest game changer here was the web browser and the ability to move from client/server to hosted solutions. Third was the iPhone (2007) which revolutionized mobile phones. The fourth one is cloud computing, hard to determine exactly when cloud computing started getting real traction, but a suggestion would be 2006 where Amazon launched Amazon Web Services.

Listing the above 4 disruptive technologies wasn’t hard. But how would anyone determine whether or not any of these in fact would take off, and become real disruptive technologies and major game changers? Well, after doing some research on the internet using my web browser I found a number of quotes relating to each of the above.

Personal Computer

  • “But what…is it good for?” — Engineer at the Advanced Computing Systems Division of IBM, 1968, commenting on the microchip. Included this one as the microchip and Personal Computer goes hand in hand.
  • In 1977, Ken Olsen, CEO of DEC, said, “There is no reason for any individual to have a computer in his home”.

Internet/Web Browsers

  • In 1995, Robert Metcalfe, founder of 3Com, inventor of Ethernet, said, “I predict the Internet will soon go spectacularly supernova and in 1996 catastrophically collapse”
  • In 1993, Bill Gates, CEO of Microsoft, said, “The Internet? We’re not interested in it.”
  • Newsweek wrote in 1995, “The Internet is just a fad.”


  • In 2007, Steve Balmer, CEO of Microsoft, said, “”There’s no chance that the iPhone is going to get any significant market share. No chance.”
  • In 2007, David Platt, Author, said, “The iPhone is going to be a bigger marketing flop than Ishtar and Waterworld.”
  • In 2007, Seth Porgess, TechCrunch columnist, said, “We predict the iPhone will bomb.”
  • In 2007, Al Ries, Marketing Consultant, wrote an article, “Why the iPhone will fail.”
  • In 2007, Brett Arends, Financial Writer, said, “The iPhone isn’t the future.”
  • In 2007, Todd Sullivan, Investment Advisor, said, “The iPhone: Apple’s first flop.”
  • In 2007, Mitchell Ashley, IT executive, said, “The iPhone is certain to fade into history.”
  • In 2007, John Dvorak, MarketWatch columnist, said, “Apple should pull the plug on the iPhone.”

Cloud Computing

There’s tons of related information all, in more or less degree, dismissing the above mentioned truly disruptive technologies. The question, though, how to predict what’s the next great thing still persists and how can the above help? Well, it seems that the likelihood a new trend, technology or shift taking hold and developing into a disruptive innovation is proportional with the amount of bashing from technology pundits, and companies that risk their business models to be disrupted by emerging innovations.

Relating that to my current area, ERP, then there’s been a couple of disruptive shifts towards cloud based solutions and lighter clients – responsive web design. The new comers primarily focus on providing cloud based solutions other on-premise installations. However, by taking into the considerations the recent development in BYOD and increase of youngsters only using mobile devices, in some cases not even owning a PC, it’s very probable that the next disruption of the ERP space, that can threaten the incumbents, is a combination of a cloud based solution and mobile clients.

#erp #cloudcomputing #mobile #disruptive #predictions

The Future of Software Development

It’s becoming more and more clear that monolithic applications are going the way of the Dodo. With the general adoption of smart-phones, tablets computers and social network portals users starts having an expectation that information is available anytime anywhere. Users simply don’t want to deal with booting up a desktop or laptop, login into an application, go to the right place to get the information. Its time consuming and inflexible. Users want seamless integration of essential data and information into their preferred social media sites and mobile devices.

What does this mean to the ISV that produces traditional applications? Well, if these ISV’s don’t start reconsidering their development strategy they risk facing the same fate as the Dodo. Actually, already now companies without a clear social media and mobile strategy are considered dated by the younger generation of users. New tech savvy users milling out from the universities and colleges look and evaluate companies on what strategy they have, and if a company allows them to work on cool stuff or at least there’s the potential to work on cool stuff. Hence, it becomes a huge challenge for ISV’s to recruit new young talent, especially the better students will prefer companies with a strategy that embraces mobile computing at the core.

And this is only the development side of it. Think about it, in the near future the next generation of users will also become part of the decision making process at the customers of the ISV’s. Making it a huge challenge for software vendors without sufficient presence in the mobile application market, to sell their solutions. There’s a huge risk, and in some situations, this is already the reality where a missing mobile strategy or adequate integration into social media sites disqualify a vendor in the initial phases of the buying process of new software systems. Personally I believe this will become an even bigger problem in the near future.

What’s interesting is that most ISV’s have the opportunity to actually provide interesting applications to their customer base, as they got years of data and experience in collecting data. They have a solid foundation for extending their offerings to include mobile and other interesting lightweight applications that can access the data and present it into different portals. Portals of the choice of the users.

ISV’s should focus their development efforts more on how to expand the usage to the casual users instead of the power users. Power users will continue to use traditional clients on their desktop or laptop, as they need high speed processing of huge amount of data. However, the casual user of the future doesn’t want to deal with these types of clients. They want immediate access to data on their preferred device.

Note that it’s not just about providing data and information but also about having lightweight applications for handling processes. Users will more and more be looking for applications that essentially do the work for them, and users only need to validate that the proposed action is actually the right action. Like flying a plane, the pilots really don’t do much anymore, they monitor that the software actually does it right, and they only intervene if a unique situation arises that requires manual intervention. That’s how all software involving processes should work in the future.

For us as developers this means that we also need to embrace the technologies and start extending our skill-sets to include mobile computing as well as portal computing (like web parts). Just as the ISV’s we can’t keep relying on our existing knowledge on building n-tier or more traditional client/server solutions. We need to start thinking in total distributed computing, multiply number and diverse data sources. We need to change as well; otherwise, we risk the same fate as the ISV’s – that our skills risks being inadequate for doing software development in the future.

#programming #light #apps