Top Banner
Towards Method Engineering of Model-Driven User Interface Development Kênia Sousa, Hildeberto Mendonça, Jean Vanderdonckt Université catholique de Louvain (UCL) Louvain School of Management (LSM) Information Systems Unit (ISYS) Belgian Laboratory of Computer-Human Interaction (BCHI) TAMODIA 2007
24
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Towards Method Engineering ofModel-Driven User Interface Development

Towards Method Engineering ofModel-Driven User Interface Development

Kênia Sousa, Hildeberto Mendonça, Jean Vanderdonckt

Université catholique de Louvain (UCL)Louvain School of Management (LSM)

Information Systems Unit (ISYS)Belgian Laboratory of Computer-Human Interaction (BCHI)

TAMODIA 2007

Page 2: Towards Method Engineering ofModel-Driven User Interface Development

Motivation

• Professionals working in systems development usually follow a defined software development process.

• When it comes to User Interface Development (UID), many professionals do their activities more empirically.

• Model-driven UID comes as a solution to improve efficiency of UID methods by reusing models, reducing development efforts, etc.

• To make model-driven UID methods applicable in the competitive reality of software development organizations, they need to be easily adaptable to the constraints of specific projects.

(Rosenbaum et al., 2000)

Page 3: Towards Method Engineering ofModel-Driven User Interface Development

Flexible UID method

• To help method engineers define a model-driven UID method appropriate for the reality of the software organization and its projects.

• To make model-driven UID methods efficiently applicable in the competitive reality of software development organizations.

• There is a need for flexibility– There are different ways to apply model-based UID

methods.– Even following a methodology, UI designers need freedom

to be creative.– Software development projects are very specific.

(Saeki, 2003)

Page 4: Towards Method Engineering ofModel-Driven User Interface Development

Investigation

• We studied some Model-driven User Interface Development Environments and their built-in methodologies.– Not completely flexible, we need one not restrictive to the sequence

of manipulation of models, but concerning the entire set of activities, roles, tools, and artifacts.

• Method engineering: engineering discipline to design, construct and adapt methods, techniques and tools for the development of information systems.– proposals to automate method engineering focus on system

development, letting aside the concerns of usability.

• We clearly see a need of interaction between MD-UIDEs and method engineering methodologies and environments.

(Brinkkemper, 1996)

Page 5: Towards Method Engineering ofModel-Driven User Interface Development

UID Activities

• Method Engineering of Model-Driven User Interface Development

• The Cameleon Reference Framework supports the realization of multiples types of development paths within a single framework.

• The language UsiXML was created to describe UIs for multiple contexts of use.

(Limbourg & Vanderdonckt, 2004)

Page 6: Towards Method Engineering ofModel-Driven User Interface Development

Environment T

Cameleon Reference Framework

Final userInterface T

Concrete userInterface T

Task and Domain T

Abstract userInterface T

T=Target context of use

Concrete userInterface S

Final userInterface S

Task and Domain S

Abstract userInterface S

S=Source context of use

Reification

Abstraction

Reflexion

Translation

UsiXMLunsupported

model

UsiXMLsupported

model

User S Platform S Environment S Platform TUser T

(Calvary et al.,2003)

Page 7: Towards Method Engineering ofModel-Driven User Interface Development

How to Define the Method?

• Business Process Modeling Notation (BPMN) was proposed by OMG to be applied in the representation of organizational processes.

• Using BPMN in the method definition is important because: – it has become a pattern for process modeling;– there are many tools available in the market implementing

it; – it is intended as a human-readable layer that hides the

complexity of transactional business processes;– there is a strong integration with the SOA.

Page 8: Towards Method Engineering ofModel-Driven User Interface Development

What about SE standards?

• Software Process Engineering Metamodel (SPEM) is a meta-model for defining software development processes.

• We associated SPEM and BPMN components to confirm that it is possible to represent the concepts defined in SPEM using BPMN.

• This means that a method defined according to the SPEM specification can be graphically presented using the BPMN formalism.

Page 9: Towards Method Engineering ofModel-Driven User Interface Development

Comparing SPEM and BPMN

Page 10: Towards Method Engineering ofModel-Driven User Interface Development

Defining Method with BPMN

Page 11: Towards Method Engineering ofModel-Driven User Interface Development

Helping Method Engineers

• Aiming at systematizing how a method can be defined and evolved, an evolution driven method engineering approach was defined.

• The activity-based strategy aids method engineers in identifying activities to construct a method.

• Adapting this strategy to the HCI domain, method engineers identify usability goals and associate them to activities that can be included in the method to achieve the desired goals.

(Ayed et al., 2004)

Page 12: Towards Method Engineering ofModel-Driven User Interface Development

Main Concepts

• A method is defined by describing Activities, which are selected for a project based on Usability Goals. Activities are performed by Roles, and act upon Work Products using Tools to manage the work products, which can be UI Models.

Page 13: Towards Method Engineering ofModel-Driven User Interface Development

Usability Goals and Activities

Page 14: Towards Method Engineering ofModel-Driven User Interface Development

Usability Goals and Activities

Page 15: Towards Method Engineering ofModel-Driven User Interface Development

Defining the Method

• The method can be designed using a common process modeling tool that provides a way to select previously defined activities.

• The method engineer can drag and drop any activity, into method flow in the desired or recommended order.

• The activities, as well as their relationships with other activities and conditions for their performance, are organized by roles.

Page 16: Towards Method Engineering ofModel-Driven User Interface Development

Tool SupportDefinition of activities for a model-based UID method based on the Cameleon

Framework

Association of BPMN and SPEM elements to use

business process elements in the method

engineering domain.

Drag and drop activities from the pre-defined list and reuse them when

defining the method for a specific project.

Page 17: Towards Method Engineering ofModel-Driven User Interface Development

A Better Look of the Method

Page 18: Towards Method Engineering ofModel-Driven User Interface Development

Integrated Method

• We aim to define methods that are applicable in software development projects and also provide support for UID.

• The technique to define project-specific methods from parts of existing methods is called method assembly, which can produce a powerful new method.

• Using this technique, we integrate the best from both domains: activities from a world-wide accepted commercial software development process, the Rational Unified Process (RUP); and activities for creating UI models.

(Brinkkemper et al., 1999)(Kruchten, 2000)

Page 19: Towards Method Engineering ofModel-Driven User Interface Development

Defining Integrated Method

Page 20: Towards Method Engineering ofModel-Driven User Interface Development

Intended Results

• Increase the efficiency when tailoring the method

• Make model-driven UID methods applicable in the competitive reality of software development companies

• Method engineers rely on usability goals to define a method, they also profit from clearly specifying goals that must be accomplished after each activity is concluded

• Bring Human-Computer Interaction and Software Engineering closer together in practice

Page 21: Towards Method Engineering ofModel-Driven User Interface Development

Next Steps

• Address the organization and sequence of UID activities in a process lifecycle, such as the organization of activities in phases and disciplines

• Provide guidance for the integration of UID and software engineering activities

• Propose a UID method that aligns business processes and user-centered design from a practical perspective

Page 22: Towards Method Engineering ofModel-Driven User Interface Development

Thank you for your attention

http://www.isys.ucl.ac.be/bchi BCHI Lab

http://www.programalban.orgProgram Alban

http://www.usixml.orgUI extensible Markup Language

http://www.similar.ccEuropean network on Multimodal UIs

Page 23: Towards Method Engineering ofModel-Driven User Interface Development

References

• Ayed, M.B., Ralyte, J., Rolland C. Constructing the Lyee method with a method engineering approach. Knowledge-Based Systems, 17 (7-8), (2004) 239-248

• Brinkkemper, S.: Method engineering: engineering of information systems development methods and tools. Information Software Technology 38, 4 (1996) 275–280

• Brinkkemper, S., Saeki, M., Harmsen, F. Meta-Modelling Based Assembly Techniques for Situational Method Engineering. Information Systems. Vol. 24(3) (1999) 209-228

• Calvary, G., Coutaz, J., Thevenin, D., Limbourg, Q., Bouillon, L. and Vanderdonckt, J. A Unifying Reference Framework for Multi-Target User Interfaces. Interacting with Computers (2003) 289–308

• Kruchten, Ph. The Rational Unified Process - An Introduction. Addison-Wesley, New Jersey (2000)

Page 24: Towards Method Engineering ofModel-Driven User Interface Development

References

• Limbourg, Q., Vanderdonckt, J.: UsiXML: A User Interface Description Language Sup-Porting Multiple Levels of Independence. In: Matera, M., Comai, S. (eds.): Engineering Advanced Web Applications. Rinton Press, Paramus (2004) 325–338

• OMG, Business Process Modeling Notation Specification, 1.0, February, 2006

• OMG, Software Process Engineering Metamodel Specification, V2.0, February 2007

• Rosenbaum, S., Rohn, J.A., Humburg, J.: A toolkit for strategic usability: results from Workshops, Panels and Surveys. In: Proc. of ACM Conf. on Human Factors in Computing Systems Proceedings CHI’2000 (The Hague, April 2000). ACM Press, NY (2000) 337–344

• Saeki, M.: Came: the first step to automated software engineering. In: Proc. of the OOPSLA’03 Workshop on Process Engineering for Object-Oriented and Component-Based Development (2003) 7–18