SlideShare uma empresa Scribd logo
1 de 32
Baixar para ler offline
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 -

Mais conteúdo relacionado

Semelhante a 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
 

Semelhante a 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
 

Mais 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
 

Mais 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
 

Último

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
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
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
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
 
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
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
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
 
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
 
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
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
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
 

Último (20)

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
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
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
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
 
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
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
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
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
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
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
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
 

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 -