towards a generic cloud-based modeling environment
Post on 12-May-2015
395 Views
Preview:
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