SlideShare une entreprise Scribd logo
1  sur  32
Télécharger pour lire hors ligne
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
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-
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-
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-
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-
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-
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-
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-
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-
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 -
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 -
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
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 -
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 -
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 -
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
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
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 -
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 -
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 -
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 -
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 -
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 -
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 -
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 -
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
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 -
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 -
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 -
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 -
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 -
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 -

Contenu connexe

Similaire à Web Pontoon

Sdf Panel Nice 2009 V1.0
Sdf Panel Nice 2009 V1.0Sdf Panel Nice 2009 V1.0
Sdf Panel Nice 2009 V1.0lgradina
 
Validating a smartphone-based pedestrian navigation system prototype - An inf...
Validating a smartphone-based pedestrian navigation system prototype - An inf...Validating a smartphone-based pedestrian navigation system prototype - An inf...
Validating a smartphone-based pedestrian navigation system prototype - An inf...Beniamino Murgante
 
Web Performance Acceleration with Strangeloop AS1000
Web Performance Acceleration with Strangeloop AS1000Web Performance Acceleration with Strangeloop AS1000
Web Performance Acceleration with Strangeloop AS1000Thomas Stensitzki
 
Presentatie peter vink back to the future, TASS technology solutions
Presentatie peter vink   back to the future, TASS technology solutionsPresentatie peter vink   back to the future, TASS technology solutions
Presentatie peter vink back to the future, TASS technology solutions#devdate
 
Monitoring and sustaining services: Lessons learned from WaterAid's post-impl...
Monitoring and sustaining services: Lessons learned from WaterAid's post-impl...Monitoring and sustaining services: Lessons learned from WaterAid's post-impl...
Monitoring and sustaining services: Lessons learned from WaterAid's post-impl...IRC
 
IoT 2010 Talk on System Infrastructure for the Internet of Things.
IoT 2010 Talk on System Infrastructure for the  Internet of Things.IoT 2010 Talk on System Infrastructure for the  Internet of Things.
IoT 2010 Talk on System Infrastructure for the Internet of Things.Fahim Kawsar
 
J.D. Stanley - PTA and Informed Mobility
J.D. Stanley - PTA and Informed MobilityJ.D. Stanley - PTA and Informed Mobility
J.D. Stanley - PTA and Informed MobilityShane Mitchell
 

Similaire à Web Pontoon (7)

Sdf Panel Nice 2009 V1.0
Sdf Panel Nice 2009 V1.0Sdf Panel Nice 2009 V1.0
Sdf Panel Nice 2009 V1.0
 
Validating a smartphone-based pedestrian navigation system prototype - An inf...
Validating a smartphone-based pedestrian navigation system prototype - An inf...Validating a smartphone-based pedestrian navigation system prototype - An inf...
Validating a smartphone-based pedestrian navigation system prototype - An inf...
 
Web Performance Acceleration with Strangeloop AS1000
Web Performance Acceleration with Strangeloop AS1000Web Performance Acceleration with Strangeloop AS1000
Web Performance Acceleration with Strangeloop AS1000
 
Presentatie peter vink back to the future, TASS technology solutions
Presentatie peter vink   back to the future, TASS technology solutionsPresentatie peter vink   back to the future, TASS technology solutions
Presentatie peter vink back to the future, TASS technology solutions
 
Monitoring and sustaining services: Lessons learned from WaterAid's post-impl...
Monitoring and sustaining services: Lessons learned from WaterAid's post-impl...Monitoring and sustaining services: Lessons learned from WaterAid's post-impl...
Monitoring and sustaining services: Lessons learned from WaterAid's post-impl...
 
IoT 2010 Talk on System Infrastructure for the Internet of Things.
IoT 2010 Talk on System Infrastructure for the  Internet of Things.IoT 2010 Talk on System Infrastructure for the  Internet of Things.
IoT 2010 Talk on System Infrastructure for the Internet of Things.
 
J.D. Stanley - PTA and Informed Mobility
J.D. Stanley - PTA and Informed MobilityJ.D. Stanley - PTA and Informed Mobility
J.D. Stanley - PTA and Informed Mobility
 

Plus de ESUG

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingESUG
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in PharoESUG
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapESUG
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoESUG
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...ESUG
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsESUG
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6ESUG
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingESUG
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesESUG
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportESUG
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsESUG
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector TuningESUG
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FutureESUG
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the DebuggerESUG
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing ScoreESUG
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptESUG
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocESUG
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsESUG
 

Plus de ESUG (20)

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
 

Dernier

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 

Dernier (20)

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

Web Pontoon

  • 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 -