Kathy Sierra, co-creator of the Head First series of books and founder of javaranch.com, describes the hierarchy of needs from the user(s) perspective. The needs are stacked in the order of increasing engagement from the user. Starting with the basic needs of a defined functionality and its correctness, moving on to the learnability, efficiency & usability and finally culminating in intuitiveness and enchantment. Merely provision of correctly working functionality is not guarantee of the success of the application(s). The idea is to hook the user; the application needs to do something extra.
Using the hierarchy of needs as the background, we will see how the applications in the consumer and enterprise world stack up.
Now, in the consumer world, the advent of Consumerization started with the proliferation of the mobile devices. In the connected world, the device (smartphone or tablet) imposed certain constraints
- Screen size is small and limited
- Processing power of the device is limited
- Interface is touch enabled
- Connectivity is not constant (read patchy) and speed/data is limited (no unlimited data plans)
- User audience demography not known
- Focused on providing only one functionality
- Have simple and intuitive messages/steps in the absence of any help/guides
- Providing simple interfaces (cater to worldwide audience)
- Having uncluttered screens as real estate is limited
- Using UI Controls that are big and usable (touch interface)
- Having intuitive workflows
- Engaging to stand apart among the millions of other Apps
In the enterprise world, the device is most likely to be powerful desktop/laptop with a large screen. The connectivity is via LAN or broadband. As a result the Enterprise Applications are more industrial with high focus on providing long list of functionality and ensuring the correctness of the same. Consumers facing business applications usually focused on usability, Specialized enterprise applications (e.g. Call Center Applications) focus on the overall workflow efficiency, but majority of the applications are resource intensive, lack efficiency and have high learnability curves.
The enterprise user experiences the simple, intuitive consumer apps on their mobile devices. With the advent of BYOD (Bring Your Own Device), enterprise user’s started bringing their smart devices into the enterprise. Soon the users are comparing the experience of consumer apps with the enterprise business apps; they wonder why the enterprise apps can’t provide a similar experience. Why are the enterprise apps so low on learnability, efficiency, intuitiveness factors?
The whole idea behind the Consumerization of IT is not just measures like BYOD but to bring the missing intuitiveness, usability and efficiency into the enterprise applications.
So, what does Consumerization means for the Architect?
When designing and architecting enterprise business applications, following considerations need to be kept in mind
- Connected users means the applications need to be available 24 X 7 ( Always On, Always Available), 24 X 7 availability requires application solution(s) to be elastic – expand or shrink based on the load
- Intuitiveness and Usability have to be high on the agenda when designing the interface and workflows
- Solution needs offer APIs for additional applications to be build
- Integration with systems and other applications (including SaaS) need to be simple, straight forward and well documented
- User experience is the key to successful business application (it was always the key) but need to be (re)designed for the connected & mobile devices
- Product evaluation(s) will now include SaaS applications that can provide the functionality
- Saas adoption will increase leading to newer challenges in integration, data security and privacy measures
- Applications need to be designed/tested keeping in mind various devices/OS combinations (days of designing apps that worked on IE6 only are over)
This post originally appeared at www.techspot.co.in