Contact us
Contact form
E-mails
Digia offices
Home
suomeksi 
Industries
Industries
Solutions
Solutions
Products
Products
Investors
Stock Exchange Releases
IR-Information
Financials
Share information and options
Corporate Governance
Press
Press Releases
Articles
Digia logo
Events
Events
Careers
Working with us
On Recruitment
For Professionals
For Recent Graduates
Career opportunities
About Us
Digia in brief
History
Our vision
Personnel and values
Ethical and Environmental Policy
Digia Tower
26 November 2007: Boosting the efficiency of planning and implementation through user interface modelling
Simulations, created by means of user interface modelling, can markedly enhance development-phase communications and the evaluation of user interface applicability. Model-based user interface architectures take this approach further, to strive for a more efficient and controllable method of application development. However, modelling is rarely utilised in user interface design and implementation. This technical article offers a practical view of user interface modelling by means of the Realizer by SYSOPENDIGIA product, and analyses the relationship between business process modelling and user interface modelling.
Business process modelling is currently a significant source of interest for companies implementing extensive IT projects. Information systems are increasingly being developed in a business-driven manner in order to support companies' core business operations, often with the goal of attaining highly automated processes. Conventionally, an application is programmed in order to manage a business process by means of IT, but novel approaches start with definition mechanisms that enable the immediate execution of a process. Using specific modelling languages (such as BPEL), processes can be formally defined in such a manner that an interpreting process engine is able to simulate them. This facilitates the evaluation and development of process flow and efficiency. In the future, companies strive for settings where a process engine performs these processes within the production system. In a typical scenario, a process engine comprises the "heart of the orchestration" of an organisation's IT systems, through which lower-level – for instance, SOA-based – reusable services are invited.
User interface (UI) modelling and its advantages have, on the other hand, thus far largely evaded attention, even though formal modelling also began in this area in the late 1970s. Various definition languages (e.g. Microsoft XAML) have been introduced, but these are technical in nature and typically intended for the generation of user interfaces for various technical platforms, or the bridging of user interface definitions to the executing architecture. UI modelling, however, specifically refers to the graphical modelling and simulation of a user interface during the prototyping phase, with stakeholder communications enhancement as its primary objective. Other significant goals are the adaption of user interfaces to the capabilities of various devices in order to optimise the user experience, and the ability to utilise models directly as part of a system's technical implementation.
User interface modelling is rarely used, particularly since it has, thus far, proven incapable of supporting the user-driven demands on the development process of diverse user interfaces. In practice, modelling solutions have lacked expressive power, and thus resulted in impractical user interfaces. Furthermore, its integrability with modern comprehensive architecture solutions has been poor, or restricted to very specific technical environments and operations.
If the run-time management of systems based on business process modelling becomes more common in the near future, which would seem to be the case, user interface development will become relatively more expensive. According to IBM, time spent creating a user interface may amount to 65 to 80 per cent of the duration of projects in which other implementation is model-based (Sukaviriya et al.: Integrate Model-driven UI with Business Transformations: Shifting Focus of Model-driven UI, 2005).
User interface modelling can provide a remedy to this. When founded on right design choices, it can markedly enhance user interface design, the evaluation of user experience and, the technical development of user interfaces.
Model-driven user interfaces blend in with technical solutions
Formal user interface modelling usually refers to the definitions of logical and technology-independent parts of a user interface, and the way they are interconnected in order to create sensible user interface combinations for various platforms. Modelling is usually performed using graphical notations, with an XML-based definition language in the background. Logical parts of user interfaces include:
Interaction between user and system (task model)
Presentation format of tasks and other UI elements in the user interface (presentation model)
User roles (user model)
Devices supported by the system (device model)
Data processed in the user interface (domain model)
Analogies can easily be drawn between these models and current methods. For instance, the task model in image 1 is equivalent, with regard to its informational content, to a conventional use case, complete with data fields, exceptions and other properties. Similarly to a use model, a simple task model can be defined in an agile manner in a matter of minutes. The primary difference is that a task model comprises a formal definition, which enables the simulation of its functionality. Using our own Realizer by SYSOPENDIGIA tool, a task model can be simulated, by the click of a button, with a Web browser at any phase of the development process. User interface simulations – rather than modelling notations – are used in order to ensure efficient stakeholder communications and the genuine engagement of end users with the development process.
Image 1: A task model, defined using Realizer notation, provides a formal definition of system and user interaction, understood also by the technical run-time architecture.
The primary idea behind modelling is to develop UIs with loosely interconnected models in order to create an adjustable user interface that can be adapted to different usage situations and, to gain as high a level of reusability as possible with regard to creating user interface versions for various device environments (phone, PDA, PC etc.).
Realizer produces browser-based user interfaces for business critical systems on the basis of UI models. A user interface is constructed by combining task models, presentation models and domain models. These models are then complemented with user and device rules, to dictate run-time behaviour. Based on associated rules, the architecture is able to select the models suited to user roles and devices, and generate a technical user interface in the format suiting the browser (typically, HTML, XHTML or XHTML MP syntaxes).
User interfaces constructed in this manner operate within a comprehensive architecture frame, in which models connect to the programming layer, providing a means for developers to control the relationship between the models and business logic using the basic services provided by the architecture. After simulation phases, models can be connected to the programming layer in order to achieve the real technical solution.
Image 2: Realizer user interfaces are constructed from interconnected models. The user interface engine interpreting the model package operates as part of a J2EE-based comprehensive architecture.
New modelling paradigms support business-driven software development
User interface and business processes modelling provide two different perspectives on business-driven system development. The primary goal of both approaches is to provide an opportunity for business operations to participate in IT project development without participating in technical issues and without having to go through thick documentation maps. Furthermore, models, and simulations accordingly, provide an intuitive basis for the efficient implementation of a project and bridge operations between business and IT.
User interface modelling provides significant benefits, but there are limits to its applicability. Using the Realizer tool, we have created and are creating applications for businesses whose brand the applications must support by being easy to use and visually striking. However, we would not recommend this tool as the basic solution for a museum looking to create an inspiring website based on animation and a "total" visual experience. Utilising modelling methods in user interface development is markedly goal-oriented.
It is important to understand that modelling of user interfaces and business processes are complementary approaches that can nourish each other during requirements generation and the development process. Ideas gained through user interface experimentation can lead to new types of processes, and vice versa. It would also seem intuitive to think that many business professionals are not process-oriented but understand the user's mindset while testing interactive user interface prototypes on actual devices.
Productivity is surely something to be excited about. User interface modelling does not, however, eliminate the need for interaction design and other, sometimes tedious, investments in usability. Nevertheless, simulations can be used to inspire interest groups to participate in the design process, on the basis of which initial prototypes can be extended – via usability planning – into solutions that provide the final user experience.
After years of product development, we have, for some time now, been able to apply the Realizer product in real projects. Our R&D team is looking forward to its first project that combines the two modelling paradigms described in this article. It seems obvious that new operating methods to facilitate communications between business operations and IT professionals are necessary.
For further information, please contact:
Antti Martikainen
, Product Manager, tel. +358 40 550 7174.
Press Releases
Articles
Digia logo