Since its founding over 20 years ago, our firm
has been investing in enterprise applications companies. Throughout this
period we have invested in every major application platform: client/server,
e.g., Epicor, multi-tier Web-based, e.g., Webify, and SaaS, e.g., Host
Analytics. These days, while the adoption of SaaS applications is increasing, the broad consumer
adoption of smartphones and tablets, as well as of other connected specialized
devices that are part of the Internet of Things,
is driving corporations to accelerate their mobile enterprise application
strategies. As a result, enterprises are
starting to mobilize existing applications and embrace a mobile-first approach for the new applications they are licensing or developing
internally. This approach is leading to
the emergence of mobile as the application platform.
Previous enterprise application platforms and
their associated architectures were created in order to enable the development
of applications that automate complex business processes. The typical enterprise application (internally
developed or third-party) tends to have a large footprint, complicated user
interface reflecting its complex functionality, long release, deployment and
update cycles, and expensive maintenance.
SaaS applications have improved on several of these issues, e.g.,
release, deployment and update cycles have shrunk and maintenance costs have
decreased. Based on the examples we’ve
seen from the consumer world, mobile
applications have completely different characteristics. They provide simple and user-centric
functionality, typically automating one task, e.g., making a restaurant
reservation, have clean look and feel, small footprint, monetize through new
and equally simple business models, and interface with other applications and
data through well-defined APIs. Because
of their characteristics, security and privacy become more manageable tasks.
Mobile consumer applications are starting to
influence how mobile enterprise applications are designed, implemented,
deployed and used, regardless of whether their intended user is the
corporation’s customer, its employee, or its partner. However, mobile enterprise applications have
not yet achieved (and here) the range of functionality, sophistication and refinement of
consumer applications. They tend to be
straight re-implementations of their desktop counterparts. Fortunately enterprise application developers
are starting to re-think how mobile software can best automate business processes
while adopting the norms established by mobile consumer applications. In the process they need to make the
following important decisions:
Select the right business process to mobilize. In these early days of
mobile enterprise applications we see companies making the mistake of
mobilizing widely used desktop applications. Rather than starting from the
application level, it is important to start from the process level and identify
the processes that are best suited for a mobile automation. I have identified three types of processes
that are good candidates for mobile implementations: a) those involving mobile
employees, customers or partners, e.g., appointment scheduling for field
technicians, b) those which take unique advantage of the sensors, e.g., GPS,
camera, found on mobile devices, e.g., route optimization for delivery service
drivers, insurance claim submission, and c) those that have been considered too
niche for inclusion in a large enterprise application (there is an app for
that) and can be implemented easily using the small-team development model that
has emerged in mobile consumer applications, e.g., collaborative task
management.
Determine the type of application to build (native or web-based). The debate on whether
to develop a mobile application that runs native on the device, such as
Walgreens’, or is web-based, i.e., using an HTLM5 UI and a cloud-based back end,
such as the one developed by the Financial Times, will continue to rage for a
while. Developers opt for a native
application when a) response speed is important, for example Facebook changed
from a web-based to a native mobile application in order to improve response
time, b) the desired user experience is not adequately supported by HTML5, for
example Walgreens’ application as well others that have been recently been released, c) the application is
expected to frequently operate in environments with infrequent or no
connectivity, or low bandwidth, e.g., while on a commercial flight. Some native applications are not 100%
self-contained on the device but may also need to use the cloud particularly in
order to access data or invoke other applications in order to accomplish a task,
such as United’s mobile application which accesses a variety of databases with
flight and customer data. There are also
very good reasons to develop a web-based mobile application including when a) a
mobile application is being quickly prototyped, b) it is not clear which implementation
type will best serve the application’s users, c) the application needs to run
on a variety of mobile operating systems beyond the major two (iOS, and
Android), d) trying to mobilize an existing third-party or proprietary
enterprise application (on-premise or cloud-based) by creating a wrapper around
it, e) response time and a specific user experience are not issues, and f)
monetizing the mobile application through search advertising.
Decide on a business model to monetize the application. Over the past 2-3 years
third-party mobile consumer application companies have been experimenting with
a variety of business models: advertising-driven, subscription, freemium,
mcommerce. Third-party mobile enterprise
application providers will undoubtedly have to go through a similar
experimentation phase for the applications they introduce to the market. Deciding on the business models that will be
tested can also dictate how the mobile enterprise application will be designed
and implemented, i.e., not only how the business process will be decomposed but
also whether each resulting application will be native, web-based or
hybrid. For, example, as it was
mentioned above, if monetization will be through search advertising, then a
web-based version of the application is necessary.
Provide the right user experience. Enterprise applications
have typically been built from the bottom up, their developers paying most
attention to the business logic and the database structure. With a small number of exceptions over the
past few years, user interface and overall user experience have been
afterthoughts. Mobile consumer
applications have demonstrated convincingly that user experience is as
important, if not more important, as functionality. Mobile enterprise applications must establish
the same balance with user experience becoming as important as
functionality. Moreover, user experience
does not only imply a user interface that engages the user, but also a
consistent experience across all mobile devices on which the application will
be used (regardless of screen size, operating system, etc.). This is an important consideration since the
application’s users are likely using multiple mobile devices in the course of
their daily work activities, in addition to their desktop computers (an
excellent example is the approach that Google took with the Chrome browser). In order to provide the right user experience
while mobilizing an enterprise process, it may be necessary to be implemented
over more than one application. For example, the process of field workforce
management may be broken down into three mobile applications: personnel
scheduling, form-filling for data collection, and work-order completion. In some cases the mobile applications developed
to automate a particular business process may need to be organized into a
larger composite application where
the output of one component application becomes the input to another. For example, the shopping list application
developed by a grocery store chain may be integrated with a third-party
in-store navigation application to provide a better user experience.
Take advantage of ecosystems. Ecosystems that were
created through business development partnerships have always been important
for enterprise applications. Companies
like SAP, Oracle, Salesforce, Workday, to name a few, have developed platforms on
top of which their partners wrote additional enterprise applications. Today in mobile applications the platform is
not simply an extension of a particular application but is the operating system. During these early days of mobile enterprise
applications we are witnessing the creation of ad hoc application ecosystems, e.g., health care applications, and data ecosystems, e.g., quantified self data that can be
used by mobile health care applications, and business
graphdata (enterprise CRM and HR data combined with location data, as
well as data from LinkedIn, Twitter, Facebook and other social networks and
organized into a graph structure that can be searched and analyzed) that can be
used in variety of mobile CRM, HR and SCM applications.
Developing the right APIs. Application Programming Interfaces (APIs)
have always been important for application integration. They have become even more important for
mobile applications as they enable them to interface with distributed
heterogeneous data sources, e.g., database, activity streams, etc., as well as
with other mobile, cloud-based, or on-premise applications, and offer services
such as push notifications, identity management and geolocation. Writing a robust and well-behaved set of APIs
for every mobile enterprise application and documenting them appropriately have
become prerequisites.
Make the business application discoverable. Apple’s and Google’s
app stores have demonstrated that it is possible to create millions of mobile
applications. I expect that as
enterprise mobility moves from experimentation to mainstream we will see a
similar explosion for mobile enterprise applications. Identifying one or more applications to automate
a particular business process, an enterprise user may need to search the mobile
device, the corporate cloud/marketplace, or public application marketplaces.
As consumers have already determined, just finding the right applications in app
stores is hard enough. Application
search will need to be augmented with a detailed and robust application categorization scheme that
enables tasks to be matched to applications, as well as the ability to monitor application usage patterns (users
tend to gravitate to a few specific applications that enable them to achieve a
lot with little in-depth understanding of an application's internals).
After extensive experimentation over the past
8+ years (with the advent of the smartphone), we remain in the very early
stages of enterprise mobility. Mobile
consumer applications have taught, and continue to teach, enterprise
application developers many lessons about design, implementation, distribution
and appropriate business models. As the
enterprise’s move to mobility is accelerating we will see the emergence of new
third-party application leaders since, at least to date, the incumbent
enterprise application providers remain too attached to the design and
monetization models they established 20+ years ago. In the process, in Apple, Amazon, Google, we
are already seeing a new set of mobile infrastructure leaders emerge that are
seriously challenging the dominance of traditional enterprise infrastructure
providers such as IBM, Oracle and Microsoft.
These market conditions make this an excellent time to invest in
companies that develop mobile-first enterprise applications. As we did during previous application
platform shifts, Trident is aggressively investing in companies that will
become tomorrow’s enterprise application leaders by utilizing the mobile
platform.