KnowiXML: A Knowledge-Based System Generating Multiple Abstract User Interfaces in UsiXML

Post on 16-Nov-2014

746 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

This research presents a multidisciplinary approach aimed at generating multiple Abstract User Interfaces (AUIs), which are adaptable for different kinds of users, performing different tasks, using specific devices in various physical environments. The user interface generation framework, called IKnowU, is based on a unified process for interactive system design, which integrates Software Engineering (SE), and Human-Computer Interaction (HCI) best practices. This framework is supported by KnowiXML, a Knowledge-Based System (KBS) that facilitates the application of models and the allocation of appropriate visual elements during the generation of AUIs. These AUIs are generated by using problem solving methods studied in Artificial Intelligence (AI). Design knowledge encoded in KnowiXML uniformly manipulates models and UI specifications through the use of USIXML, a User Interface Description Language (UIDL).

Transcript

Elizabeth Furtado, Vasco Furtado, Kênia Sousa, Jean Vanderdonckt,

Quentin Limbourg

KnowiXML: A Knowledge-Based System Generating

Multiple Abstract User Interfaces in USIXML

Presentation Plan

Hypothesis Problematic Objectives Solution USIXML UPi IKnowU Conclusion

Hypothesis Many SW organizations apply or intend to apply the

Rational Unified Process (RUP) ; Businesses in many organizations demand the use of

systems in different contexts of use; The generation of UIs for multiple contexts of use

needs the integration of SE models, practices, and techniques (functionality adequate to requirements) and HCI ones (usability);

SE and HCI professionals need the integration of concepts from these areas to facilitate the communication among them during the application of usability techniques.

Problematic The RUP does not use HCI models and

techniques; Difficulty in designing UIs considering

various parameters; Lack of tools that:

Automate UI design; Integrate HCI and SE concepts;

Objectives

Define a process that facilitates the integration of SE and HCI models and techniques for the generation of UIs for multiple contexts of use;

Define a tool that facilitates the generation of UIs for multiple contexts of use with the application of SE and HCI integrated concepts.

Solution

UPi, Unified Process for interactive systems that integrates SE and HCI models, techniques, and professionals, considering different contexts of use (Sousa and Furtado, 2004);

IKnowU, software for requirements elicitation, analysis, design, and generation of UIs for multiple contexts of using USIXML.

USIXML

Limbourg et al., 2004

Abstract x Concrete x Final UI

IKnowU Functionality

IKnowU Components

The ontologies for each conceptual model are defined using an ontology editor (Protégé).

The conceptual models can be instantiated using Protégé or any other modeling tool (such as ROSE, CTTE).

The KBS implements a Problem-Solving Method (PSM) used to generate AUIs based on information from the conceptual models.

IKnowU Components

Automation of UIs Generation

Automation of UIs Generation

Definition f the ontology of the models; Creation of the usability requirements knowledge

base; Creation of the usability patterns knowledge base; Creation of the architectural patterns knowledge base; Creation of the transformation rules knowledge base; Creation of the mappings among models knowledge

base.

Knowledge Base Creation

Ontology of the UI ModelsConstraint

ContextModel

Usabil ityRequirement

1

1..n

1

1..n

TaskModelUseCaseModel

1

n

1

n

DomainModelRule

AuiModel

1

1..n

1

1..n

11..n 11..n

1

1..n

1

1..n

1

1..n

1

1..n

1

1..n

1

1..n

1

1..n

1

1..n

Usabili tyPattern

CuiModel1

1..n

1

1..n

1..n1 1..n11

1..n1..n

1

ArchitecturalPattern

FuiModel1

1..n

1

1..n

1..n1 1..n11

1..n1..n

1

Mapping of Patterns

Abstract UI Concrete UI Final UI

Patterns Usability Requirements

Usability Patterns

Architectural Patterns

Example 1 Feedback Progress Indicator

Feedbacker.class

Example 2 User Explicit Control

Undo Undoer.class

If the type of the task is ‘interactive’ and the domain model associated to this task has attributes that are mandatory, then use the ‘output’ abstract individual component.

If the binary relationship of a task is ‘enabling’, then use the ‘navigation’ abstract individual component.

If the type of the task is ‘interactive’ and the domain model associated to this task has methods, then use the ‘control’ abstract individual component.

Transformation Rules

Automation of UIs Generation

When the analyst is experienced in SE, he/she can prepare the flow of events, when experienced in HCI, he/she can prepare the task model using Protégé. Afterwards, he/she can define the usability requirements and the context of use model with the end-user using Protégé. All of these models are input for the generation of the AUI.

Definition of Usability Requirements• Preferences: Provide help;• Constraints: Provide help only when requested.• Fix: Change automatic help to requested help.

Usability Requirements

Flow of Events

Task Model

Task Model

Context of Use Model

Domain Model

Automation of UIs Generation

Creation of Constraints for the Abstract UI– Rule: If the type of the task is ‘interactive’ and the domain model

associated to this task has attributes that are mandatory, then use the ‘output’ abstract individual component. .

– Constraint: The AUI must have 3 ‘output’ abstract individual components.

Rules

AbstractObject

Context

Constraints-Abstract UI

InstanciatedModels

ComponentANALYSIS

ContainerTask

Domain

Solution

Generation of the Abstract UI

Requirements

Preferences

ConstraintsFixes

Solution

Constraints-Abstract UI

Component

Container

Abstract UI

Automation of UIs Generation

Generation of the Concrete and Final UI

Abstract UI

Component

Container

Concrete UI

Platform

Final UI

Prog. Language

TransformiXML

Solution

Concrete UI

Conclusion

Our goals are to: Save design and development time by automating

the generation of UI models and assure consistency among different platforms with the application of such models;

Provide an open-source tool, based on XML, that can be integrated with other tools (such as CTTE) to help in the integration of SE and HCI concepts and facilitate the communication among professionals from these two areas.

+

Elizabeth Furtado, Vasco Furtado, Kênia Sousa, Jean Vanderdonckt,

Quentin Limbourg

top related