Automatic Generation of user Interface Models and Prototypes from Domain and Use Case Models

The development of interactive systems typically involves the separate design and development of disparate system components by different software developers. The user interface (UI) is the part of an interactive system through which a user can access the system functionality. User interface development is a complex task that typically involves the construction of prototypes and/or models. A prototype facilitates the communication with the stakeholders, especially with the end users, and allows for the validation of elicited requirements. Modelling is a well established way people take for dealing with complexity. A model allows one to focus on important properties of the system being modelled and abstract away from unimportant issues. Software models may capture relevant parts of the problem and solution domains and are typically used as a means for reasoning about the system properties and for communicating with the stakeholders. The user interface tends to be viewed differently, depending on what community the UI designer belongs to. UI designers that are more identified with the Software Engineering (SE) community tend to highlight the system functionality issues, and how it encapsulates system behaviour to provide to the user. UI designers that are more identified with the Human-Computer Interaction (HCI) community tend to focus on user task analysis and the way the user shall work on the UI. According to the HCI perspective, one of the concerns that shall be modelled is the user intended tasks on the interactive system, and this is made through the development of user task analysis. Typically, task analysis and modelling involve the development of goal and task hierarchies and the identification of objects and actions involved in each task (Dix et al., 1998). Besides this task model, a view of the UI relevant aspects of the system core structure and functionality may also be modelled, along with a UI presentation model, in order to complete the whole interactive system model. In the SE community, a common practice is to build a Unified Modelling Language (UML) system model, comprising a domain model and a use case model, supplemented by a non-functional UI prototype, in the early stages of the software development process (Jacobson et al., 1999; Pressman, 2005). The domain model captures the main system’s domain classes, its attributes, relations and, in some cases, its operations, through UML class diagrams. The use case model captures the main system functionalities from the user’s point of view

[1]  Oscar Pastor,et al.  Specifying conceptual interface patterns in an object-oriented method with automatic code generation , 2001, Proceedings Second International Workshop on User Interfaces in Data Intensive Systems. UIDIS 2001.

[2]  A. M. Rosado da Cruz,et al.  Automatic Generation of User Interfaces from Domain and Use Case Models , 2007 .

[3]  Paulo Pinheiro da Silva,et al.  User interface declarative models and development environments: a survey , 2000 .

[4]  João Pascoal Faria,et al.  Automatic Generation of User Interfaces from Domain and Use Case Models , 2007, 6th International Conference on the Quality of Information and Communications Technology (QUATIC 2007).

[5]  Anke Dittmar,et al.  From Models to Interactive Systems Tool Support and XIML , 2004, MBUI.

[6]  Adam Steele,et al.  Executable visual software modeling—the ZOOM approach , 2007, Software Quality Journal.

[7]  Anneke Kleppe,et al.  MDA explained - the Model Driven Architecture: practice and promise , 2003, Addison Wesley object technology series.

[8]  김수동,et al.  [서평]「Software Engineering : A Practitioner's Approach, 4^(th) Edition」 , 1997 .

[9]  Pedro J. Molina User interface generation with OlivaNova model execution system , 2004, IUI '04.

[10]  João Pascoal Faria,et al.  Automatic Generation of Interactive Prototypes for Domain Model Validation , 2008, ICSOFT.

[11]  A. Silva,et al.  The ProjectIT-Studio UMLModeler : A tool for the design and transformation of UML models , 2008 .

[12]  Pedro J. Molina Just-UI : Using patterns as concepts for IU specification and code generation , 2003 .

[13]  Ahmed Seffah,et al.  Pattern-Based UI Design: Adding Rigor with User and Context Variables , 2006, TAMODIA.

[14]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[15]  Anke Dittmar,et al.  Linking GUI elements to tasks: supporting an evolutionary design process , 2005, TAMODIA '05.

[16]  Kevin A. Schneider,et al.  Task Models and Diagrams for Users Interface Design, 5th International Workshop, TAMODIA 2006, Hasselt, Belgium, October 23-24, 2006. Revised Papers , 2007, TAMODIA.

[17]  Juha-Pekka Tolvanen,et al.  Domain-Specific Modeling: Enabling Full Code Generation , 2008 .

[18]  Cnuce,et al.  Task Models in Interactive Software Systems , 2000 .

[19]  Nuno Jardim Nunes,et al.  Object modeling for user-centered development and user interface design: the wisdom approach , 2001 .

[20]  Adam Steele,et al.  Using ZOOM Approach to Support MDD , 2004, Software Engineering Research and Practice.

[21]  Oscar Pastor,et al.  Model-driven architecture in practice - a software production environment based on conceptual modeling , 2007 .

[22]  Paulo Pinheiro,et al.  User Interface Declarative Models and Development Environments: A Survey , 2000, DSV-IS.

[23]  Anke Dittmar,et al.  Task models as basis for requirements engineering and software execution , 2004, TAMODIA '04.

[24]  Ismaïl Khriss,et al.  Automated Prototyping of User Interfaces Based on UML Scenarios , 2006, Automated Software Engineering.

[25]  Roger Pressman,et al.  Software Engineering: A Practitioner's Approach, 7Th Edition , 2009 .

[26]  Ivar Jacobson,et al.  The Unified Software Development Process , 1999 .

[27]  Ahmed Seffah,et al.  PIM Tool: Support for Pattern-Driven and Model-Based UI Development , 2006, TAMODIA.

[28]  Peter Forbrig,et al.  Tool Support for Model-Based Generation of Advanced User Interfaces , 2005, MDDAUI.

[29]  Alberto Rodrigues da Silva The XIS Approach and Principles , 2003, EUROMICRO.

[30]  Rui Silva,et al.  XIS-UML Profile for eXtreme Modeling Interactive Systems , 2007, Fourth International Workshop on Model-Based Methodologies for Pervasive and Embedded Software (MOMPES'07).

[31]  Oscar Pastor,et al.  From early requirements to user interface prototyping: a methodological approach , 2002, Proceedings 17th IEEE International Conference on Automated Software Engineering,.