290 likes | 464 Vues
UI/UI prototype generation. Sum Pham. Contents. Framework overview Current approaches Introduce a model-driven user interface generation. Framework overview. Declarative models?. Contents. Framework overview Current approaches Introduce a model-driven user interface generation.
E N D
UI/UI prototype generation Sum Pham
Contents • Framework overview • Current approaches • Introduce a model-driven user interface generation
Framework overview Declarative models?
Contents • Framework overview • Current approaches • Introduce a model-driven user interface generation
Contents • XIS approach (Silva et al., 2007; Silva & Videira, 2008; Silva, 2003) • The OO-Method approach (Pastor & Molina, 2007; Pastor et al., 2004; Molina, 2004; Molina & Hernández, 2003) • The ZOOM approach (Jiaet al., 2005) • Martinez methodology (Martinez et al., 2002) • Elkoutbiapproach(Elkoutbiet al., 2006) • Forbrig approach (Wolff et al., 2005a; Wolff et al., 2005b; Javahery et al., 2007; Radeke et al., 2007; Forbrig et al., 2004; Reichart et al., 2004)
The XIS approach • Model-to-model generation • Separates modelling of different system into sub-models: • Entities view • Use Case view • User Interface view • Has two approaches • Dummy approach • Smart approach
The XIS approach - Dummy • Entities View: Composes only domain model • Use case view: only defines an actors’ hierarchy (actors view) • User interface view: must be fully specified comprising an Interaction Spaces View: • Abstract screens • Navigation Space View
The XIS approach - Smart • Entities View: • Domain View: models the domain entities by using a UML class model + XIS-profile stereotyped • Business Entities View: group domain entities • Use-Cases View: • Actors View: defines the hierarchy of actors • UseCasesView: identifies use cases and relates each actor with the use cases • User-Interfaces View: can be generated from other models A XIS model may, then, be inputted to a model to code (M2C) generation process
Contents • XIS approach (Silva et al., 2007; Silva & Videira, 2008; Silva, 2003) • The OO-Method approach (Pastor & Molina, 2007; Pastor et al., 2004; Molina, 2004; Molina & Hernández, 2003) • The ZOOM approach (Jiaet al., 2005) • Martinez methodology (Martinez et al., 2002) • Elkoutbiapproach(Elkoutbiet al., 2006) • Forbrig approach (Wolff et al., 2005a; Wolff et al., 2005b; Javahery et al., 2007; Radeke et al., 2007; Forbrig et al., 2004; Reichart et al., 2004)
The OO-Method approach • Producing a formal specification of a software system using OASIS(the execution model.). • Graphically model a system at a conceptual level → OASIS specification: • Object Model(UML class diagram): capturing domain classes and classes associated to user roles. • Dynamic Model: Used to specify valid object lifecycles and interaction between objects. • Object lifecycles: state transition diagram/class • Object interactions: interaction diagram • Functional Model: the semantics of change of state • Presentation Model: How users will interact with the system
Contents • XIS approach (Silva et al., 2007; Silva & Videira, 2008; Silva, 2003) • The OO-Method approach (Pastor & Molina, 2007; Pastor et al., 2004; Molina, 2004; Molina & Hernández, 2003) • The ZOOM approach (Jiaet al., 2005) • Martinez methodology (Martinez et al., 2002) • Elkoutbiapproach(Elkoutbiet al., 2006) • Forbrig approach (Wolff et al., 2005a; Wolff et al., 2005b; Javahery et al., 2007; Radeke et al., 2007; Forbrig et al., 2004; Reichart et al., 2004)
The ZOOM approach • ZOOM: Z-based OO modelling notation • Separates an application into three parts: • Structure: ZOOM for structural models • Behaviour: ZOOM-FSM • User-interface: ZOOM-UIDL • Java-like textual syntax for structural and behavioural models • XML-based language for the User-Interface model • ZOOM provides a graphical representation of models consistent with UML diagrams
Contents • XIS approach (Silva et al., 2007; Silva & Videira, 2008; Silva, 2003) • The OO-Method approach (Pastor & Molina, 2007; Pastor et al., 2004; Molina, 2004; Molina & Hernández, 2003) • The ZOOM approach (Jiaet al., 2005) • Martinez methodology (Martinez et al., 2002) • Elkoutbiapproach(Elkoutbiet al., 2006) • Forbrig approach (Wolff et al., 2005a; Wolff et al., 2005b; Javahery et al., 2007; Radeke et al., 2007; Forbrig et al., 2004; Reichart et al., 2004)
Martinez methodology • Extracting use cases and actors from the business process model • Build sequence diagrams for each use case • Enriched sequence diagrams with UI related information. • Generating application forms and state transition diagrams for the interface objects and control objects present in the sequence diagrams
Contents • XIS approach (Silva et al., 2007; Silva & Videira, 2008; Silva, 2003) • The OO-Method approach (Pastor & Molina, 2007; Pastor et al., 2004; Molina, 2004; Molina & Hernández, 2003) • The ZOOM approach (Jiaet al., 2005) • Martinez methodology (Martinez et al., 2002) • Elkoutbiapproach(Elkoutbiet al., 2006) • Forbrig approach (Wolff et al., 2005a; Wolff et al., 2005b; Javahery et al., 2007; Radeke et al., 2007; Forbrig et al., 2004; Reichart et al., 2004)
Elkoutbi approach • Start with system domain structural model and a use case model • Formalizing each use case through a set of UML collaboration diagrams
Elkoutbi approach • Collaboration diagram message is manually labelled with UI constraints (inputDataand outputData)
Elkoutbi approach • A statechart is created for each distinct class in a collaboration diagram
Elkoutbi approach • Generate UI prototypes for every interface object defined in the class diagram
Contents • XIS approach (Silva et al., 2007; Silva & Videira, 2008; Silva, 2003) • The OO-Method approach (Pastor & Molina, 2007; Pastor et al., 2004; Molina, 2004; Molina & Hernández, 2003) • The ZOOM approach (Jiaet al., 2005) • Martinez methodology (Martinez et al., 2002) • Elkoutbiapproach(Elkoutbiet al., 2006) • Forbrig approach (Wolff et al., 2005a; Wolff et al., 2005b; Javahery et al., 2007; Radeke et al., 2007; Forbrig et al., 2004; Reichart et al., 2004)
Interactively generates an abstract UI model, and then a concrete UI • Start with: • Task model • Business objects model • User model • Device model • Create more concrete models by modeller(computer assisted: DiaTask tool, PIM Tool)
Contents • Framework overview • Current approaches • Introduce a model-driven user interface generation
model-driven UI generation and development • From Domain and Use Case Models • General approach
model-driven UI generation and development • Domain model: UML class diagram, with classes (base domain entities), attributes and relationships • Simple domain model (DM):first iterations • Extended domain model (EDM): domain model is extended with additional features. • Use case model (UCM): integrated with the EDM • On each iteration, the generated UI may be tuned by a UI designer • Output UI is in a XML-based UI description language