Design and Implementation of a Prototype ForCapturing Immediate User Experiences

Page 33

2.6. USER INTERFACE REPRESENTATION

2.6

33

User Interface Representation

One of the challenges of designing an ESM study is to export it out to the participants of a survey. For surveys being entirely web-based this is really not that big of an issue. The reason for this is that the survey will be designed as a web-site, which there are standards for. In most cases the representation of a survey will look the same in all browsers as long as the standards are followed. The situation changes when portable devices are involved. The previously mentioned systems all assume a specific target device. This eliminates the challenges of different device types running the software. That said, they put a requirement on the participants. To be able to take part in a survey they have to be in possession of a certain device. Because of this we have decided to look into the possibility of designing a standardised format that can describe a user interface by using a mark-up language, such as XML. Therefore, in this section we will present some projects that exist when it comes to representing user interfaces using XML. Advantages to why a developer should do this significant separation of the Graphical User Interface (GUI) from the application logic, include how easy the localisation of an application can be changed. The GUI is dynamically loaded, hence to change the GUI simply involves adjusting the XML file given to the parser at runtime. Another advantage of separating the user interface from the rest of the application, is that the GUI can be changed without having to change the logic behind it.

2.6.1

Motivation

Implementing user interfaces are often very time consuming and error prone. As a consequence many vendors have introduced tools to help the developer build such user interfaces faster. These tools are in most cases visual designers where the programmer is given a toolbox and an area to draw the interface in. By dragging and dropping tools from the toolbox and onto the area allocated for drawing the interface, the GUI is created. The tool will generate code for the user interface drawn by the programmer. The generated code is kept in separate files or regions and should not be touched by the programmer. This approach is very efficient and creates a clear separation between the layout of the user interface and the application code. The problem with such a tool is that the user interface created, normally targets one particular programming language (e.g. Microsoft Visual Studio8 generates Visual C# source code, while NetBeans9 generates Java source code). The motivation behind defining user interfaces in a declarative language as XML goes back to the problem where all the designer tools generate code in their own specific programming language. This means that the user interface must be re-implemented if another programming language is decided for the application logic. In an ideal situation, a programmer should be able to use the same description of a user interface between different programming languages and platforms. Consequently, a loose coupling between the application logic and the user interface of an application is achieved. Describing properties in text files is a normal approach to transfer information between applications written in different programming languages. XML is very powerful when it comes to describing content in text files. Some of the advantages of XML include [12]: 8 9

http://msdn2.microsoft.com/en-us/vstudio/ http://www.netbeans.org


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.