Title: UMLi: The Unified Modeling Language for Interactive Applications
1UMLi The Unified Modeling Language for
Interactive Applications
- Paulo Pinheiro da Silva and Norman W. Paton
- Department of Computer Science,
- University of Manchester
2Outline
- User interface (UI) modelling with UML
- Background
- UMLi
- ARGOi
- Conclusions
- Future work
3User Interface Modelling with UML (1/2)
- UML is a standard intended for modelling any
software application. - User interfaces are a crucial part of most
applications.
HOWEVER UIs are usually not modelled using UML.
4User Interface Modelling with UML (2/2)
- The limited use of UML for modelling UIs is
evidence that UML may not be entirely suitable
for UI design. - Which aspects of UIs cannot be modelled
effectively using standard UML? - How can UML be improved to support modelling of
such UI aspects effectively?
But then...
5Background
- UI modelling difficulties using UML
-
- an approach for extending UML support for UI
design
- UML-based interactive application case studies
- Model-Based User Interface Development
Environment techniques
Identify...
Provide...
6UMLi Proposal
- Main features of the UMLi proposal
- User Interface Diagrams
- Activity Diagram Extensions
- From use cases to activities
- From activities to action states
- Methodology
7Modelling UI Presentations
- Abstract constructors are required to model UI
presentations. - Abstract constructors should eventually be mapped
into widgets.
- 9 instances of 6 widgets.
8A UI Presentation
- In object diagrams, it is difficult to
graphically realise - Interaction object containment.
ConnectionUI FreeContainer
integrate
integrate
DataBox Container
ButtonBox Container
compose
compose
compose
PasswordLabel Displayer
LoginText Inputter
compose
compose
compose
OK ActionInvoker
Cancel ActionInvoker
PasswordText Inputter
LoginLabel Displayer
9A UI Presentation
- In object diagrams, it is difficult to
graphically realise - Interaction object containment
- Which abstract roles interaction objects are
playing
Different roles
ConnectionUI FreeContainer
integrate
integrate
DataBox Container
ButtonBox Container
compose
compose
compose
PasswordLabel Displayer
LoginText Inputter
compose
compose
compose
OK ActionInvoker
Cancel ActionInvoker
PasswordText Inputter
LoginLabel Displayer
Similar roles
10A UMLi UI Presentation
- UMLi UI diagrams provide graphical
representations for - containment of interaction objects
- abstract roles of interaction objects
ConnectionUI
Password
Login
Cancel
LoginText
PasswordText
OK
11From Use Cases and theirScenarios to Activities
ltltcommunicatesgtgt
Connect
Connect
LibraryUser
Connect
ltltpresentsgtgt
John, a library user, must provide
his details to gain access to the library system
Select Function
12Modelling Common Interactive Behaviours
- The modelling of some categories of transition
may be simple using activity diagrams - Sequential transitions
- Concurrent transitions
- Choices
- However, the modelling of other categories of
transition may be complex - Optional transitions
- Order independent transitions
- Repeatable transitions
Connect
GetDetails
new SelectHist
SelectHist
Select
GetName in SelectHist
GetPassord in SelectHist
GetName
GetPassword
GetName
GetPassword
GetName GetPassword in SelectHist
TryConnection
SelectFunction
13UMLi Selection States
- UMLi introduces the SelectionState constructors
for modelling - Optional transitions
- Order independent transitions
- Repeatable transitions
Connect
GetDetails
GetName
GetPassword
TryConnection
SelectFunction
14UMLi Interaction Object Flow
15ARGOi A UMLi-Based Tool (1/2)
- ARGOi is an extended version of UCIs ARGO
- The tool incorporates the following UMLi
features - UI diagram editor
16ARGOi A UMLi-Based Tool (2/2)
- UMLi Extended Activity Diagram features
- Interaction object flow support
- UMLi XMI parser/generator
17Conclusions (1/2)
- UML needs to be extended to simplify the
modelling of the following aspect of UIs - UI presentations
- Interactive behaviour (inter-object transitions)
- Collaboration between interaction objects and
non-interaction objects
18Conclusions (2/2)
- UML for Interactive Applications (UMLi) is a
proposal for extending UML that addresses these
relevant problems of modelling UIs using UML. - Further, UMLi provides
- a notation, meta-model and XMI DTD specification
- ARGOi A UMLi-based open source tool
- A complete UMLi case study modelled in ARGOi.
19Future Work
- An industrial case study of using UMLi
- Design metric comparison between UML and UMLi
- UMLi methodology evaluation
- An implementation of UI software generation from
UMLi models
20Further Information
- Further information about UMLi can be obtained
at - http//img.cs.man.ac.uk/umli