Software developers, too many of them in fact, are still building apps. That could be a mistake.
For decades, software developers have identified business functions and transactions that they could create applications around. The job of an application usually was to permit the recording of a business or accounting event, perform some computational magic upon it and then store or report the result. As a consequence, businesses have collected scores of applications with old-school names likes Fixed Asset Accounting, Payroll, Time & Expense Tracking, etc.
Instead of apps, software developers should be creating code that serves up business information (not just transaction data) to users of mobile internet devices (MIDs) like smart phones and tablet computers. But before we parse that concept further, let's back up a bit.
Whether it's the BYOD/BYOT (bring your own device/technology) to work phenomena, the growing power of smart MIDs, or, the near ubiquity of an internet connection, workers today want IT to serve data up on their smart MIDs. They don't want desktop personal computers in a cubicle. These are mobile, interconnected workers that want to access information whenever and wherever they are.
More specifically, they want one user interface no matter how many solutions are serving up information on their device. They don't want to be popping in and out of different ‘applications' with their different log-ins and security protocols. They want ONE seamless experience that is tied to a user-specific workflow. Applications are out. Slick user experiences (replete with killer transaction and non-transaction data) are in. Users want solutions that bring context and capability into their hands.
What the new technology user wants is not:
- A bunch of mash-ups that may or may not follow a specific workflow
- A single workflow that is supposed to work for all users, all MIDs, all business events, etc.
- Mash-ups that all look like they were sourced from radically different sources
- User experiences that are not intuitive or vary from panel to panel, URL to URL, etc.
- A solution exclusively oriented around one kind of media: data
What this user does want is:
- Context to enrich and complete transactions, customer interactions, etc.
- Information served up at point of need
- Information designed to answer the worker's or customer's needs
- Information beyond transactional data (e.g., answers to questions like "Pictorially, where is this product located? How can I personalize it? How should today's weather affect the staffing of our store? What are the latest customer comments on the Internet about our firm?)
- Solutions that make the most of 3 media types (i.e., data, voice and video)
Interestingly, software vendors I meet with still appear to be building conventional, transaction-oriented applications. I guess it's a DNA or force of habit thing. But, this perspective really needs to change.
A newer generation of software developers (e.g., those building for the iPhone/iPad or Android markets) is a lot closer to where software development is headed. They can, depending on the platform, serve up applications and data to different MIDs. Their products were designed for mobile interconnected workers.
But the best example of the future may come from integrators, like Appirio and others. They get the concept of serving up information to MIDs and doing so within a common UI. They also understand how different users may need different data served up to them based on their role and the MID they possess. They understand why the new form of business application software requires:
- Multiple business process designs based on the worker's needs and the MID being used
- Tying the content that needs to be served up to the type of work and MID being used
- External content, internal content, possibly mass/big data feeds, insight/analysis and, yes, even transaction processing capabilities
The old designs around application software development made a number of assumptions that are not relevant anymore. The old world of software assumed that:
- Software must concern itself predominately with internal, often accounting-related business events
- Software must efficiently process transactions
- Software applications should mimic centuries old manual processes (e.g., bill paying)
- External data was almost always inaccessible
- Work originated and was completed within the four walls of an enterprise
These old world assumptions are, to the one, no longer applicable, relevant or true. As a result, what businesses need are not more of the applications built for the old world order of technology. They need "capabilities" that do so much more than "applications". They need capabilities that:
- Appropriately blend external and internal data to facilitate better decision making
- Are facilitated via dynamic (not static) workflows
- Take analysis or business intelligence to dramatically new levels
- Put decision making (not just data entry) in the hands of workers
Building apps is what we did in the old world. We need to start building rich business capabilities in today's competitive business landscape. And, these rich capabilities will run on devices far removed from the desktop successors of yesteryear's green screen and punch card solutions.
What capabilities do your workers need?