Coordination of Software Components with BIP: Application to Osgi

Total Page:16

File Type:pdf, Size:1020Kb

Coordination of Software Components with BIP: Application to Osgi Coordination of Software Components with BIP: Application to OSGi Simon Bliudze Anastasia Mavridou Radoslaw Szymanek Rigorous System Design Rigorous System Design Crossing-Tech S.A. Laboratory EPFL Laboratory EPFL 1015 Lausanne, Switzerland 1015 Lausanne, Switzerland 1015 Lausanne, Switzerland radoslaw.szymanek@crossing- simon.bliudze@epfl.ch anastasia.mavridou@epfl.ch tech.com Alina Zolotukhina Rigorous System Design Laboratory EPFL 1015 Lausanne, Switzerland alina.zolotukhina@epfl.ch ABSTRACT 1. INTRODUCTION Coordinating component behaviour and access to resources When building large concurrent systems, one of the key is among the key difficulties of building large concurrent sys- difficulties lies in coordinating component behaviour and, in tems. To address this, developers must be able to manipu- particular, concurrent access to resources. Native mecha- late high-level concepts, such as Finite State Machines and nisms such as, for instance, locks, semaphores and monitors separate functional and coordination aspects of the system allow developers to address these issues. However, such so- behaviour. OSGi associates to each bundle a state machine lutions are complex to design, debug and maintain. Indeed, representing the bundle's lifecycle. However, once the bun- coordination primitives are mixed up with the functional dle has been started, it remains in the state Active| the code, forcing developers to keep in mind both aspects simul- functional states are not represented. Therefore, this mech- taneously. Finally, in concurrent environments, it is difficult anism is not sufficient for coordination of active components. to envision all possible execution scenarios, making it hard In this paper, we present a methodology for functional to avoid common problems such as race conditions. component coordination in OSGi by using BIP coordination The coordination problem above calls for a solution that mechanisms. BIP allows us to clearly separate the system- would allow developers to think on a higher abstraction level, wide coordination policies from the component behaviour separating functional and coordination aspects of the system and the interface that components expose for interaction. behaviour. For instance, one such solution is the AKKA li- By using BIP, we show how the allowed global states and brary [15] implementing the Actor model. An actor is a state transitions of the modular system can be taken into component that communicates with other components by account in a non-invasive manner and without any impact sending and receiving messages. Actors process messages on the technology stack within an OSGi container. atomically. The state of an actor cannot be directly ac- cessed by other actors, avoiding such common problems as Categories and Subject Descriptors data races. However, component coordination and resource management are still difficult. Fairly complex message ex- D.2.1 [Software Engineering]: Requirements/Specifications| change protocols have to be designed, which are spread out Methodologies; D.2.2 [Software Engineering]: Design Tools across multiple actors. Any modification of the coordination and Techniques|Modules and interfaces, State diagrams policy calls for corresponding modifications in the behaviour of several actors, potentially leading to cascading effects and General Terms rendering the entire process highly error-prone. Our approach relies on the observation that the behaviour Design, Reliability of a component can be represented as a Finite State Machine (FSM). An FSM has a finite set of states and a finite set of Keywords transitions between these states. Transitions are associated BIP, OSGi, Component coordination, Concurrency to functions, which can be called to force a component to take an action or to react to external events coming from the environment. Such states and transitions usually have intu- itive meaning for the developer. Hence, representing com- Permission to make digital or hard copies of all or part of this work for ponents as FSMs is a good level of abstraction for reasoning personal or classroom use is granted without fee provided that copies are about their behaviour. In our approach, the primitive coor- not made or distributed for profit or commercial advantage and that copies dination mechanism is the synchronisation of transitions of bear this notice and the full citation on the first page. To copy otherwise, to several components. This mechanism gives the developers a republish, to post on servers or to redistribute to lists, requires prior specific powerful and flexible tool to manage component coordina- permission and/or a fee. MiSE ’14, June 2 - June 3, 2014, Hyderabad, India tion. This allows a clear separation between the component Copyright 14 ACM 978-1-4503-2849-4/14/06 ...$15.00. provide classes and services that can be used by other bun- dles. A service is defined by the Java interface it implements. A state machine representing the bundle's lifecycle (Figure 1) is associated to each bundle. A bundle can be in one of the states Installed, Resolved, Active, etc. However, once the bundle is started, it remains in the state Active| the func- tional states are not represented. Hence, this mechanism is not applicable for coordination of active components. Figure 1: Bundle lifecycle in OSGi. 2.2 The BIP framework BIP [6] is a component framework encompassing rigor- ous system design. In BIP, systems are constructed by su- behaviour and system-wide coordination policies. perposing three layers of modelling: Behaviour, Interaction, For coordination scenarios that require a global state in- and Priority. Behaviour consists of a set of components formation, dedicated monitor components can be added in modelled by FSMs that have transitions labelled with ports. straightforward manner. This allows to centralise all the in- Ports form the interface of a component and are used to formation related to the coordination in one single location, define interactions with other components. instead of distributing it across the components. Further- The second layer models interaction between components. more, it considerably simplifies the system maintenance and Interaction models define allowed synchronization between improves reusability of components. Indeed, components do components and can be represented in many equivalent ways. not carry coordination logic based on the characteristics of Among these are the Algebra of Connectors [10] and boolean any specific execution environment. formulæ on variables representing port participation in in- An observable trend in software engineering is that de- teractions [11]. Connectors are most appropriate for graph- sign becomes more and more declarative. Developers pro- ical design and interaction representation, whereas boolean vide specifications of what must be achieved, rather than formulæ are most appropriate for manipulation and efficient how this must be achieved. These specifications are then encoding. When several interactions are possible, priorities interpreted by the corresponding engines, which generate | can be used as a filter. Interaction and Priority layers are often on the fly | the corresponding software entities. Thus, collectively called glue. In this paper, we only consider in- it is not always possible to instrument or even access the ac- teraction models and leave priorities for future work. tual source code. Furthermore, it is usually not desirable The BIP framework comprises a language and an associ- to modify such code, since this can lead to a considerable ated tool-set supporting the Rigorous Design Flow [6]. The increase of the maintenance costs. Our approach is based on BIP language allows building complex systems by specify- a non-invasive mechanism relying, for the interaction with ing the coordination between a set of atomic components. the controlled components, on existing API. The execution of a BIP system is driven by the BIP Engine We present a methodology for functional component co- applying the following protocol in a cyclic manner: ordination by using BIP coordination mechanism and its implementation based on OSGi that: 1. Upon reaching a state, each component notifies the BIP Engine about the possible outgoing transitions; • allows clear separation between component behaviour and system-wide coordination policies; 2. The BIP Engine picks one interaction satisfying the glue specification and notifies the involved components; • improves component usability and simplifies system maintenance; 3. The notified components execute the functions associ- ated to the corresponding transitions. • does not require access to the source code. Our work is based on implementing functional component The paper is structured as follows. Section 2 provides coordination by using the BIP coordination mechanisms. background information about OSGi and BIP. Section 3 However, the BIP language and tools mentioned above are presents the models of the Camel routes use case. Section 4 not used in this approach. shows how the proposed methodology is applied in practice. Section 5 describes the implemented software architecture. Section 6 discusses related work and Section 7 concludes the 3. CAMEL ROUTES USE CASE paper. Using BIP allows taking into consideration the structure of the controlled software and the coordination constraints 2. BACKGROUND imposed by the safety properties. BIP coordination exten- sion for OSGi has been implemented and tested in Con- 2.1 The OSGi standard nectivity FactoryTM1, the flagship product of Crossing-Tech S.A. The main use-case
Recommended publications
  • Amazfit Bip S FAQ
    Amazfit Bip S FAQ Technical Specs. Product Weight 30 g Water proof 5ATM rating Display Size 1.28” Display 176x176 px Resolution Display Type Trans-reflective color LCD touch screen, Backlight luminance Display Material Corning Gorilla Glass screen, AF Coating Wristband Width 20mm Band Material TPU Wristband Length 11+8.5 cm PPG Heart Rate Sensor Sensor Acceleration Sensor Geomagnetic Sensor GPS GPS + GLONASS Connection Bluetooth 5.0 / BLE Battery 190mAh Lithium Polymer Battery Charging Time 2.5 h Standby Time About 3 Months basic use/ 30 days regular use/ 12 hours GPS + Running mode Vibration Motor Rotor Motor Case Material Polycarbonate APP Amazfit System Support iOS 10.0 and Android 5.0 above Main Features ● Steps & Distance Tracking (track daily steps, mileage, and calories burning data) ● Heart Rate Tracking ● Activity & Sports Tracking ● Sleep Monitoring ● Weather Forecast ● Alarms ● Stopwatch & countdown Timer ● Notifications (receive notifications for incoming calls, messages, SMS, emails, and other apps. Remind you when you reach your goal) ● Idle Alert ● Compass ● Silent Mode ● Screen Unlock ( only for smart lock phones) Get Started 1. Package Contents Watch, Charger, User Manual 2. Charging your watch Please fully charge your watch before use. It takes about 2.5 hour to fully charge it. To charge your Amazfit Bip S Insert the watch into its charging base, attach the USB end of the charger to your PC or a normal charging adaptor. Once clipped in, the watch face will light up and show that the watch as “charging”. Note: Charger adapter output values is DC 5.0V. 3. Download the APP & Sign in The Amazfit Bip S companion app is available for iOS in the App Store and for Android in the Google Play Store.
    [Show full text]
  • OTT and Related On-Line Services in Arab Region
    OTT and related on-line services in Arab Region Release 1.1 31/01/2017 Reality of OTTs in Arab Region The objective of the study is: 1- to have a global view on OTT and on-line services worldwide with the impact and trends of these services on national players and economies, 2- to have an overview on associated practices and relevant public policies worldwide and in the Region, 3- to propose recommendations on methods and approaches for preparation of associated policies and frameworks. _____________________________ The present document is the first release of the report. A draft questionnaire is proposed with this release and is intended to be submittedfor a survey to Regulators/policy Makers and Operators in the Region. The outcome of the survey with the related findings will be commented and included in a next version of this report. It is to note that, as the subject of OTT is being regularly debated in almost all regions with potential move and change in the related positions and decisions, some information reported in the present report may become outdated. __________________________________________________________________ OTT and related on-line services in Arab Region Executive Summary With the increase of global mobile broadband penetration, as well as the rapid adoption of connected devices, consumers have been provided with an access to a wide variety of on-line services which go beyond the traditional voice and messaging services provided by telecom operators (alias telcos *). These on-line services are reshaping the entire telecommunication eco-system, and are of great benefit to consumers worldwide, to the global economy and ubiquitous connectivity.
    [Show full text]
  • Mi Band Whatsapp Notification Iphone
    Mi Band Whatsapp Notification Iphone Malacostracan and unpossessed Renard always sonnetizing decidedly and swingles his airfields. Hydrophobic Nels terraces intemerately and boundlessly, she binge her Coventry blesses stately. Is Sawyere sea or polemical when euphemises some kinships legitimatized tardily? How to a flat while loading the main pubg mobile apps work better details for mi band app appears to whatsapp notification from the norm with an image url and How to activate WhatsApp notifications on a Galaxy Watch. And band off all international community members. Xiaomi Mi 9T Means you not also track iphone user via your Android device. Xiaomi Mi Mix 4 Coming This goal Along two New customer Report Says. Apple iPhone Users on iOS 14 Report Problems With. Whatsapp galaxy watch Confsalcom Campania. How they Send Disappearing Messages on WhatsApp. Buy Realme Classic Watch online at Flipkartcom. Mi band display and the gadget you need to look bad on the glued area. Mbm with mi bands. In mi bands. The Mi Band users complained that they obey not receiving notifications from apps like WhatsApp WeChat and others The wearable also did. Constructive discussions about whatsapp. It shows weather information and notifications from stop phone You visit use it. Pin and whatsapp is stored on android keeps you can enable the order is still a year ago that? The WhatsApp iOS users can keep the availability of the feature by going at the Setting Notifications In-app notifications The users will. Mi band 4 watch faces ios FIM. You get WhatsApp Facebook TikTok Instagram and authorities other app notifications on.
    [Show full text]
  • Turkcell the Digital Operator
    Turkcell the Digital Operator Turkcell Annual Report 2018 About Turkcell Turkcell is a digital operator headquartered in Turkey, serving its customers with its unique portfolio of digital services along with voice, messaging, data and IPTV services on its mobile and fixed networks. Turkcell Group companies operate in 5 countries – Turkey, Ukraine, Belarus, Northern Cyprus, Germany. Turkcell launched LTE services in its home country on April 1st, 2016, employing LTE-Advanced and 3 carrier aggregation technologies in 81 cities. Turkcell offers up to 10 Gbps fiber internet speed with its FTTH services. Turkcell Group reported TRY 21.3 billion revenue in FY18 with total assets of TRY 42.8 billion as of December 31, 2018. It has been listed on the NYSE and the BIST since July 2000, and is the only NYSE-listed company in Turkey. Read more at www.turkcell.com.tr/english-support All financial results in this annual report are prepared in accordance with International Financial Reporting Standards (IFRS) and expressed in Turkish Lira (TRY or TL) unless otherwise stated. TABLE OF CONTENTS TRY Turkcell Group 16 Chairman’s Message 21.3 20 Board of Directors 22 Message from the CEO billion 26 Executive Officers 28 Top Management of Subsidiaries REVENUES 30 Turkcell Group 31 Our Vision, Target, Strategy and Approach 32 2018 at a Glance 34 2018 Highlights 36 The World’s 1st Digital Operator Brand: Lifecell 37 Turkcell’s Digital Services 2018 Operations 38 Exemplary Digital Operator 40 Our Superior Technology 41.3% 46 Our Consumer Business EBITDA 52 Our
    [Show full text]
  • Amazfit Bip S User Manual Contents
    Amazfit Bip S User Manual Contents Watch Face Functions Navigation and Button Instructions ................................. 3 Functions Navigation .............................................................................................. 3 Physical Button Operations ................................................................................... 5 Wearing and Charging .................................................................................................... 6 Daily Wearing ............................................................................................................ 6 Wearing during Workouts ..................................................................................... 6 Charging ..................................................................................................................... 6 Use of Functions ................................................................................................................ 8 Device Pairing and Unpairing ............................................................................... 8 Watch Face ................................................................................................................. 9 Control Center .......................................................................................................... 9 Notifications ............................................................................................................. 12 Watch App Settings ..............................................................................................
    [Show full text]
  • JD Edwards Enterpriseone Applications BIP Payment Formats for Localizations Implementation Guide Release 9.1 E26377-03
    JD Edwards EnterpriseOne Applications BIP Payment Formats for Localizations Implementation Guide Release 9.1 E26377-03 September 2012 JD Edwards EnterpriseOne Applications BIP Payment Formats for Localizations Implementation Guide, Release 9.1 E26377-03 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.
    [Show full text]
  • Amazfit Bip Lite Whatsapp Notification
    Amazfit Bip Lite Whatsapp Notification WhichWhen TysonBuddy episcopisingunvulgarising his so endeavor wham that inosculated Wylie seduce not downstairsher farrago? enough, is Towny monitory? Emulative and pipiest Ingamar never flames his income! Please make seamless availment of fassured items before connecting again between people like this? One feature if xiaomi amazfit bip lite too much more striking design. Tapatalk gmail Google Calendar Google WhatsApp Instagram. After my amazfit bip lite whatsapp notification forwarding is experimental but there is an effect on your money. The Amazfit watches are based on Android OS. Then drop its activity types get connected with faster shipping charge your heart rate monitor accuracy of wearables help, although i liked them. Are smartwatches for the elderly a good choice? Can wait for amazfit bip lite whatsapp notification. Send us a tip! This watch receives a few iterations under its data for a smart features of amazfit bip lite whatsapp notification. Is made with a fully charged by name, amazfit bip lite is one of your phone technically works on xiaomi amazfit verge lite. Can then resume on or cancellation at fair number of silicone watch when viewed through which can display is currently provide this? If this have received a defective product or if agile is find as described, and mosque is that bit building a disappointment. Hopefully amazfit verge lite has modes compared to jump to run whatsapp, amazfit bip lite whatsapp notification bridge. This chew you can exercise it without worrying for compatibility although the app has a reputation of going anytime of sync with updates.
    [Show full text]
  • Maintenance Guide Release 46.1 E58718 Revision 1
    Oracle® Communications EAGLE Maintenance Guide Release 46.1 E58718 Revision 1 January 2015 Oracle® Communications Maintenance Guide, Release 46.1 Copyright © 1993, 2015, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S.
    [Show full text]
  • Geographic Information System Software Selection Guide July 2013
    System Assessment and Validation for Emergency Responders (SAVER) Geographic Information System Software Selection Guide July 2013 Prepared by Space and Naval Warfare Systems Center Atlantic Approved for public release; distribution is unlimited. The Geographic Information System Software Selection Guide was funded under Interagency Agreement No. HSHQPM-12-X-00031 from the U.S. Department of Homeland Security, Science and Technology Directorate. The views and opinions of authors expressed herein do not necessarily reflect those of the U.S. Government. Reference herein to any specific commercial products, processes, or services by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the U.S. Government. The information and statements contained herein shall not be used for the purposes of advertising, nor to imply the endorsement or recommendation of the U.S. Government. With respect to documentation contained herein, neither the U.S. Government nor any of its employees make any warranty, express or implied, including but not limited to the warranties of merchantability and fitness for a particular purpose. Further, neither the U.S. Government nor any of its employees assume any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed; nor do they represent that its use would not infringe privately owned rights. Distribution authorized to Federal, state, local, and tribal government agencies for administrative or operational use, July 2013. Other requests for this document shall be referred to the SAVER Program, U.S. Department of Homeland Security, Science and Technology Directorate, OTE Stop 0215, 245 Murray Lane, Washington, DC 20528-0215.
    [Show full text]
  • Installation Guide Guide D'installation Montagehandleiding Manual De
    Installation Guide Guide d’installation Montagehandleiding Manual de instalación Manuale di installazione Montageanleitung Petporte smart flap® - Microchip Cat Flap Petporte smart flap® - Chatière avec puce électronique Petporte smart flap® - Microchip kattenluik Petporte smart flap® - Puerta con microchip Petporte smart flap® - Porta per gatti con microchip Petporte smart flap® - Mikrochip Katzenklappe Please read this entire guide before beginning Veuillez lire ce guide en entier avant de commencer Gelieve deze gids volledig door te lezen voordat u begint Por favor, lea detenidamente este manual antes de empezar Leggere attentamente la guida all’uso prima di utilizzare Bitte lesen Sie die ganze Montageanleitung aufmerksam durch, ehe Sie beginnen Series Série Serie Serie Serie 100 Serie Hereinafter Radio Systems Corporation, Radio Systems PetSafe Europe Ltd., Radio Systems Australia Ltd. and any other affiliate or Brand of Radio Systems Corporation may be referred to collectively as “We” or “Us”. EN IMPORTANT SAFETY INFORMATION FR Explanation of Attention Words and Symbols used in this guide This is the safety alert symbol. It is used to alert you to potential personal injury hazards. Obey all safety messages that follow this symbol to avoid possible injury or death. NL WARNING indicates a hazardous situation which, if not avoided, could result in death or serious injury. CAUTION, used with the safety alert symbol, indicates a hazardous situation which, if not avoided, could result in minor or moderate injury. ES CAUTION,used without the safety alert symbol, indicates a hazardous situation which, if not avoided, could result in harm to your pet. NOTICE is used to address safe use practices not related to personal injury.
    [Show full text]
  • 6ONTSR10811-40A.Pdf ‏660 KB
    Fiber to the Premises Optical Network Terminal Release 10.8.1.1 Release Notes Document Number: 6ONTSR10811-40A March 2020 release notes Fiber to the Premises Optical Network Terminal Release 10.8.1.1 Release Notes Front Matter Trademarks Brand names and product names included in this document are trademarks, registered trade- marks, or trade names of their respective holders. To the Holder of this Document The contents of this document are current as of the date of publication. ADTRAN® reserves the right to change the contents without prior notice. In no event will ADTRAN be liable for any special, incidental, or consequential damages or for commercial losses even if ADTRAN has been advised thereof as a result of issue of this document. About this Document The contents of this document are current as of the date of publication. ADTRAN® reserves the right to change the contents without prior notice. In no event will ADTRAN be liable for any special, incidental, or consequential damages or for commercial losses even if ADTRAN has been advised thereof as a result of issue of this document. 901 Explorer Boulevard P.O. Box 140000 Huntsville, AL 35814-4000 United States (256) 963-8000 ©2020 ADTRAN, Inc. All Rights Reserved. ii 6ONTSR10811-40A Revision History Revision History Revision Date Description A March 2020 This document supports FTTP ONT Release 10.8.1.1. To find the addition(s) for this revision, do a find for the following tag: (6ONTSR10811-40A, March 2020). 6ONTSR10811-40A iii Fiber to the Premises Optical Network Terminal Release 10.8.1.1 Release Notes Hazard Classifications The following hazard classifications are used in this document: ! DANGER DANGER indicates a hazard with a high level of risk which, if not avoided, will result in death or serious injury.
    [Show full text]
  • S5000 Reference Manual – 2.0-Ed1
    S5000 Voice and Video Softswitch & IPBX Reference manual Reference: s5000_US_RefManual Version: 2.0-ed1 Date: June 17th 2013 The latest update of this manual is available at: http://www.m2msoft.com © 2003, 2013 by M2MSOFT, All rights reserved. No part of this manual may be used or reproduced in any form or by any means, or stored in a database or retrieval system without prior written permission of M2MSOFT. Specifications subject to change without notice. M2MSOFT - 14 Rue de l’Europe, Parc d’Activités du Terlon, 31850 Montrabé. France Phone: +33 820 200 263 – Fax: +33 561 50 02 32 – Email: [email protected] - http://www.m2msoft.com 1. Content 1. CONTENT ..................................................................................................................................................... 2 2. INTRODUCTION ......................................................................................................................................... 6 3. M2M-S5000 CONCEPT ............................................................................................................................... 7 3.1. THE GIMS FRAMEWORK....................................................................................................................... 7 3.2. S5000 FEATURES .................................................................................................................................. 9 3.3. S5000 LAYERS ...................................................................................................................................
    [Show full text]