UsiXMLA meta-language for user interfaces in multiple contexts of use
The international landscape is quite diverse in terms of interactive software systems as they should be used in a wide spectrum of contexts of use. Each context of use covers various types of users along with their interactive tasks, using potentially several computing platforms or devices in multiple physical, organisational and psychological environments and locations. In addition, practices for developing user interfaces of these interactive software systems are even more heterogeneous. Evolving in so many diverse contexts of use is particularly challenging when the same system should be deployed for several targets. In theory, a single version of the software should be produced so that it is adapted to each context of use. In practice, this is simply impossible to do due to lack of resources and knowledge.
User Interfaces for Multiple Contexts of Use
The ITEA 2 project UsiXML developed an innovative model-driven engineering method to improve the user interface design and development life cycle for multiple contexts of use. Instead of replicating efforts for each target, the method factors out what is common from what is specific to each target. Based on recognised activities for user interface development, the UsiXML method consists of a series of models that capture the context of use (i.e., user, platform and environment), the end user's task and user interface as well as the transformations between, while ensuring software quality. Since a large proportion of today's infrastructure tools, software tools and interactive applications are implemented on top of various programming languages and mark-up languages, this project focused on defining UsiXML, an XML-based meta-language by adding versatile context-driven capabilities to take it far beyond the state-of-the-art and lead to contributing to standardisation efforts. UsiXML can express a user interface at different levels of abstraction: computing independent, platform independent and platform specific.
The project involved 25 partners from 6 countries, including some industrial and academic members from the UsiXML End User Club. This consortium facilitated a challenging design and development process to enable the production of realistic and complex industrial applications.
Standardisation available to all
Thanks to the UsiXML project, the consortium has been able to submit its consensus work, to contribute and to vote on 7 standardisation actions, which would not have been possible without the project. The completed standardisation actions are publicly accessible so that any interested part can directly use them:
- Recommendation issues by the W3C Model-Based User Interfaces (MBUI) Working Group. This WG aims at defining a common meta-language for describing user interfaces at task-based, abstract user interfaces levels. The UsiXML consortium was responsible for one of them: https://www.w3.org/TR/abstract-ui/
- The ISO/IEC 24744 on Software Engineering: Metamodel for Development Methodologies, in which the consortium evaluated and improved the visual formalism and incorporated the task model explicitly. See https://www.iso.org/standard/62644.html
- The User Interface Mark-up Language (UIML) led by OASIS (https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=uiml), which resulted into its fourth version representing the final documented version accessible today. See https://link.springer.com/chapter/10.1007%2F978-1-84800-907-3_7
- Networked European Software and Services Initiative (NESSI). See https://cordis.europa.eu/project/rcn/86242_en.html
- NEXOF-Ra, the Reference architecture for NESSI European platform with user interface and tasks definition
- The COST 294 European Concerted Research Action (MAUSE) whose goal was to ensure usability of interactive applications across a wide spectrum of organisations - some members of this action also relied on UsiXML for their activities. See https://www.irit.fr/recherches/ICS/projects/cost294/
- The Interaction Flow Modelling Language (IFML, https://www.ifml.org/, the OMG standard for integrating the front-end design in an interactive application
Efficiency boost all round
The success of this ITEA 2 project reduces total application costs by 15% for complex systems and 30% for information systems. A recent study1 demonstrated that more than 40% of the user interface models were reused, resulting in a reduction of 55% of the size. Thanks to UsiXML, non-developers can shape the user interface of any new interactive application by specifying it in UsiXML, without requiring the programming skills usually found in mark-up and programming languages. For instance, graphic artists can use UsiXML prototyping tools to demonstrate a future user interface without any programming. This project offers a practical application of model-driven architecture (MDA) and engineering (MDE) that shows immediate benefits in day-to-day software engineering.
Innovations in UsiXML will help European software vendors and industrial systems makers to increase productivity by about 20% in average software development and reduce development costs. To give a concrete example, Defimedia, a Belgian SME, only needs 3 days to develop the back office of its website with UsiXML instead of 2 weeks without UsiXML. These results reduce time-to-market, speed up productivity, improve factorisation, accelerate change propagation and enable better assessment of usability and accessibility.
A wide series of software supporting the language, the method and its multi-path process has been developed by several partners, either for their own or their customers' use, or as a publicly available contribution. The most significant industrial projects include a maritime surveillance application on the French Atlantic coast, an application for a tourism federation covering a Belgian province, an application for services available on a large palette of smartphones and tablets supported by the largest Belgian internet service provider, and a spin-off company, Estrategia 360 S.A. De C.V., which delivers services based on the language and now has 10 employees. Some extensions have been developed for users with disabilities, for collaborative aspects.
The UsiXML language has now evolved to its most mature version, V3.0, which is available through a cloud computing platform called UsiCentral. This platform gathers a full range of software starting from on-line model editors to code generators with a zero-install paradigm for the customer (no plug-in, no add-on, no setup, no software or package install) and a paying on-demand service.
And now, in 2018, five years after the end of the project, research and development efforts are continuing for user interfaces of the most modern and available technologies, like those based on gestures. The affordability of gesture acquisition devices and sensors (e.g. Microsoft Kinect, Thalmic Myo armband, PS-tech's optical tracker) as well as the availability of supporting software (e.g. MS Surface gesture collection, Myo basic gestures, 2D /3D touch+air gestures) have launched a new generation of gesture user interfaces that is important to master the whole route from design to deployment for the ultimate benefit of end users. In particular, system-defined gestures included in these systems may differ significantly from user-defined gestures in terms of usability or preference. But this is another story for the future...
1 International Journal of Human-Computer Studies vol 86 2016: https://www.sciencedirect.com/science/article/abs/pii/S1071581915001470