ebook img

Runtime Reconfiguration in Networked Embedded Systems: Design and Testing Practices PDF

192 Pages·2016·8.171 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Runtime Reconfiguration in Networked Embedded Systems: Design and Testing Practices

Internet of Things Zoltan Papp George Exarchakos Editors Runtime Reconfiguration in Networked Embedded Systems Design and Testing Practices Internet of Things Technology, Communications and Computing Series editors Giancarlo Fortino, Rende (CS), Italy Antonio Liotta, Eindhoven, The Netherlands More information about this series at http://www.springer.com/series/11636 Zoltan Papp George Exarchakos (cid:129) Editors fi Runtime Recon guration in Networked Embedded Systems Design and Testing Practices 123 Editors ZoltanPapp George Exarchakos TNO Technical University Eindhoven TheHague Eindhoven TheNetherlands TheNetherlands ISSN 2199-1073 ISSN 2199-1081 (electronic) Internet of Things Technology,Communications andComputing ISBN978-981-10-0714-9 ISBN978-981-10-0715-6 (eBook) DOI 10.1007/978-981-10-0715-6 LibraryofCongressControlNumber:2016933197 ©SpringerScience+BusinessMediaSingapore2016 Thisworkissubjecttocopyright.AllrightsarereservedbythePublisher,whetherthewholeorpart of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission orinformationstorageandretrieval,electronicadaptation,computersoftware,orbysimilarordissimilar methodologynowknownorhereafterdeveloped. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publicationdoesnotimply,evenintheabsenceofaspecificstatement,thatsuchnamesareexemptfrom therelevantprotectivelawsandregulationsandthereforefreeforgeneraluse. The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authorsortheeditorsgiveawarranty,expressorimplied,withrespecttothematerialcontainedhereinor foranyerrorsoromissionsthatmayhavebeenmade. Printedonacid-freepaper ThisSpringerimprintispublishedbySpringerNature TheregisteredcompanyisSpringerScience+BusinessMediaSingaporePteLtd. To Zoltan Papp, in memoriam. Zoltan was a wonderful, inspiring, and good-hearted friend, who gave shape and content to this book through guidance, generous advices, and insightful discussions. As he would himself explain: “It is not fate, it is entropy”. Foreword Morethan7yearsagoIstartedworkinginthefieldoftheInternetofThings(IoT), evenifIdidnotknowexactlywhatitwasmeantfor,andprobablynobodyknewat that time, as this novel concept had still to find the exact definition and role. Nonetheless, I was fascinated by the fact that the real world could have virtual representation allowing for the realization of an unimaginable range of possible applicationsforthebenefitofthepeoplequalityoflife.Likemanyothercolleagues, we imagined IoT as a solution to integrate a large number of heterogeneous and pervasive objects with different connecting and computing capabilities, with the aim of providing a view of the status of the physical world through the network. Thesetechnologies wereexpectedtomakepossibletherealizationofnew services to end users in disparate fields, from the environment monitoring to the industrial plants running, from city management to house monitoring. Since that time, the variety of devices capable to send data about the physical environment to the Internetandtotakelocalandautonomousdecisionshasbeenever-increasing:these now range from dummy entities capable of providing just their positions (through attachedtags)toobjectscapableofsensingthestatusofanenvironment,processing the data, and sending to external systems, if believed meaningful. Clearly, networked embedded systems are key components in this picture as they allow to introduce rapid and local decisions in the environment and to implement adaptive solutions. Leveraging on my background in quality of service (QoS) management in next generationnetworks,atthebeginningIstartedidentifyingwhatIbelievedwerethe most challenging networking issues for some selected IoT applications, i.e., opti- mizing the configuration of multi-homed wireless sensor networks. I then started modeling some components of the target systems with particular attention to the impact of the proposed solutions on the final performance in terms of QoS. I soon discovered that the approach I followed, like many other colleagues with a strong focus on the networking aspects, had two common limitations. First, it produced solutions that were incomplete, as they did not consider issues not directly asso- ciated to the connectivity, such as those related to the functioning of real-time vii viii Foreword processing systems, which might have introduced not negligible delays and additional partial or complete system failures. Second, it had the limitation related to the adaptability of the complete systems which was neglected; this instead is a must for components of IoT systems that need to evolve over the time along with external systems with which it interacts. Much of my progress in this field happened, also thanks to the DEMANES (Design, Monitoring and Operation of Adaptive Networked Embedded Systems) project, which we have devised in 2012 with an enthusiastic team of colleagues from European research centers and industries, and which is still running. It is duringthisexperiencethatIlearntaworldofkeymethodologiesandtoolsrequired for an effective design and management of networked embedded systems. Indeed, designing effective and deploying powerful IoT systems withstronglinks with the physical world requires a deep knowledge of modeling language for complex systems (often systems of systems) with the capabilities to describe the disparate properties and behaviors of the components under analysis. Often hostile envi- ronments are encountered and in this case it is not always simple to reuse models designed by others and often everything has to be done from scratch. Runtime reconfiguration capabilities (covering self-organization and self-optimization) have alsooftentoberealizedtoextendtheoperationalenvelopeofthesystem.Afterthe first design has been accomplished, it is then necessary to determine if the system performsproperlyindifferentscenariosorgoesastrayintosomestatethatdoesnot correspond to a viability zone. This is the objective of the test and validation activity,whichisaimedatunderstandingthestateofthesystemafteranadaptation action and also to understand the quality of the adaptation action. All these vali- dationactivitieshavetogothrougharigorousandawell-definedsetofrules.Italso needs an appropriate framework, which is usually comprised of three main ele- ments:atestcoordinator,asystemmonitor,andananalyzer.Thelattercomponent containsthetestingalgorithmsthatgatherthesystemvariablesfromthemonitorsto verify the system status at runtime in terms of viability zones and adaptivity, according to the instructions set by the test coordinator. Thisbookcoversalltheseaspectsinacompressivewayrepresentingapowerful tool for the colleagues that have to deal with the design and deployment of net- workedembeddedsystems,whethertheyareapartofcomplexIoTsolutionsornot. Itfocusesonthespecialissuesindesigninganddeployingruntimereconfiguration functionalitiesinreal-timecontextaddressingthemodel-basedengineering,coping withcomplexityinruntime,managingthedesign-time—runtimetrade-off,etc.The book follows a paragmatic approach for solving this complex design problem: it helps in understanding the applicability of the presented theories and tools by discussing representative use cases. Cagliari Luigi Atzori June 2015 Preface In order to address todays societal challenges (e.g., environmental management, intelligent mobility, safety/security, sustainable urban living, etc.) monitoring and control of large-scale, complex, dynamical systems are essential technologies. These monitoring and control systems realize sophisticated signal processing algorithms (state estimation, patternrecognition,optimal control, decision-making, etc.) in distributed configurations and many times are deployed in difficult- to-access, hostile environments. Under these circumstances failures, changes in operational conditions and changes in user needs are not exceptions but should be considered as nominal operation. Runtime reconfiguration capabilities (covering self-organization, self-optimization) have to be realized to extend the operational envelope of the system. Runtime reconfiguration enables the system to cope with changing system configurations without re-programming the existing setup (i.e., supporting easy deployment), to support mobile subsystems (dynamic sensor management), to cope with environmental changes (e.g., changing network capacities) and to adapt to changing system goals (user needs) during operation. The realization and operation of runtime reconfigurable systems poses new chal- lenges in every stage of the system’s life cycle. In the book the design and testing of large-scale, distributed signal processing systemsareconsideredwithspecialemphasisonsystemsarchitecture,tooling,and best practices. Distinguishing features of the targeted systems are serious resource constraints (e.g., processing capabilities, communication, energy supply), and the presence of demanding nonfunctional requirements such as timeliness, robustness, lifetime, and the capability of handling system “evolution”. All along a strict model-based process is followed and thus the architecture modeling, model checking, model-based evaluation, and model-based design optimization play a central role in the book. After summarizing the conceptual/theoretical foundation of the methodology, a systems engineering process and a matching tool suite is described. In order to assure the landing of the abstract concepts, we shall use a number of nontrivial examples, taken from real-world cases, to illustrate the application of theory to practice. ix x Preface Thebookisintendedtobeusedasacookbookfordesignersandpractitionersof complex embedded systems: though it covers the relevant fundamentals for designingandtestingoflarge-scalenetworkedembeddedsystems,italsoproposes systems engineering processes, architectural templates (design patterns), and practical testing/validation approaches and thus it serves as a guideline for the system designer. Thebookcapturestheexpertiseofseveralauthorswhohaveworkedforyearsat the interface between theory and engineering in a variety of topical issues of embeddedsystems.Since2012theseauthorshavecometoworktogetherunderthe umbrellaoftheEuropean projectARTEMISDEMANES(Design,Monitoring and Operation of Adaptive Networked Embedded Systems) that has at its heart the ambitiontodefineamethodologyandtorealizetoolchainforhigh-levelsupportfor designing, implementing, testing, and deploying real-world runtime reconfigurable applications. This book collects the most relevant developments by DEMANES members in the area of self-configurable embedded networks and systems. This manuscript is presenting seven complementary topics relevant to the requirements specification, the off-line design methodology, the services and tooling used, the validation and verification framework, the validation tools and, finally, the appli- cability to real-world pilots of large-scale runtime-adaptive networked embedded systems. In Chap. 1, a multi-aspect modeling language is introduced that allows system designerstomodelthearchitectureoflarge-scalenetworkedsystemsfromdifferent aspectsandcontainsconceptstomodelruntimereconfigurationatdesign-time.The proposed architecture for modeling runtime reconfiguration consists of primary tasks in one layer and secondary management tasks in another layer. Special reconfiguration primitives allow the description of four types of reconfiguration: re-parameterization, re-instantiation, rewiring, and relocation. The modeling lan- guage is accompanied by a modeling methodology based on MAPE-K and uses feedbackloopsinthesystemmodeltomodelruntimereconfiguration.System-level characteristics, i.e., KPIs are introduced allowing system designers to evaluate systemdesignsandpickthemostpromisingone.Specialattentionispaidtothefact thattheavailabilityofaruntimeredesigncapabilityinasystemrequiresKPIstobe derived and evaluated at runtime. Only then can the redesign be guided properly. Chapter 2 discusses design methodologies that are specific for adaptive net- worked embedded systems. This chapter discusses design-time/runtime trade-offs, designpatternsforreconfigurablereal-timemonitoringandcontrol,runtimedesign space exploration of adaptive systems and a systems engineering process for run- time reconfigurable systems. We draw guidelines for all stages of the architectural process and help system and software designers in choosing wisely specific algo- rithmsandtechniques.Insummary,weshowcasestate-of-the-artdesigntechniques that are directly addressing the adaptivity. Chapter 3 discusses how to build up a model-oriented tool chain and its most important activity flows: model editing, model visualization and transformation; model validation and evaluation; and finally, (semi-)automatic system implemen- tationbasedonthesystemmodel.Inaddition,foreachactivityemphasisgoesalso

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.