Your SlideShare is downloading. ×
0
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Web Pontoon
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Web Pontoon

878

Published on

Web Pontoon. A Method for Reflective Web Applications …

Web Pontoon. A Method for Reflective Web Applications
Reza Razavi. ESUG 2010, Barcelona, Spain

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

  • Be the first to like this

No Downloads
Views
Total Views
878
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Web Pontoon: A Method for Reflective Web Applications Web Pontoon A Method for Reflective Web Applications Reza Razavi – razavi@acm.org • Not a webapp, but a method for developing webapps • Online programming by non-professional programmers • Managing the functionality of your webapp as content • When diverse & changing control flows • Provision of individualised services to senior citizens • Reengineering & architectural innovation of legacy apps • Web, OO, AOM, SOA, EUP and DDD • Pure Smalltalk + Seaside generated JavaScripts for GUI • Seaside Pier Magritte + Dart • Large scale deployments (100 000 servers for 2015) • Commercial product . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010
  • 2. Web Pontoon: A Method for Reflective Web Applications Context: Architecture for Ambient Systems Activity intelligence services: Multiple users What, Where, When, Who, Why Decision Making Online Adaptation Online Observation Online Management Execution & lifecycle . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 -2-
  • 3. Web Pontoon: A Method for Reflective Web Applications Context: Architecture for Ambient Systems Activity intelligence services: Multiple users What, Where, When, Who, Why Decision Making Online Adaptation Online Observation Online Management Execution & lifecycle . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 -3-
  • 4. Web Pontoon: A Method for Reflective Web Applications Component-based web application development in Seaside i1 Component I1-i2 CMP1 CMP2 i2 CMP3 IO i1 CMP4 I1+i2 CMP5 CMP6 i2 Hardcoded control flows CMP7 CMP8 CMP9 Matrix of components adopted from Damien Picard and Loic Lagadec ESUG 2009 . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 -4-
  • 5. Web Pontoon: A Method for Reflective Web Applications Objective: On-line end-user programmable control flows i1 CMP1 CMP2 I1-i2 CMP3 IO i2 i1 CMP4 I1+i2 CMP5 CMP6 i2 Dynamically programmable control flows CMP7 CMP8 CMP9 - Change online the output with predictable results + Situated lifecycle management . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 -5-
  • 6. Web Pontoon: A Method for Reflective Web Applications Solution approach • Enable online & controlled programmability of webapps by embedding a DSML • Address diversity of domains and requirements by a meta-language framework approach • Address the identification of changing aspects and DSML requirements by Domain-Driven Design • Address smart behaviour requirements by situated lifecycle management . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 -6-
  • 7. Web Pontoon: A Method for Reflective Web Applications Creating DSML by extending of a meta-language framework Pontoon meta-language • Domain-Driven Design • Framework specialisation Pontoon DSML Standard programming DS web pontoon Online end-user programming Individualised web pontoons Execution (manually by ordinary end-users or automated) Pontoon app lifecycles . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 -7-
  • 8. Web Pontoon: A Method for Reflective Web Applications Standard Smalltalk (web) application development practices Smalltalk meta-language Pontoon meta-language Smalltalk dialect / fork Pontoon DSML Smalltalk (web) application DS web pontoon Configuration Configuration, CM Content management + Online EU programming Data repositories Situated lifecycles . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 -8-
  • 9. Web Pontoon: A Method for Reflective Web Applications Dart : Meta-language framework design Activity Conscious Product Activity . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 -9-
  • 10. Web Pontoon: A Method for Reflective Web Applications Background: Ambiance project (2005-2006), UL Tasks Service Repository Activity Steps Domain Concepts http://osl.cs.uiuc.edu/people?user=razavi . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 10 -
  • 11. Web Pontoon: A Method for Reflective Web Applications Assumptions • Changing content & functionality • Changes are unpredictable, by their patterns aren’t • Patterns of change may be “wrapped” into a DSML • End-user are motivated to program using that DSML . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 11 -
  • 12. Web Pontoon: A Method for Reflective Web Applications Managing flows & lifecycles as content • Systematic tree structure of pontoon web apps, both at the operational & knowledge level • Seaside JQuery-based viewers . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010
  • 13. Web Pontoon: A Method for Reflective Web Applications Webapp as a tree of operational- & knowledge-level nodes Root Pages Components Files Templates Concepts Contracts Activities . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 13 -
  • 14. Web Pontoon: A Method for Reflective Web Applications Implementation . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 14 -
  • 15. Web Pontoon: A Method for Reflective Web Applications Seaside JQuery-based viewers / editors • Based on a framework for hierarchical viewers / editors • Implemented in a couple of weeks • Via extensive refactoring • Seaside JQuery examples as starting point • Without any previous knowledge of JQuery • Without any line of JavaScript ever written . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 15 -
  • 16. Web Pontoon: A Method for Reflective Web Applications Illustration: Activity editor Action 1 Action 2 Action 3 + Operation 1 Operation 2 Here goes the description of this Operation - Design Operation - Execute Operation - Remove Operation - Edit Operation - View Operation Traces - Copy Operation Operation 3 Add Operation - Edit Action - Remove Action - Execute Activity - Edit Activity - View Activity Traces - Remove Activity . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010
  • 17. Web Pontoon: A Method for Reflective Web Applications Illustration . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010
  • 18. Web Pontoon: A Method for Reflective Web Applications Twitter – traffic info example • Two levels of programming in pontoon webapps • Reusability of existing components • Atomic services / Contracts • Accessibility of on-line data streams (& web services) • Accessibility of on-line communication media • Social networking • Relative ease of use • Expressivity • Case designed for a short but yet representative demo • Real-life usefulness not necessarily a goal . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 18 -
  • 19. Web Pontoon: A Method for Reflective Web Applications . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 19 -
  • 20. Web Pontoon: A Method for Reflective Web Applications . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 20 -
  • 21. Web Pontoon: A Method for Reflective Web Applications Login to Twitter atomic service aTwitter Connection Login to Twitter . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 21 -
  • 22. Web Pontoon: A Method for Reflective Web Applications Get England traffic info atomic service aString Get England traffic info . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 22 -
  • 23. Web Pontoon: A Method for Reflective Web Applications Interactive tweeting service aTwitter Connection aTwitter Com. Interactive tweeting aMessage . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 23 -
  • 24. Web Pontoon: A Method for Reflective Web Applications While true atomic service anAction While true . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 24 -
  • 25. Web Pontoon: A Method for Reflective Web Applications Login to Twitter While true Get England traffic info Send to twitter WATwitterTask >> go aTwitter := self call: TwitterLoginService new. [itemColl := CSLTransportInfo new results atRandom. InteractiveTweetingService on: aTwitter tweet: anItem description] whileTrue . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 25 -
  • 26. Web Pontoon: A Method for Reflective Web Applications Live demo • Programming on-line the above example • As an end-user programmers • Via http://www.afacms.com • Executing the above end-user program • As a final end-user • Inspecting execution lifecycles • As a manager . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010
  • 27. Web Pontoon: A Method for Reflective Web Applications Application perspectives – ICT-based support to the elderly Delegate to care providers the management of diversity & unpredictable changeability . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 27 -
  • 28. Web Pontoon: A Method for Reflective Web Applications Application perspectives – Business applications Delegate to domain experts the description & validation of application-level business logic via executable models . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 28 -
  • 29. Web Pontoon: A Method for Reflective Web Applications Other application perspectives • Web-based model authoring and execution systems • Architectural innovation of legacy applications • Self-documenting web applications • Extending Service-Serve possibilities • On-line store for situational services • Community project http://pontoonity.com . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 29 -
  • 30. Web Pontoon: A Method for Reflective Web Applications Research perspectives Multiple users Activity intelligence services: What, Where, When, Who, Why Internet Decision Making Online Adaptation Online Observation Online Wifi Management Execution & lifecycle ZigBee . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 30 -
  • 31. Web Pontoon: A Method for Reflective Web Applications Call for collaboration • Independent start-up company • Hosted by the Ministry of Economy and Foreign Commerce in Luxembourg • Background in industrial software development (Prelude Inspection) & academic research (Paris 6 & Univ. Luxembourg) • Welcomes industrial and academic Partners, Sponsors and Early Adopters . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 31 -
  • 32. Web Pontoon: A Method for Reflective Web Applications Contact AAS (Ambient Activity Systems) Web technology meets dynamics of changing economy Reza RAZAVI Ph.D. Computer Science Chief Technology Officer (+352) 621 50 46 53 razavi@aas.lu Ecostart – centre d’entreprise et d’innovation Bâtiment 1, Rue de l’industrie – L-3895 Foetz (LUXEMBOURG) . ®2007-2010 AAS (Ambient Activity Systems) SARL, Luxembourg – Contact: razavi@acm.org – IWST’2010, ESUG Barcelona – Sep. 14, 2010 - 32 -

×