User interface modeling: Difference between revisions

Content deleted Content added
Tcze (talk | contribs)
m Placing categories
m clean up, typo(s) fixed: ’s → 's
 
(15 intermediate revisions by 14 users not shown)
Line 3:
The term ''user interface modeling'' is mostly used in an [[information technology]] context. A [[user interface]] [[model (abstract)|model]] is a representation of how the end user(s) interact with a computer program or another device and also how the system responds. The modeling task is then to show all the "''directly experienced'' aspects of a thing or device" [Trætteberg2002].
 
Modeling user interfaces is a well-established discipline in its own right. For example, modeling techniques can describe interaction objects, tasks, and lower-level dialogs in user interfaces. Using models as part of user interface development can help capture user requirements, avoid premature commitment to specific layouts and widgets, and make the relationships between an interface’sinterface's different parts and their roles explicit. [SilvaPaton2003].
 
== Languages ==
Line 26:
[[UsiXML]] (USer Interface eXtensible Markup Language) is an XML-based specification language for user interface design.
It supports the description of UI for multiple contexts of use such as Character User Interfaces (CUIs), Graphical
User Interfaces (GUIs), Auditory User Interfaces, and [[Multimodal interaction|Multimodal]] User Interfaces.
 
===DiaMODL===
Line 39:
* [[Navigation model]], defines how the objects that a user view could be navigated through the user interface
* [[Task model]]. (describes the tasks an end user performs and dictates what interaction capabilities must be designed)
* [[User modeling|User model]] (represents the different characteristics of end users and the roles they are playing within the organization)
* [[Platform model]] (used to model the physical devices that are intended to host the application and how they interact with each other)
* [[Dialogue model]] (how users can interact with the objects presentation (as push buttons, commands, etc.), with interaction media (as voice input, touch screen, etc.) and the reactions that the user interface communicates via these objects)
Line 50:
 
===Usage-centered design===
{{main|usageUsage-centered design}}
In usage-centered design, the modeling task is to show how the actual presentation of a planned system and how the user interaction is supposed to happen. This is probably the most praised approach, and it has been used successfully on a variety of small and large-scale projects. Its strengths are in complex problems.
 
== Alternative approaches to model-based UIs ==
The knowknown issueissues of model-based approaches isinclude information restatement and lack of mechanisms to effectively to solve cross-cutting concerns [Cerny2013]. Model-based solutionsolutions can work well on their own, but integration with alternative approaches bringbrings complexity in development and maintenance efforts.
 
===Code-inspection based===
These approaches basesare based on existing general purpose language (GPL) code basebases [Cerny2012]. They inspect the code through meta-programming and assemble a structural model that is transformed to the UI. This approach addresses information restatement. These approaches does not fit to adaptive and context-aware UIs.
 
===Generative programming===
These approaches connect ___domain methods with GPL [Generative programming]. They address crossCross-cutting concerns althoughare onlyaddressed at compile-time, which does not fitdirectly toaccommodate future adaptive UIs that needneeding runtime information.
===Aspect-based UIs===
Aspect-based solution suggested by [Cerny2013][Cerny2013a][AspectFaces] integrates advantages of code-inspection based and generative programming approaches. It inspects existing code and applies aspect oriented methods to address cross-cutting concerns. It works at runtime, reduces information restatement and at the same time separates UI concerns which allows to reuse each independent of others. In the study at [Cerny2013] authors reduce UI code by 32% through aspect=-based UI approach applied to a production system. Main advantages are templating for adjusting the presentation, separate definitions of concerns and mostly generic transformation rules applicable across various data.
 
===Content models===
Models of this kind show the contents of a user interface and its different components. Aesthetics and behavior details are not included in this kind of modelsmodel as it is ina form of usage-centered design modelsmodel.
 
== See also ==
* [[Cognitive ergonomics]]
 
== References ==
Line 75 ⟶ 78:
* [Trevisan2003] – D. Trevisan, J. Vanderdonck, B. Macq, Model-Based Approach and Augmented Reality Systems, Université catholique de Louvain, 1348 Louvain-la-Neuve, Belgium, 2003
* [wwwUMLi] – [http://trust.utep.edu/umli The Unified Modeling Language for Interactive Applications]
* [Cerny2013] – Černý, T. - Čemus, K. - Donahoo, M.J. - Song, M.J.: [http://www.sigapp.org/acr/Issues/V13.4/ACR-13-4-2013.pdf Aspect-driven, Data-reflective and Context-aware User Interfaces Design (page 53). In: ACM SIGAPP Applied Computing Review [online], 2013, vol. 13, no. 4, p.  53-65, {{ISSN |1559-6915}}.
* [Cerny2013a] – Černý, T. - Donahoo, M.J. - Song, E.: [http://dl.acm.org/citation.cfm?id=2513278 Towards Effective Adaptive User Interfaces Design], Proceedings of the 2013 Research in Applied Computation Symposium (RACS 2013), Montreal: ACM, 2013, {{ISBN |978-1-4503-2348-2}}.
* [AspectFaces] – [{{cite web | url=http://www.aspectfaces.com/overview | title=AspectFaces] | archive-url=https://web.archive.org/web/20190202175033/http://www.aspectfaces.com/overview | archive-date=2 Feb 2019 | publisher=Coding Crayons s.r.o. | url-status=usurped}}
* [Cerny2012] – T. Cerny and E. Song. [httphttps://scholar.google.com/scholar?cluster=12280381045153079495&hl=en Model-driven Rich Form Generation]. Information: An International Interdisciplinary Journal, 15(7, SI):2695--27142695–2714, JUL 2012.
* [Generative programming] – Krzysztof Czarnecki and Ulrich W. Eisenecker. 2000. [httphttps://www.amazon.com/Generative-Programming-Methods-Tools-Applications/dp/0201309777 Generative Programming: Methods, Tools, and Applications]. ACM Press/Addison-Wesley Publ. Co., New York, NY, USA.
 
[[Category:User interface markup languages]]