Stanford University 1 CADUI' June FUNDP Namur The Mecano Project Angel R. Puerta Knowledge Systems Laboratory Stanford University Stanford (USA)
Stanford University 2 CADUI' June FUNDP Namur Outline Mecano The Mecano Project Phase I: Modeling Language Phase II: Software Environment
Stanford University 3 CADUI' June FUNDP Namur Mecano ( ) Environment to automate interface design for knowledge-acquisition tools Domain-driven interface generation Target interfaces: –Form and graph-based interfaces Current Uses: –Medical and educational applications
Stanford University 4 CADUI' June FUNDP Namur Mecano Target Interfaces (1) Entry forms for medical treatment specification interface (over 60 windows total)
Stanford University 5 CADUI' June FUNDP Namur Mecano Target Interfaces (2) Domain-specific graphical editor
Stanford University 6 CADUI' June FUNDP Namur Mecano Paradigm Domain model provides information needed to build an application- specific design from the generic interface model Domain Model Domain Model Generic Interface Model Generic Interface Model Automatic Designer Automatic Designer Application- Specific Interface Design Application- Specific Interface Design
Stanford University 7 CADUI' June FUNDP Namur The Mecano Project A model-based approach to: –Define a comprehensive ontology of user interfaces –Develop an open architecture supporting interface development for the interface ontology –Provide a standard resource to the HCI community
Stanford University 8 CADUI' June FUNDP Namur The Mecano Project Paradigm Editors Design Exploration Critics Automatic Design Assistants Workplace User Platform Behavior Dialogue Tasks Application Presentation Workplace User Platform Behavior Dialogue Tasks Application Presentation Refinements Generated Interface Runtime System Generic Design Tools Interface Model
Stanford University 9 CADUI' June FUNDP Namur Phase I: Interface Ontology Strategy Examination of existing MB systems Definition of a modeling language Definition of interface ontology
Stanford University 10 CADUI' June FUNDP Namur Problems with Existing Systems Partial interface models Insufficient underlying modeling paradigm System-dependent models Inflexible models Private models
Stanford University 11 CADUI' June FUNDP Namur The MIMIC Modeling Language –A metalevel approach to modeling –Is NOT an interface modeling language –Defines structure and organization for interface models –Offers component-based view –Assigns explicit roles to interface components –Discards the idea of single generic interface models –Allows the definition of Mecano Interface Models (MIMs)
Stanford University 12 CADUI' June FUNDP Namur MIMIC & MIM Meta-Level Modeling: MIMIC Generic Models: MIM Application-Specific Models Organization and Structure Vocabulary Interface Specifications define refine into
Stanford University 13 CADUI' June FUNDP Namur Key MIMIC Underlying Concepts Interface: –A set of objects belonging to the interface model components Interface Design: –The relationships among the objects in an interface
Stanford University 14 CADUI' June FUNDP Namur MIMIC Interface Components Object Components –User task, domain, presentation, dialog, user... Design Component ::= * + ::= + | + | + | + | + | + ::= * + ::= + | + | + | + | + | +
Stanford University 15 CADUI' June FUNDP Namur Validation of MIM Models Paper-based validation –Developers wrote interfaces using MIMIC & MIM Interfaces of various complexities –Toy-level –Geometry editor –Portions of a web browser
Stanford University 16 CADUI' June FUNDP Namur Phase Two: Tool Support Model-Based Interface Designer (Mobi-D) Integrated environment/ Open architecture Interactive tools for each model component No automatic generation of interfaces Developer-driven interface generation
Stanford University 17 CADUI' June FUNDP Namur MIMIC interface components and Mobi-D tools Each interface component requires one (or more) Mobi-D tools MIMIC does not limit the representation of interface components ::= * ::= *<user-task>+ * * * ** * ** ::= * ::= *<user-task>+ * * * ** * **
Stanford University 18 CADUI' June FUNDP Namur MOBI-D: Model Component Editor Generic model area provides ready-made objects for interface model construction Properties area allow editing of attributes
Stanford University 19 CADUI' June FUNDP Namur MOBI-D: Creating a User-Task Model Developer drags generic task object into current model 2. Developer modifies default attributes as needed 3. Optionally, developer adds new task to generic area for potential future use 1. Developer drags generic task object into current model 2. Developer modifies default attributes as needed 3. Optionally, developer adds new task to generic area for potential future use
Stanford University 20 CADUI' June FUNDP Namur MOBI-D: Creating a Domain Model l Interaction is similar to that of the user task editor l Developers benefit from a common interaction paradigm for all model components l Interaction is similar to that of the user task editor l Developers benefit from a common interaction paradigm for all model components
Stanford University 21 CADUI' June FUNDP Namur MOBI-D: Putting It all Together with Design Views l Developer has switched pane from generic to design view l All interface model elements related to ‘loading the cannon’ are displayed l Additional related elements can be dragged- and-dropped from other model component editors l Developer has switched pane from generic to design view l All interface model elements related to ‘loading the cannon’ are displayed l Additional related elements can be dragged- and-dropped from other model component editors These items were recommended by MOBI-D and accepted by developer
Stanford University 22 CADUI' June FUNDP Namur Summary Metalevel approach to modeling Multiple generic models Multiple interface components allowed Component-based tool support Developer-driven interface generation
Stanford University 23 CADUI' June FUNDP Namur Vision for Mecano MIMIC & MIM available to HCI community Developers build many additional generic models Mobi-D available Developers add tools to open architecture Integration with application development environments