research challenge
play

Research Challenge SmartCampus, a sensor network for experiments - PowerPoint PPT Presentation

This is a team effort, started in 2014! # # # " # P. Collet M. Blay-Fornarino S. Bonnieux # # C. Cecchinel $ # # ! % J.M. Bruel S. Mosser G. Nolet G. Miton $ $ Software Composition Sbastien Mosser Ptidej seminar at


  1. This is a team effort, started in 2014! # # # " # P. Collet M. Blay-Fornarino S. Bonnieux # # C. Cecchinel $ # # ! % J.M. Bruel S. Mosser G. Nolet G. Miton $ $ Software Composition Sébastien Mosser Ptidej seminar at Concordia University in a Cyber-Physical World 13.12.2019 J. Kienzle G. Mussbacher Crédit Images: Pixabay & Pexels Previous Work (Cyril Cecchinel’s PhD) Research Challenge • SmartCampus, a sensor network for experiments [SERVICES’14] • Shared Sensing Infrastructure [ICSR’16] • Composable Work fl ows on top os sensor networks [SAC’16] • Automated deployment [APSEC’16] • DEPOSIT reference implementation [PhD’17] How to tame the complexity of • Machine learning for sensor data prediction [FGS’19] designing complex applications • Industrial collaboration with DataThings for Cyber-Physical Systems ? Cyril was a PhD student in the group (2014-2017). He is now lead research engineer at DataThing (Luxembourg), a spino ff of the SnT research center that develops the GreyCat database engine for large-scale sensor networks. 4

  2. SmartCampus Playground Ongoing work : the MERMAID project 2.3 hectares of building • Sébastien Bonnieux’s PhD Thesis (2017-…) 500 parking slots • collaboration with the Geoscience institute in Nice (FR) [OCEANS’19] >3000 students • Using oceans to monitor earthquakes, and other “stu ff ” • Research challenge: allow the scientist to understand what is happening at the code level SMARTC AMPUS 6 5 SMARTC AMPUS.G IT H UB.IO Projet MERMAID (ERC Advanced Guust Nolet) (PI: G. Nolet) Agenda energy consumption Automated deployment of data collection interference policies at large scale * * I had to made choices … and this contributions covers several dimension of the work! 7

  3. 9 SOFTWARE DEVELOPMENT FOR THE IOT 10 TRADITIONAL SOFTWARE DEVELOPMENT REQUIREMENTS IMPLEMENTS C. CECCHINEL, S. MOSSER. P. COLLET Software Engineer AUTOMATED DEPLOYMENT OF DATA COLLECTION POLICIES OVER HETEROGENEOUS SHARED SENSING INFRASTRUCTURES SOFTWARE DEVELOPMENT FOR THE IOT 11 SOFTWARE DEVELOPMENT FOR THE IOT 12 IOT DEVELOPMENT AD-HOC NETWORKS Temperature sensors across Europe ... Temperature map REQUIREMENTS IMPLEMENTS Fire Software Engineer prevention ≠ IOT ENGINEER Heatwave alert SENSOR NETWORKS CONFIGURED AT THE AD-HOC NETWORKS HARDWARE LEVEL TEDIOUS AND ERROR-PRONE ACTIVITIES DIFFICULT TO (RE-)USE NO SHARING LOW-LEVEL PROGRAMMING LANGUAGES DATASET ISOLATED

  4. SOFTWARE DEVELOPMENT FOR THE IOT 13 SOFTWARE DEVELOPMENT FOR THE IOT 14 CONTRIBUTION ▸ A toolchain that supports: « The most obvious drawback of the current WSNs is that they are domain-specific and task-oriented, tailored for ▸ High-level data collection policies particular applications with little or no possibility of ▸ Platforms and network representations reusing them for newer applications » ▸ Composition and deployment over heterogeneous « This strategy leads to redundant deployments when sensing infrastructures new applications are contemplated » FULLY AUTOMATED APPROACH Khan, I., Belqasmi, F., Glitho, R., Crespi, N., Morrow, M., & Polakos, P. (2015). Wireless Sensor Network Virtualization: A Survey. SOFTWARE DEVELOPMENT FOR THE IOT 15 SOFTWARE DEVELOPMENT FOR THE IOT 16 REQUIREMENTS REQUIREMENTS ▸ Separation of concerns ▸ Separation of concerns ▸ Automatic tailoring of policies ▸ Automatic tailoring of policies ▸ Automatic projection of policies ▸ Automatic projection of policies ▸ Automatic sharing ▸ Automatic sharing

  5. 17 RIGHT CONCERNS FOR THE RIGHT PERSON 18 DATA COLLECTION POLICY Software engineer Software engineer WSN expert DATA COLLECTION INFRASTRUCTURE « a set of operations performed on data to convert them into POLICY MODEL knowledge » [1] Must be abstracted enough to let the software engineer focused on her business activities TOOLCHAIN « a sequence of activities performed in a business that produces a result of observable value to an individual actor of the business » [2] [1] J. Gubbi, R. Buyya, S. Marusic, and M. Palaniswami. Internet of things (iot): A vision, architectural elements, and future SOURCE CODE SOURCE CODE SOURCE CODE directions. Future Generation Computer Systems , 29(7), 2013. [2] K. Kang, S. Cohen, J. Hess, W. Novak, and S. Peterson. Feature- Oriented Domain Analysis (FODA). Technical Report CMU/SEI-90-TR-21, 1990. RIGHT CONCERNS FOR THE RIGHT PERSON 19 RIGHT CONCERNS FOR THE RIGHT PERSON 20 DATA COLLECTION POLICY INFRASTRUCTURE MODEL WSN experts Software engineer Three models to describe the sensing infrastructure ▸ A domain-specific language to define Data Collection Policies ‣ Platform variability model ▸ Sensor/Collectors declaration ‣ Network topology model ▸ Activity definition DOOR_443 ARD_1_443 PRESENCE_443 X B e e ‣ Deployment strategy model WAN Remote ▸ Data-flows definition RP_443_XBEE XBee WINDOW_443 AC_443 ARD_2_443 TEMP_443

  6. 21 22 SOURCE CODE DEVICES MODEL DEVICES MODEL PLATFORM #1 DATA COLLECTION DATA COLLECTION SOURCE CODE deploy( , ) = NETWORK TOPOLOGY NETWORK TOPOLOGY POLICY POLICY PLATFORM #2 … DEPLOYMENT DEPLOYMENT STRATEGY STRATEGY SOURCE CODE PLATFORM #N SEPARATION OF CONCERNS Build platform specific data collection policies from a SOFTWARE DEVELOPMENT FOR THE IOT 23 platform independent policy REQUIREMENTS ▸ Separation of concerns SUB DATA COLLECTION POLICY ▸ Automatic tailoring of policies #1 Platform #1 specific ▸ Automatic projection of policies SUB DATA ▸ Automatic sharing DATA COLLECTION COLLECTION POLICY POLICY #2 Platform-independent Platform #2 specific … SUB DATA COLLECTION POLICY #N Platform #N specific

  7. Decomposition Decomposition 25 26 Two operators defined at the data collection policy layer : An operator defined at the network topology layer : returns the subset of sensors needed for req the realization of the activity returns the subset of sensors reachable reach from a given platform req( ) = { S2 ; S3 } ACTIVITY 훂 reach( ) = {S1 ; S2 ; S3 } platform #1 check if an activity is deployable on a isDeployable given platform i s D e p l o y a b l e ACTIVITY 훂 Decomposition Decomposition 27 28 An operator defined at the deployment strategy layer : For each activity a, find platforms p satisfying the property: req(a) ⊂ reach(p) ∧ isDeployable(a, p) For a set of platforms, return the platform place If no platform satisfies the property, an error is returned to the software engineer that maximize the strategy’s objectives {platform #1, platform #3, platform #4} ACTIVITY 훂 place( , {P1;P2;P3} ) = P1 ACTIVITY 훂 {platform #2, platform #4} ACTIVITY 훽 … {platform #3} ACTIVITY 휔

  8. Decomposition Decomposition 29 30 Use the place operator to select the appropriate target platform among the available candidates Web AUTOMATIC TAILORING OF POLICIES , place( ) = platform #1 {platform #1, platform #3, platform #4} ACTIVITY 훂 AUTOMATIC PROJECTION OF POLICIES , ) = platform #4 place( {platform #2, platform #4} ACTIVITY 훽 … Routing , place( ) = platform #3 {platform #3} ACTIVITY 휔 on each platform not involved in the process SOFTWARE DEVELOPMENT FOR THE IOT 32 REQUIREMENTS ▸ Separation of concerns ▸ Automatic tailoring of policies WHAT IF A POLICY HAS ALREADY BEEN DEPLOYED ON ▸ Automatic projection of policies THE TARGETED PLATFORM ? ▸ Automatic sharing

  9. OTHER Composition Composition 33 34 DATA COLLECTION POLICY #1 An operator defined at the platform-specific data collection + policy layer : SUB DATA COLLECTION POLICY #1 + compose two policies together Platform #1 specific DATA COLLECTION POLICY OTHER DATA COLLECTION Platform-independent POLICY #2 Extension of the graph series composition + SUB DATA COLLECTION POLICY #2 + = Platform #2 specific … AUTOMATIC COMPOSITION OVERVIEW 35 TOOLCHAIN IN ONE SLIDE define Global policy Network Software engineers topology compose pilots ❶ Infrastructure define pilots Deployment compose model [ASSESSMENT] strategy Decomposition WSN experts compose Platform features Sub-Policy Sub-Policy Sub-Policy descriptions … (Platform 1) (Platform 2) (Platform n) Other sub- Other sub- Other sub- policies with with policies with with policies with (platform 2) (platform n) (platform 1) Composition Composition Composition Global policy Global policy Global policy (Platform 2) (Platform n) ❷ (Platform 1) pilots ❸ Generation Code (Platform 1) Code (Platform 2) Code (Platform n)

  10. ASSESSMENT 38 DEPOSIT DATA COLLECTION POLICY ▸ As a software engineer, I would like to receive AC data if the door and the window are opened for office 443 to Data collEction POlicies for Sensing InfrasTructures monitor the energy loss Open-source toolchain available on Github https://github.com/ace-design/DEPOSIT ASSESSMENT 39 ASSESSMENT 40 VALIDATION CRITERIA USING THE TOOLCHAIN ▸ Separation of concerns: Design using only activities Deployment without a-priori knowledge ▸ Automatic tailoring of policies Generated code should call the right libraries ▸ Automatic projection of policies Activities are projected on the appropriate platform Ready-to-flash code We consider 15 minutes as the required time for a network expert to write and enact the code for a given office without using any aspect of the toolchain

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend