In model-based user interface development, models at different levels of abstraction are used. While ideas may initially only be expressed in more abstract models, modifications and improvements according to user's feedback will likely be made at the concrete level, which may lead to model inconsistencies that need to be fixed in every iteration. Transformations form the bridge between these models. Because one-to-one mappings between models cannot always be defined, these transformations are completely manual or they require manual post-treatment. We propose interactive but automatic transformations to address the mapping problem while still allowing designer's creativity. To manage consistency and semantic correctness within and between models and therefore to foster iterative development processes, we are combining these with techniques to track decisions and modifications and techniques of intra- and inter-model validation. Our approach has been implemented for abstract and concrete user interface models using Eclipse-based frameworks for model-driven engineering. Our approach and tool support is illustrated by a case study.
Posts tagged: Software Engineering
Rewiring strategies for changing environments
A typical pervasive application executes in a changing environment: people, computing resources, software services and network connections come and go continuously. A robust pervasive application needs adapt to this changing context as long as there is an appropriate rewiring strategy that guarantees correct behavior. We combine the MERODE modeling methodology with the ReWiRe framework for creating interactive pervasive applications that can cope with changing environments. The core of our approach is a consistent environment model, which is essential to create (re)configurable context-aware pervasive applications. We aggregate different ontologies that provide the required semantics to describe almost any target environment. We present a case study that shows a interactive pervasive application for media access that incorporates parental control on media content and can migrate between devices. The application builds upon models of the run-time environment represented as system states for dedicated rewiring strategies.
Human-centered engineering of interactive systems with the user interface markup language
Get your requirements straight: Storyboarding revisited
Current user-centred software engineering (UCSE) approaches provide many techniques to combine know-how available in multidisciplinary teams. Although the involvement of various disciplines is beneficial for the user experience of the future application, the transition from a user needs analysis to a structured interaction analysis and UI design is not always straightforward. We propose storyboards, enriched by metadata, to specify functional and non-functional requirements. Accompanying tool support should facilitate the creation and use of storyboards. We used a meta-storyboard for the verification of storyboarding approaches.
MuiCSer: A process framework for multi-disciplinary user-centred software engineering processes
MuiCSer: A multi-disciplinary user-centered software engineering process to increase the overal user experience
In this paper we present an incremental and user-centered process to create suitable and usable user interfaces. Validation is done throughout the process by prototyping, the prototypes evolve from low-fidelity to the final user interface. Applications developed with this process are more likely to correspond to users' expectations. Furthermore, the process takes into account the need for sustainable evolution often required by modern soft- ware configurations, by combining traditional software engineering with a user-centered approach. We think our approach is beneficial in its scope, since it considers evolving software beyond the deployment stage and supports a multi-disciplinary team.
A web-based central gateway infrastructure in the automotive after-sales market - business interoperability through the web
The Block Excemption Regulation of the European Commission was enacted in 2002 with the goal to strengthen competition between dependent and independent repairers in the automotive after-sales market. The FP6 MYCAREVENT project embraces these goals while triggering new business opportunities by establishing a mobile accessible infrastructure as single gateway to different kinds of resources. This information procurement framework allows customers to find specific vehicle repair and diagnostic data from different car manufacturers and 3rd parties in the same way. In order to provide a higher degree of accessibility, extensibility and adaptivity, our service-oriented infrastructure presented in this paper is web-based and consists of three main components: Mobile Clients, Service Portal and Remote Services. New communication and multimedia technologies are invoked to improve interoperability, usability and maintenance of the underlying Mobile Service World. In this paper we focus on the architecture of our highly flexible procurement infrastructure. Standardized elements and methodologies ensure an integrated solution and enable easy expandability with new content, services and components.
A component-based infrastructure for pervasive user interaction
Since a growing number of different mobile computing devices are used in pervasive and ubiquitous environments, the need to adopt new approaches for designing and implementing pervasive interactive software with minor effort is emerging. In this paper we present a process that facilitates the design of next-generation interactive software for pervasive environments. We created a distributed runtime infrastructure that enables the distribution of software components on heterogeneous, networked and embedded hardware systems. Some of these components or compositions of components will require interaction by human users from a large range of different devices. To make the deployment of consistent and functional User Interfaces in these pervasive environments easier, Interaction Components are introduced into the runtime infrastructure which enable the presentation of component and service behavior to human users.