ebook img

Software Adaptation in an Open Environment: a software architecture perspective PDF

241 Pages·2017·12.5 MB·English
by  Yu Zhou
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 Software Adaptation in an Open Environment: a software architecture perspective

Software Adaptation in an Open Environment A Software Architecture Perspective Software Adaptation in an Open Environment A Software Architecture Perspective Yu Zhou and Taolue Chen Boca Raton London New York CRC Press is an imprint of the Taylor & Francis Group, an informa business AN AUERBACH BOOK CRC Press Taylor & Francis Group 6000 Broken Sound Parkway NW, Suite 300 Boca Raton, FL 33487-2742 © 2017 by Taylor & Francis Group, LLC CRC Press is an imprint of Taylor & Francis Group, an Informa business No claim to original U.S. Government works Printed on acid-free paper Version Date: 20170315 International Standard Book Number-13: 978-1-138-74347-2 (Hardback) This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to publish reliable data and information, but the author and publisher cannot assume responsibility for the validity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any copyright material has not been acknowledged please write and let us know so we may rectify in any future reprint. Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission from the publishers. For permission to photocopy or use material electronically from this work, please access www.copyright.com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For organizations that have been granted a photocopy license by the CCC, a separate system of payment has been arranged. Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identification and explanation without intent to infringe. Visit the Taylor & Francis Web site at http://www.taylorandfrancis.com and the CRC Press Web site at http://www.crcpress.com Contents Foreword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi Authors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv ListofFigures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii ListofTables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi SECTIONI: BASICSANDFRAMEWORK 1 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1 NovelComputingParadigmsandMethodologies . . . . . . . . 6 1.2 WhatisSelf-Adaptation? . . . . . . . . . . . . . . . . . . . . 16 1.3 WhatisContext? . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4 ChallengesofAdaptationinanOpenEnvironment . . . . . . . 20 1.4.1 Characteristicsoftheopenenvironment . . . . . . . . 21 1.4.2 Adaptationrequirements. . . . . . . . . . . . . . . . . 22 1.5 StructureoftheBook . . . . . . . . . . . . . . . . . . . . . . 24 2 AdaptationFramework . . . . . . . . . . . . . . . . . . . . . . . . 27 2.1 IntroductionandBackground . . . . . . . . . . . . . . . . . . 28 2.1.1 Architecturedescriptionlanguages . . . . . . . . . . . 29 2.1.2 Softwarearchitecturalviews . . . . . . . . . . . . . . . 30 2.1.3 Softwarearchitecturedynamics . . . . . . . . . . . . . 30 v vi (cid:4) Contents 2.1.4 Discussions . . . . . . . . . . . . . . . . . . . . . . . 32 2.2 ConceptualAdaptationFramework . . . . . . . . . . . . . . . 32 2.2.1 Architecturalperspective . . . . . . . . . . . . . . . . 32 2.2.2 Frameworkoverview . . . . . . . . . . . . . . . . . . 35 2.3 RuntimeSoftwareArchitecture . . . . . . . . . . . . . . . . . 38 2.3.1 Softwarearchitectureclassmodel . . . . . . . . . . . . 38 2.3.2 Reflectiveinteraction . . . . . . . . . . . . . . . . . . 40 2.3.3 Discussions . . . . . . . . . . . . . . . . . . . . . . . 41 2.4 RelatedTechniquesforSelf-Adaptation . . . . . . . . . . . . . 42 2.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 3 ContextModeling . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.1 OverviewofContextModeling . . . . . . . . . . . . . . . . . 48 3.2 RepresentativeOntologyModels . . . . . . . . . . . . . . . . 50 3.3 Ontology-BasedContextModeling . . . . . . . . . . . . . . . 52 3.4 OntologyModelsforArchitectureDomain . . . . . . . . . . . 54 3.4.1 Architecturedescriptionontology . . . . . . . . . . . . 55 3.4.2 Architecturemanipulationontology . . . . . . . . . . . 56 3.4.3 Architecturecontrolontology . . . . . . . . . . . . . . 58 3.4.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . 61 3.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 4 ImplementationandCaseStudy . . . . . . . . . . . . . . . . . . . 63 4.1 StructuralOverview . . . . . . . . . . . . . . . . . . . . . . . 64 4.1.1 Adaptationsupport. . . . . . . . . . . . . . . . . . . . 65 4.1.2 Componentframework . . . . . . . . . . . . . . . . . 66 4.1.3 Contextknowledgemanagement . . . . . . . . . . . . 68 4.2 MAC-ngImplementation . . . . . . . . . . . . . . . . . . . . 68 4.3 PerformanceAnalysis . . . . . . . . . . . . . . . . . . . . . . 72 4.3.1 Experimentalsetup . . . . . . . . . . . . . . . . . . . 73 4.3.2 Performanceevaluation . . . . . . . . . . . . . . . . . 73 4.4 CaseStudy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4.4.1 Scenariostatement . . . . . . . . . . . . . . . . . . . . 77 4.4.2 Adaptationrequirements. . . . . . . . . . . . . . . . . 78 4.4.3 SolutionsbasedonMAC-ng . . . . . . . . . . . . . . . 79 4.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Contents (cid:4) vii SECTIONII:ADAPTIVEMIGRATION,SERVICE DISCOVERY,ANDINTERACTION 87 5 AdaptiveComponentMigration . . . . . . . . . . . . . . . . . . . 89 5.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 5.2 ArchitecturalRequirements . . . . . . . . . . . . . . . . . . . 93 5.2.1 Applicationmodel . . . . . . . . . . . . . . . . . . . . 93 5.2.2 Mobilitymanagement . . . . . . . . . . . . . . . . . . 93 5.2.3 Resourcebindingandservicecustomization . . . . . . 94 5.2.4 Contextawareness . . . . . . . . . . . . . . . . . . . . 95 5.3 ArchitecturalFramework . . . . . . . . . . . . . . . . . . . . 95 5.3.1 Applicationmanagement . . . . . . . . . . . . . . . . 95 5.3.1.1 Applicationarchitecture . . . . . . . . . . . 95 5.3.1.2 Dynamicinteraction . . . . . . . . . . . . . 97 5.3.1.3 Coordinationmanagement . . . . . . . . . . 97 5.3.2 Resourcedescriptionandagentreasoningmechanism . 98 5.4 ModelingbyAttributedGraphs . . . . . . . . . . . . . . . . . 100 5.5 PerformanceAnalysis . . . . . . . . . . . . . . . . . . . . . . 108 5.6 RelatedWork . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 5.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 6 ServiceDiscoveryandInteractionAdaptation . . . . . . . . . . . 115 6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 6.2 Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 6.2.1 Contextmodelandsystemarchitecture . . . . . . . . . 118 6.2.2 Servicediscoveryprimitivesandmapping . . . . . . . 120 6.2.3 Interactionprogrammingmodel . . . . . . . . . . . . . 122 6.2.4 Interceptorbasedmulti-modeinteraction . . . . . . . . 126 6.2.5 Adaptation . . . . . . . . . . . . . . . . . . . . . . . . 128 6.3 PerformanceAnalysis . . . . . . . . . . . . . . . . . . . . . . 130 6.4 RelatedWork . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 6.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 SECTIONIII:FORMALMODELINGANDANALYSIS 135 7 AdaptationRulesConflictDetection . . . . . . . . . . . . . . . . . 137 7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 7.2 ReconfigurationModelingandAnalysis . . . . . . . . . . . . . 139 7.2.1 Criticalpairanddependency . . . . . . . . . . . . . . 139 7.2.2 Architecturalreconfigurationanalysis . . . . . . . . . . 141 viii (cid:4) Contents 7.3 CaseStudy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 7.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 7.5 RelatedWork . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 7.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 8 ModelBasedVerificationofDynamicEvolution . . . . . . . . . . 151 8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 8.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 8.3 BehaviorModeling . . . . . . . . . . . . . . . . . . . . . . . . 156 8.4 Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 8.4.1 Flatteningalgorithm . . . . . . . . . . . . . . . . . . . 161 8.4.2 Correctnessoftranslation . . . . . . . . . . . . . . . . 162 8.4.3 Consistencyverification . . . . . . . . . . . . . . . . . 165 8.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 8.6 RelatedWork . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 8.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 9 AnIterativeDecision-MakingSchemeforAdaptation . . . . . . . 177 9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 9.2 AnIterativeDecision-MakingScheme . . . . . . . . . . . . . 180 9.2.1 MDPsandvalue-iterationmethod . . . . . . . . . . . . 180 9.2.2 AnoverviewofIDMS . . . . . . . . . . . . . . . . . . 183 9.2.3 Confidentoptimality . . . . . . . . . . . . . . . . . . . 185 9.2.4 Metricsandtradeoff . . . . . . . . . . . . . . . . . . . 186 9.3 ApplicationtoSelf-AdaptiveSystems . . . . . . . . . . . . . . 187 9.3.1 Rainbowframework . . . . . . . . . . . . . . . . . . . 187 9.3.2 EmbeddingIDMSintorainbow . . . . . . . . . . . . . 189 9.3.3 Experiments . . . . . . . . . . . . . . . . . . . . . . . 189 9.4 FurtherReading . . . . . . . . . . . . . . . . . . . . . . . . . 192 9.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Foreword Softwareiseatingtheworldwhilsttheworldiseatingmoreandmoresoftware. The interplay between software and the world drives the evolution of software development methodologies. The way of constructing software is undergoing a fundamental paradigm shift. The execution environment of modern software is becoming more open, dynamic, and volatile. Such openness brings grand chal- lengestotheadaptabilityoftheinhabitantsoftwaresystems.Sincecontinuously delivering software satisfying users’ needs is always a timeless pursuit of soft- waredevelopers,self-adaptationattractsconsiderableattentionfrombothindus- tryandacademia.Therehasbeenalotofresearchconductedinthisarea,inspired byapplicationsfromamultitudeofdisciplines.Thiscanbeevidencedbyapro- liferation of new adaptation techniques and frameworks that have emerged in recentyears. Among others, software architecture related techniques represent an impor- tantsubject.Thisispartlyduetotheincreasingapplicationofcomponentbased systems in the open environment, such as web services. Software architecture provides an adequate abstraction level, as well as an effective way to guide the adaptation. Thisbookisoneofthefirstmonographstoaddresssoftwareadaptationinan openenvironmentfromasoftwarearchitectureperspective.Thetwoauthorsare activeresearchershavegreatexperienceinthisfieldandprovideacomprehensive discussionofcurrentadaptationframeworksinthelightofsoftwarearchitecture. This includes service discovery and interaction adaptation, adaptive component migration, or context and ontological models. The chapter on formal modeling covers the essence of adaptation rules, conflict detection, or verification of dy- namicevolution. Thebookaimsbothatpractitionersandresearchersandconveysthefounda- tionsofsoftwareadaptation.Itdescribesverificationtechniquesandframeworks ix

Description:
The book is about a very active research field in software engineering. In modern society, the fact of the world's high reliance on software requires the system's robustness, i.e., continual availability and satisfactory service quality. This requirement gives rise to the popularity of the research
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.