towards a generic cloud-based modeling environment

Post on 12-May-2015

395 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Towards a Generic Cloud-based Modeling Environment

Laszlo Juracz and Larry Howard

Institute for Software Integrated Systems at Vanderbilt University Nashville, U.S.A.

International Conference on Digital Information Processing and Communications, Ostrava, Czech Republic, July 7-9, 2011.

Our focus

Diagrams Models DSMLs

v

Visual Languages

FRAMEWORK

Browser-based apps components widgets modules

Deployed in a collaborative cloud computing educational ... environment

What are diagrams?

- Visualize ideas and depict information

Land-mapsReligious ideas

Prehistoric times

Mathematical- and Scientific concepts

Ancient times Computers, Graphical UI

Scientific and Engineering diagrams,

Standard notations

Models in SE and DSMLs

Diagrammatic appearance Constraints, strictly enforced visual syntax

Interpreter Validation (semantics) Code Simulations Analysis …

Requirements

What would we want from a diagramming/modeling tool operating in the cloud?

No installation, runs in the browser Accessible / usable on various devices Share my stuff with others Work on the same documents simultaneously,

individually or in a collab. env. (virtual whiteboarding) Cloud storage

Some of it is already out there…

No installation, runs in the browser Accessible / usable on various devices Share my stuff with others Work on the same documents simultaneously,

individually or in a collab. env. (virtual whiteboarding) Cloud storage

☻☻☹☻☻☹☻

Some of it is already out there… … but we want more

No installation, runs in the browser Accessible / usable on various devices Share my stuff with others Work on the same documents simultaneously,

individually or in a collab. env. (virtual whiteboarding) Cloud storage

☻☻☹☻☻☹☻

☹☹

☹☹

Version control (fork, revert, merge, resolve conflicts) Provides gateways to external services/processes

(analysis, deployment, …) Can be embedded / integrated / toolchained Re-usable, generic

Design challenges

Use-case 1:HTML-based Educational Diagramming Tool

Design criteria

Usability and User Experience Revamp of the old Flash UI in HTML/JS Smooth UX, intuitive UI, affordance Device-agnostic performance Suitable for educational apps Accessible by users with various skill levels U

ser-

cent

ered

des

ign

Extendibility and Configurability Understands a Descriptor Language (meta) Interaction and integration with remote services Handles user permissions UI adapts to author/edit modes

Use-case 2:Modeling in the browser

Vision of a future collaborative work environment for MIC Discover Share / Publish Version Control Plugin architecture for extendibility Provides interface

to interpreters to other modeling services (validation, analysis, simulation)

Optimistic locking, conflict resolution

Model visualizer for conflict resolution

Usability vs. Constraint Checking (in the browser)

Constraints enforce syntax and semantic rulesDiagram- and model building is guarded by constraints:

Constraint-violating operations should be not allowed or Should be Aborted and Warning message should be issued UI should inform the user of allowed edit operations

Usability vs. Constraint Checking (in the browser)Full-scale solution would rely on

constant constraint checking and running remote interpreters could not be entirely ported to the client-side (JS platform) would cause terrible user experience.

The concept of lightweight constraints (LWC) optimal subset of all the constraints and rules checked directly on the client side in JS enforced construction-time, preferably in advance: it prevents

constraint-validation by blocking the user from doing it. Complete validation, including remote interpretation should be

triggered less frequently / manually.

Concept overview

Architecture

HTML(5) / JS

Python / TurboGears

Instances Descriptor Language

Library Package

Re-sable, extendible base classes UI is implemented in jQuery Custom UI controls

User operations are logged, deltas are saved LWC checking, operations can be rolled back LWC can be defined in library descriptor

Status and future

Preliminary design challenges are successfully discovered Client side core is under testing /development Prototypes of educational apps built on the framework

will be utilized in classroom experiments in fall 2011 (FBD, flowcharts)

Model visualizer will be delivered in 2012 Design of the server side module is getting finalized Looking for new opportunities

Laszlo Juraczlaszlo.juracz@vanderbilt.edu

Thank you!

top related