8. Deliver more than users expect
2. Handle multiple languages
3. Compile scripts and styles
4. Abstract data by type
Historically it’s been a lot easier to create a superb user experience in a desktop application than in any client/server context. The relatively primitive nature of traditional web technologies have made web applications the poor cousin of the family when it comes to ease of use and efficiency.
Thankfully this is changing, and the toolsets becoming available for web development are driving significant improvements in user experience.
We wanted the ElseApps Framework to delight users. We set out to achieve this in several ways:
- through an intuitive, familiar interface
- by anticipating user needs
- consistently over-delivering on users expectations
EAF‘s interface is built with the Twitter Bootstrap framework, which provides a consistent design language and a familiar set of controls and behaviours, both on computer desktops and in the responsive version served up to mobile devices. Using BrowserStack for testing ensures everything looks and works as it should across all the common operating system / browser combinations.
How does EAF anticipate user needs? We give each user role its own dashboard that reflects that role’s workflow and imperatives. The dashboard prioritises the items needing the most immediate attention, with direct links to action items. It also presents a trail of recent activity, enabling the user to return to tasks quickly and without uncertainty.
For project or period based activities, dashboard options keep pace with the status of the activity, ensuring the user always knows what stage is current, and what tasks need attention.
Throughout EAF, user preferences are persistent. When a user revisits a data table or a dialog, the previously used settings are restored. Some interfaces have ten or more filters and handle half a dozen different data contexts. This would introduce considerable complexity if we were explicitly saving and loading individual preferences; instead the task is abstracted to EAF‘s Preferences class, which manages everything automatically.
There are many other examples of anticipating user needs, including the automatic refresh logic in EAF‘s data tables, which you can read about here.
EAF over-delivers in many ways. The framework can be configured to give a role such as Administrator the ability to post messages to other users’ dashboard, and to allow users to post persistent notes to themselves in the footer of every page. Functionality of this sort leverages one of the most significant benefits of migrating manual business processes to the web: the process becomes entirely application-centric. Users can contribute from anywhere at any time, yet have immediate access to all the notes and documents necessary for the work at hand.
The ElseApps Framework is also strong on notifications. EAF alerts users – usually by email – when there’s an event of interest or a task that needs attention. This leverages another key benefit of web-based business processes: increasing the efficiency of the process through just in time management. It would be straightforward to extend notifications to include text messaging and even third party messaging apps if a client required that functionality.
Every event within the framework is logged to create a robust audit trail and provide the raw material to resolve issues. Rather than reserving all this information to developers and administrators, users can be given contextual access to key events. This reduces support calls: an administrator can see who has been working on a given task, when changes were made, and how it reaches its present status.
One small feature that has delighted many users is the ability to personalise the formats for common data types such as date, times and names – you can read about that here.
We’re keen to develop the ElseApps Framework further, to make it even more powerful. But clients using the framework to date are already delighted with the business benefits it delivers. If you’d like to know more, use the contact form at the bottom of this page to get in touch.