Posts Tagged ‘Enterprise’

Application Programming Interfaces (API) Enabling Business Innovation

Tuesday, April 20th, 2010

Just as the Graphic User Interface (GUI) revolutionized businesses in the ’90s, Application Programming Interfaces (API) are revolutionizing business in this decade. GUI enabled average users to interact with software with little or no technical knowledge. Now APIs coupled with cheap data storage and cheap broadband networks enable non-technical users to mashup data from various applications in near-real-time. For businesses, APIs now offer the promise of having the right information, at the right place, and at the right time to make real-time decisions.



APIs and the Era of Real-Time Businesses. Cheap data storage and broadband are empowering APIs to provide rich, real-time information to businesses. Businesses no longer need to be tied to cyclical decision-making waiting for weekly or even quarterly reports. Real-time APIs enable businesses to reduce their decision-making to real-time much like a fighter pilot makes decisions in a dogfight. A fighter pilot’s decision-making processes are totally focused on his real-time environment and his adversary, and not waiting for periodic information updates (see John Boyd’s OODA decision-making loop). Real-time APIs enable business to innovate and breakdown artificial barriers that create time-delayed information cycles.

Enterprise Information, Not Enterprise Applications. It is the data, the information, that makes the business and not the software application. Businesses are finding that their large enterprise applications are no longer providing a distinct competitive advantage as they did in the past. Businesses and their competition are now being driven to not just access their enterprise software, but they also have an increasing need to access web services, open-source software, Software As A Service (SaaS), and so on. Just having good business processes supported by a monolith enterprise application will not beat the competition. People (customers, business users, business partners) are looking for and expecting real-time data and new, innovative information services that can only be enabled by a mashup of applications that are enabled by APIs.

What exactly is an API? API are much like the power connection or network connection to your computer. APIs are hard to see, and most people do not notice them until they are not working. An Application Programming Interface (API) is an interface implemented by a software program to enable its interaction with other software. APIs are all about moving data (information) from one software to another. At its basic level, a API consists of a method of sending a data request to the API and a method to receive a data response back from the API. APIs can be fairly simple or complex involving many arguments, data definitions, and calling conventions. Additionally, API are present in most if not all programming languages and technologies to include Java APIs, web services, Windows API, Google Map API, and so on (see Wikipedia API for more information).

What Do APIs Do? APIs can do a lot of things. What is exciting about APIs today is that businesses can “mashup” data and immediately create new and enhanced information services just by masking up data. Examples of these mashups include real estate maps, comparative shopping applications, asset visibility applications, and so on. Prior to cheap data storage and cheap broadband, APIs were previously known to only to specialized programmers and some IT project managers. APIs were used to move data between various business systems and accounting systems, used to access software libraries, and to interface with various low-level hardware devices.

APIs offer businesses the capability to get the right data, at the right place, at the right time to enable business users to make superior decisions in real-time. Cheap data storage and cheap broadband enables new opportunities for businesses to use APIs to be innovative and remain competitive in the marketplace. More links on API trends: Providing an API to your ASP.NET Web Forms app – an introduction, The Truth about API’s – Need For an Open Service Definition, The Open API Economy, and QuickStudy: Application Programming Interface (API).


Back to All About Real-Time Data Networks.

Is Enterprise Software Killing Innovation?

Saturday, March 13th, 2010

The short answer is yes, enterprise software is killing innovation. Enterprise software in its day was innovative helping to automate enterprise business processes. Now enterprise software needs to go to a new level of openness and shed it proprietary nature. The Cloud or more features will not make enterprise software innovative again.



Definitions – Enterprise Standards Vs Innovative Changes.

Just by comparing the definition of enterprise software and innovation you can see that these definitions are at odds with each other. Enterprise software helps businesses to standardize and automate business processes across the enterprise versus innovation is about making changes to established business processes.

  • Definition for Innovate. The term innovate is defined as “to introduce something new; make changes in anything established”.
  • Definition of Enterprise Software. Enterprise software is defined as “software intended to solve an enterprise problem (rather than a departmental problem)”.

In the Beginning Enterprise Software Was Innovative. Enterprise software in its day (’70s – ’90s) was innovative. It enabled large businesses to standardize their Enterprise Resource Planning (ERP), Customer Relationship Management (CRM), and Supply Chain Management (SCM). See Enterprise Software Top 10 for more on history of enterprise software and which are the top enterprise software companies (2009) that include SAP and Oracle.

The Enterprise Software Innovation Challenge. Now, enterprise software is becoming more and more a bottleneck and even fatal for many companies by burdening these companies with high-maintenance costs and limited options for using IT to innovate. Enterprise software needs to evolve to a new level to leverage new technology innovations such as real-time web, mobile automation, social networking, cloud computing, open APIs, augmented reality, and so on.

The Need For Enterprise Software to have APIs at the Software Module Level. Is there any hope for enterprise software and innovation to co-exist? Yes, but enterprise software is going to need to evolve into something more modular with modular-level Application Programming Interfaces (API) that can interface with external applications. This will enable businesses that use enterprise software to be innovative and not be chained to one mammoth, hard-coded application that is supporting last year’s business processes. Innovation is focused on change to leverage new business opportunities. Enterprise software that is modular with open APIs enables businesses to innovate. With a modular, API-based architecture, businesses have the opportunity to cost-effectively use enterprise software modules in whole or in part to interface with other applications and software services that best meet the needs of the organization.

Will Enterprise Software as a Service (SaaS) Allow For Innovation? No, Enterprise SaaS by itself will not enable businesses to innovate. An enterprise SaaS offering by itself is just another “hard-coded” and proprietary application hosted by the software vendor instead of being hosted in customers’ data centers. In this case, the business is still harnessed with a mammoth enterprise application and it is at the mercy of the enterprise software company to add changes and add new software services. SaaS or a cloud-based enterprise software may offer cost savings and some flexibility, but it is not the “silver bullet” for enterprise software to support business innovation nor IT innovation.

Can Enterprise Software Just Add More Features To Allow For Innovation? The short answer is no, more features will not make enterprise software more innovative. Enterprise software by its nature is to encourage, automate, and enforce good business processes across departments, business units, and the enterprise. By adding and adding a bewildering number of features to the application, the enterprise software become too complicated to use and to support as well as increases the likelihood that organizations will pay for features that they do not use. Additionally, a bunch of bloated features enables untrained users and individual departments to use the enterprise software in ways that may be at odds with the goals of the enterprise as a whole. See Enterprise Irregulars posting, Enterprise Apps User Interface – the wrong discussion, about the pitfalls of adding features versus improve the process engine of enterprise software.

I like enterprise software and have supported it and interfaced with it for many years. At the same time, it is time for a change. Information technology is here to support better, faster, and innovative decision-making. Enterprise software is wrong when it just supports repeatable, worn-out business processes or burdens us with more and more bloated features that we will never use.