integrating heterogeneous tools into model centric
play

Integrating Heterogeneous Tools into Model-Centric Development of - PowerPoint PPT Presentation

Andreas Pleuss, Arnd Vitzthum, Heinrich Hussmann University of Munich Integrating Heterogeneous Tools into Model-Centric Development of Interactive Applications Integrating Heterogeneous Tools Into Model-Centric Development Introduction


  1. Andreas Pleuss, Arnd Vitzthum, Heinrich Hussmann University of Munich Integrating Heterogeneous Tools into Model-Centric Development of Interactive Applications

  2. Integrating Heterogeneous Tools Into Model-Centric Development Introduction • MDD: Systematic, well-structured application development, teamwork, platform-independence, maintainability, etc. … • User interface design: Usability of the application, user interface elements and interaction paradigms for new devices, aesthetics of the user interface, etc. … • Common practice in UI design: User-Centered Design • Find out user‘s tasks, needs and properties to provide an optimized UI • Achieved by permanent user feedback and user tests • Based on various prototypes of different granularity • Examples: – Mock-ups for first ideas and basic requirements – Lo-fi prototypes like paper prototypes for first tests of task flow and interaction – Hi-fi prototypes like click-dummies for more detailed interaction October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 2

  3. Integrating Heterogeneous Tools Into Model-Centric Development Tools Used by User Interface Designers • Support creativity • Support visual, direct manipulation • Various heterogeneous tools for different development steps • Examples: – Drawing and image editing tools, like Photoshop , Illustrator , etc., e.g. used for creation of Mock-Ups – Authoring tools like Flash , e.g. used for creation of click-dummies • Visual tools also used for final implementation; in particular for complex (non-standard) user interfaces – Multimedia user interfaces often implemented by authoring tools like Flash or Director – 3D user interfaces implemented by 3D graphics tools like 3D studio max October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 3

  4. Integrating Heterogeneous Tools Into Model-Centric Development Problem • MDD for efficient high- • User-Centered Design for quality application high-quality user interface development development • Systematic and abstract • Creative and concrete • Problem: Low acceptance • Involves graphical and understandability for designers, users and people without technical customers background Clash of cultures between abstract models of software engineers and concrete and creative tools/artifacts in user interface design October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 4

  5. Integrating Heterogeneous Tools Into Model-Centric Development Proposed Solution • Abstract model adopts role to integrate the heterogeneous artifacts and tools • Extract (automatically) the relevant information from artifacts from user interface design into the model • Create skeletons for creative tools from the models • Advantages: – Integration and coordination of interdisciplinary work – Increased consistency – Efficiency → Models as “central hub” in the development process October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 5

  6. Integrating Heterogeneous Tools Into Model-Centric Development Models as “Central Hub” in the Development Process Flash Click-Dummy GUI Builder Photoshop Mock-Up Model IDE 3D Authoring Tool Multimedia Authoring Tool October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 6

  7. Integrating Heterogeneous Tools Into Model-Centric Development Automatic Extraction of Information: Conventions • Sometimes necessary: Certain basic conventions for designers to enable automatic analysis of their results • Naming conventions to specify the semantics of elements • Simple structure conventions • But: User Interface Designers already used to conventions and guidelines (e.g. usability guidelines) October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 7

  8. Integrating Heterogeneous Tools Into Model-Centric Development Outline for the Remaining talk: Concrete Examples 1. From Prototypes to Models: 1.Flash Click-Dummies to Models 2.Photoshop Mock-Ups to Models 2. From Models to Code Skeletons 1.From MML Models to Flash 2.From SSIML Models to 3D Authoring Tools October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 8

  9. Integrating Heterogeneous Tools Into Model-Centric Development Transition: From Tools to Models Model Transformations Helper Tool/ Plugin/Script Abstract Model 1 PSM Tool/ corresponding Artifact to Artifact Abstract Model n October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 9

  10. Integrating Heterogeneous Tools Into Model-Centric Development From Flash Click-Dummies to Models Model Transformations (e.g. ATL) Execution of JSFL file UI Model 1 Flash Flash Document Model (FLA File) UI Model x October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 10

  11. Integrating Heterogeneous Tools Into Model-Centric Development Adobe Flash • Popular professional multimedia authoring tool • Supports integration of different media objects and creation of 2D graphics and animation – File format: proprietary, binary FLA files • Integrated scripting language ActionScript – Either embedded within FLA document or as separate class files (*. as ) October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 11

  12. Integrating Heterogeneous Tools Into Model-Centric Development Timeline Drawing Stage Tools October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 12

  13. Integrating Heterogeneous Tools Into Model-Centric Development October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 13

  14. Integrating Heterogeneous Tools Into Model-Centric Development From Flash Click-Dummies to Models Model Transformations (e.g. ATL) Execution of JSFL file UI Model 1 Flash Flash Document Model (FLA File) UI Model x October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 14

  15. Integrating Heterogeneous Tools Into Model-Centric Development Flash Metamodel (Simplified Extract) FlashDocument +document +document backgroundColor : String 1 1 0..1 0..1 timeline 1..n 1..n frameRate : Double 1 1 0..n 0..n +timeline height : Integer +frame Timeline Layer Frame width : Integer +layer +layer 1..n 1..n 1 1 0..1 0..1 1 1 1 1 +frame +frame +library 1 1 Library +element 0..n 0..n +timeline +library 1 1 Element depth : Integer 0..1 0..1 +actionScript height : Double 0..n 0..n +item left : Double ASScript Item Class name : String top : Double 0..1 0..1 +actionScript name : String +actionScript width : Double 0..1 0..1 0..1 0..1 +symbolItem BitmapItem FontItem SymbolI tem Text Shape Instance +libraryItem 0..1 0..1 1 1 +symbol SoundItem VideoItem ComponentInstance MovieClip SymbolInstance October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 15

  16. Integrating Heterogeneous Tools Into Model-Centric Development From Flash Click-Dummies to Models Model Transformations (e.g. ATL) Execution of JSFL file UI Model 1 Flash Flash Document Model (FLA File) UI Model x October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 16

  17. Integrating Heterogeneous Tools Into Model-Centric Development Extracting information • How to extract information from proprietary, binary Flash files? • Available: Flash authoring tool provides a plug-in mechanism: – Plug-ins are scripts written in JSFL (Java Script for Flash) – JSFL provides kind of document object model for Flash documents • Solution for our purpose: JSFL script browses through document and outputs XML for each found element • Result: “Flash model” conform to the Flash metamodel which we have specified (implemented with EMF) • In addition: Parser for ActionScript code (implemented with JavaCC) October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 17

  18. Integrating Heterogeneous Tools Into Model-Centric Development From Flash Click-Dummies to Models Model Transformations (e.g. ATL) Execution of JSFL file UI Model 1 Flash Flash Document Model (FLA File) UI Model x October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 18

  19. Integrating Heterogeneous Tools Into Model-Centric Development Abstract Models • Must include information on the user interface • E.g. modeling languages for model-driven user interface development, like UsiXML, DynamoAid, TERESA, and many others – See e.g. MODELS workshops on “Model Driven Development of Advanced User Interfaces“ • Main concepts of such languages: – Presentation Units (i.e. „screens“ in case of a visual UI) – Abstract user interface elements, like input component , output component , selection component , etc. – Interaction, Navigation – Relationships to domain model (i.e. application logic) October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 19

  20. Integrating Heterogeneous Tools Into Model-Centric Development From Flash Click-Dummies to Models Model Transformations (e.g. ATL) Execution of JSFL file UI Model 1 Flash Flash Document Model (FLA File) UI Model x October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 20

  21. Integrating Heterogeneous Tools Into Model-Centric Development Transformation (Sketch) • Frames from timeline mapped to presentation units • Widgets mapped to corresponding abstract UI elements • Jumps between screens (action script command gotoAndStop() ) mapped to navigation October 4, 2007 A. Pleuss, A. Vitzthum, H. Hussmann 21

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend