Towards a Generic Cloud-based Modeling Environment

534 views
479 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
534
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Towards a Generic Cloud-based Modeling Environment

  1. 1. Towards a Generic Cloud-based Modeling Environment<br />Laszlo Juracz and Larry Howard<br />Institute for Software Integrated Systems at Vanderbilt University<br />Nashville, U.S.A.<br />International Conference on Digital Information Processing and Communications, Ostrava, Czech Republic, July 7-9, 2011.<br />
  2. 2. Our focus<br />
  3. 3. v<br />FRAMEWORK<br />Visual Languages<br />Diagrams<br />Models<br />DSMLs<br />Deployed in a<br /><ul><li> collaborative
  4. 4. cloud computing
  5. 5. educational</li></ul> ... environment<br />Browser-based<br /><ul><li> apps
  6. 6. components
  7. 7. widgets
  8. 8. modules</li></li></ul><li>What are diagrams?<br />- Visualize ideas and depict information<br />Ancient times<br />Computers, Graphical UI<br />Prehistoric times<br />Land-maps<br />Religious ideas<br />Mathematical- and <br />Scientific concepts<br />Scientific and <br />Engineering diagrams,<br />Standard notations<br />
  9. 9. Models in SE and DSMLs<br /><ul><li>Diagrammatic appearance
  10. 10. Constraints, strictly enforced visual syntax</li></ul>Interpreter<br /><ul><li>Validation (semantics)
  11. 11. Code
  12. 12. Simulations
  13. 13. Analysis
  14. 14. …</li></li></ul><li>Requirements<br />
  15. 15. What would we want from a diagramming/modeling tool operating in the cloud?<br /><ul><li>No installation, runs in the browser
  16. 16. Accessible / usable on various devices
  17. 17. Share my stuff with others
  18. 18. Work on the same documents simultaneously, individually or in a collab. env. (virtual whiteboarding)
  19. 19. Cloud storage</li></li></ul><li>Some of it is already out there…<br />☹<br />☻<br /><ul><li>No installation, runs in the browser
  20. 20. Accessible / usable on various devices
  21. 21. Share my stuff with others
  22. 22. Work on the same documents simultaneously, individually or in a collab. env. (virtual whiteboarding)
  23. 23. Cloud storage</li></ul>☻<br />☹<br />☻<br />☻<br />☹<br />☻<br />
  24. 24. Some of it is already out there… … but we want more<br />☹<br />☻<br /><ul><li>No installation, runs in the browser
  25. 25. Accessible / usable on various devices
  26. 26. Share my stuff with others
  27. 27. Work on the same documents simultaneously, individually or in a collab. env. (virtual whiteboarding)
  28. 28. Cloud storage</li></ul>☻<br />☹<br />☻<br />☻<br />☹<br />☻<br />☹<br /><ul><li>Version control (fork, revert, merge, resolve conflicts)
  29. 29. Provides gateways to external services/processes (analysis, deployment, …)
  30. 30. Can be embedded / integrated / toolchained
  31. 31. Re-usable, generic</li></ul>☹<br />☹<br />☹<br />
  32. 32. Design challenges<br />
  33. 33. Use-case 1:HTML-based Educational Diagramming Tool<br />
  34. 34. Design criteria<br />Usability and User Experience<br /><ul><li>Revamp of the old Flash UI in HTML/JS
  35. 35. Smooth UX, intuitive UI, affordance
  36. 36. Device-agnostic performance
  37. 37. Suitable for educational apps
  38. 38. Accessible by users with various skill levels</li></ul>Extendibility and Configurability<br /><ul><li>Understands a Descriptor Language (meta)
  39. 39. Interaction and integration with remote services
  40. 40. Handles user permissions
  41. 41. UI adapts to author/edit modes</li></ul>User-centered design<br />
  42. 42.
  43. 43. Use-case 2:Modeling in the browser<br />Vision of a future collaborative work environment for MIC<br /><ul><li>Discover
  44. 44. Share / Publish
  45. 45. Version Control
  46. 46. Plugin architecture for extendibility
  47. 47. Provides interface
  48. 48. to interpreters
  49. 49. to other modeling services (validation, analysis, simulation)</li></ul>Optimistic locking, conflict resolution<br />
  50. 50. Model visualizer for conflict resolution<br />
  51. 51. Usability vs. Constraint Checking (in the browser)<br /><ul><li>Constraints enforce syntax and semantic rules
  52. 52. Diagram- and model building is guarded by constraints:
  53. 53. Constraint-violating operations should be not allowed or
  54. 54. Should be Aborted and
  55. 55. Warning message should be issued
  56. 56. UI should inform the user of allowed edit operations </li></li></ul><li>Usability vs. Constraint Checking (in the browser)<br />Full-scale solution would rely on <br /><ul><li>constant constraint checking and running remote interpreters
  57. 57. could not be entirely ported to the client-side (JS platform)
  58. 58. would cause terrible user experience.</li></ul>The concept of lightweight constraints (LWC)<br /><ul><li>optimal subset of all the constraints and rules
  59. 59. checked directly on the client side in JS
  60. 60. enforced construction-time, preferably in advance: it prevents constraint-validation by blocking the user from doing it.</li></ul>Complete validation, including remote interpretation should be triggered less frequently / manually. <br />
  61. 61.
  62. 62. Concept overview<br />
  63. 63. Architecture<br />HTML(5) / JS<br />Python / TurboGears<br />
  64. 64. Descriptor Language<br />Instances<br />
  65. 65. Library Package<br />
  66. 66. <ul><li>Re-sable, extendible base classes
  67. 67. UI is implemented in jQuery
  68. 68. Custom UI controls
  69. 69. User operations are logged, deltas are saved
  70. 70. LWC checking, operations can be rolled back
  71. 71. LWC can be defined in library descriptor</li></li></ul><li>Status and future<br />
  72. 72. <ul><li>Preliminary design challenges are successfully discovered
  73. 73. Client side core is under testing /development
  74. 74. Prototypes of educational apps built on the framework will be utilized in classroom experiments in fall 2011 (FBD, flowcharts)
  75. 75. Model visualizer will be delivered in 2012
  76. 76. Design of the server side module is getting finalized
  77. 77. Looking for new opportunities</li></li></ul><li>Thank you!<br />Laszlo Juraczlaszlo.juracz@vanderbilt.edu<br />

×