A Generative Programming Approach to Developing Pervasive Computing Systems

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Notes on slide 1

    I would like to present our approach to ease development of pervasive computing applications through generation

    pervasive computing systems involve everyday objects and activities in highly dynamic environments. All objects are networked and must be able to communicate. This paradigm is also called ubiquitous computing or ambient intelligence.

    But, as with each technology, it introduces its own challenges

    from the description: abstract middleware guide implementation ensure conformance support graphical simulation

    detailed overview with the outline of the rest of talk

    a context aggregates date from devices and interprets it to make it application-specific. For example, a Fire context... a controller uses data from one or multiple contexts and take the decision to activate the devices.

    the detail of the generated methods are in the paper. underlined methods and classes are abstract

    the detail of the generated methods are in the paper. underlined methods and classes are abstract

    Favorites, Groups & Events

    A Generative Programming Approach to Developing Pervasive Computing Systems - Presentation Transcript

    1. A Generative Programming Approach to Developing Pervasive Computing Systems Damien Cassou, Benjamin Bertran, Nicolas Loriant and Charles Consel GPCE'09
    2. Pervasive Computing Systems 2
    3. 3
    4. Pervasive Computing ● heterogeneity ● lack of structuring ● dynamicity ● multiple expertise ● testing  hardware/software  functionalities  interfaces 4
    5. Pervasive Computing ● heterogeneity ● lack of structuring ● dynamicity ● multiple expertise  implicit interactions ● testing  no global reasoning  multi-roles components 5
    6. Pervasive Computing ● heterogeneity ● lack of structuring ● dynamicity ● multiple expertise  incremental deployment ● testing  mobility  entity malfunction 6
    7. Pervasive Computing ● heterogeneity ● lack of structuring ● dynamicity ● multiple expertise  hardware ● testing  network protocols  middleware  user needs 7
    8. Pervasive Computing ● heterogeneity ● lack of structuring ● dynamicity ● multiple expertise  time consuming ● testing  cost ineffective  limited situations 8
    9. Pervasive Computing ● heterogeneity ● Existing approaches ● lack of structuring ● general purpose ● dynamicity ● multiple expertise ● partial ● testing 9
    10. Our approach 10
    11. Our approach 11
    12. Fire management scenario 12
    13. 13
    14. 1 Taxonomy DSL to describe a hierarchy of devices ● attributes ● data gathered ● actions supported 14
    15. 1 Taxonomy device SmokeDetector (Location loc){ source Smoke; } struct Smoke { boolean isDetected; } 15
    16. 1 Taxonomy device Sprinkler (Location loc) { action OnOff; } action OnOff { on(); off(); } 16
    17. 17
    18. 2 Architecture DSL to instantiate a common pervasive computing architectural pattern 18
    19. 2 Architecture 19
    20. 2 Architecture context SmokeDetected: boolean { source Smoke from SmokeDetector; } context FireState: boolean { context SmokeDetected; context AverageTemperature; } 20
    21. 2 Architecture controller FireController { context FireState; action Activation on Alarm; action OnOff on Sprinkler; } 21
    22. 3 Generated programming framework ● generated from the description ● dedicated to the application in a GPL! 22
    23. 3 Generated programming framework ● guides the implementation ● abstracts the distributed back-end ● provides high level support in a GPL! 23
    24. 3 Generated programming framework ... 24
    25. 3 Generated programming framework ● interfaces ● proxies ● composites ● support ➢ discovery ➢ RPC ● and more 25
    26. 4 Application development guided by the description through the generated framework 26
    27. 4 Application development controller FireController { context FireState; action OnOff on Sprinkler; … } architecture framework class MyFireCtrl extends FireController { @Override void fireStateChanged(boolean fire, Location loc) { if (fire) { discover(sprinklersWhere()…).on(); … } device discovery remote procedure call … } query language } user code 27
    28. 5 Generated simulation support 28
    29. 5 Generated simulation support Editor 29
    30. 5 Generated simulation support Runtime platform no additional code! 30
    31. Conclusion & Future work ● From a small description of a ● Non-functional properties pervasive computing system ● security ● a generated programming ● fault tolerance framework ● Further leveraging on existing – to guide the development approaches/tools – to ensure conformance ● unit testing ● a support for graphical ● refactoring simulation ● Generalizing our approach to ● a middleware abstraction other domains layer 31
    SlideShare Zeitgeist 2009

    + Damien CassouDamien Cassou Nominate

    custom

    296 views, 0 favs, 2 embeds more stats

    Presentation of the DiaSpec approach to GPCE 2009 i more

    More info about this document

    CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

    Go to text version

    • Total Views 296
      • 209 on SlideShare
      • 87 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 1
    Most viewed embeds
    • 86 views on https://diaspec.bordeaux.inria.fr
    • 1 views on https://diagen.bordeaux.inria.fr

    more

    All embeds
    • 86 views on https://diaspec.bordeaux.inria.fr
    • 1 views on https://diagen.bordeaux.inria.fr

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories