Lecture Notes in Computer Science 5281 CommencedPublicationin1973 FoundingandFormerSeriesEditors: GerhardGoos,JurisHartmanis,andJanvanLeeuwen EditorialBoard DavidHutchison LancasterUniversity,UK TakeoKanade CarnegieMellonUniversity,Pittsburgh,PA,USA JosefKittler UniversityofSurrey,Guildford,UK JonM.Kleinberg CornellUniversity,Ithaca,NY,USA AlfredKobsa UniversityofCalifornia,Irvine,CA,USA FriedemannMattern ETHZurich,Switzerland JohnC.Mitchell StanfordUniversity,CA,USA MoniNaor WeizmannInstituteofScience,Rehovot,Israel OscarNierstrasz UniversityofBern,Switzerland C.PanduRangan IndianInstituteofTechnology,Madras,India BernhardSteffen UniversityofDortmund,Germany MadhuSudan MassachusettsInstituteofTechnology,MA,USA DemetriTerzopoulos UniversityofCalifornia,LosAngeles,CA,USA DougTygar UniversityofCalifornia,Berkeley,CA,USA GerhardWeikum Max-PlanckInstituteofComputerScience,Saarbruecken,Germany Steffen Becker Frantisek Plasil Ralf Reussner (Eds.) Quality of Software Architectures Models and Architectures 4th International Conference on the Quality of Software Architectures, QoSA 2008 Karlsruhe, Germany, October 14-17, 2008 Proceedings 1 3 VolumeEditors SteffenBecker FZIForschungszentrumInformatik Haid-und-Neu-Strasse10-14,76131Karlsruhe,Germany E-mail:[email protected] FrantisekPlasil CharlesUniversity,DepartmentofSoftwareEngineering Malostranskenam.25,11800Prague1,CzechRepublic E-mail:[email protected] RalfReussner UniversitätKarlsruhe(TH),KarlsruheInstituteofTechnology(KIT) InstitutfürProgrammstrukturenundDatenorganisation 76128Karlsruhe,Germany E-mail:[email protected] LibraryofCongressControlNumber:2008935391 CRSubjectClassification(1998):D.2.9,D.2.11,B.8,D.4.8,C.4 LNCSSublibrary:SL2–ProgrammingandSoftwareEngineering ISSN 0302-9743 ISBN-10 3-540-87878-5SpringerBerlinHeidelbergNewYork ISBN-13 978-3-540-87878-0SpringerBerlinHeidelbergNewYork Thisworkissubjecttocopyright.Allrightsarereserved,whetherthewholeorpartofthematerialis concerned,specificallytherightsoftranslation,reprinting,re-useofillustrations,recitation,broadcasting, reproductiononmicrofilmsorinanyotherway,andstorageindatabanks.Duplicationofthispublication orpartsthereofispermittedonlyundertheprovisionsoftheGermanCopyrightLawofSeptember9,1965, initscurrentversion,andpermissionforusemustalwaysbeobtainedfromSpringer.Violationsareliable toprosecutionundertheGermanCopyrightLaw. SpringerisapartofSpringerScience+BusinessMedia springer.com ©Springer-VerlagBerlinHeidelberg2008 PrintedinGermany Typesetting:Camera-readybyauthor,dataconversionbyScientificPublishingServices,Chennai,India Printedonacid-freepaper SPIN:12529599 06/3180 543210 Preface Models are used in all kinds of engineering disciplines to abstract from the various detailsofthemodelledentityinordertofocusonaspecificaspect.Likeablueprintin civilengineering,asoftwarearchitectureprovidesanabstractionfromthefullsoftware system’s complexity. It allows software designers to get an overview on the system underdevelopmentandtoanalyzeitsproperties.Inthissense,modelsarethefoundation neededforsoftwaredevelopmenttobecomeatrueengineeringdiscipline. Especially when reasoning on a software system’s extra-functionalproperties, its softwarearchitecturecarriesthenecessaryinformationforearly,design-timeanalyses. These analyses take the software architecture as input and can be used to direct the designprocessbyallowingasystematicevaluationofdifferentdesignalternatives.For example,theycanbeusedtocanceloutdecisionswhichwouldleadtoarchitecturede- signswhoseimplementationwouldnotcomplywithextra-functionalrequirementslike performanceorreliabilityconstraints.Besidessuchqualityattributesdirectlyvisibleto theenduser,internalqualityattributes,e.g.,maintainability,alsohighlydependonthe system’sarchitecture. Inadditiontotheabove-mentionedtechnicalaspectsofsoftwarearchitecturemod- els,non-technicalaspects,especiallyprojectmanagement-relatedactivities,requirean explicit software architecture model. The models are used as input for cost estima- tions, time-, deadline-, and resource planningfor the developmentteams. They serve the project management activities of planning, executing, and controlling, which are necessarytodeliverhigh-qualitysoftwaresystemsintimeandwithinthebudget. The4thInternationalConferenceontheQualityofSoftwareArchitectures(QoSA) 2008 focused on software architecture models and modelling techniques through its motto"ModelsandArchitectures."Afocuswassetonmodelswhichaimatimproving the predictabilityofthe qualityof systems underdevelopment.Inso doing,it contin- uedQoSA’straditionofusingsoftwarearchitecturestodevelopandevolvehigh-quality softwaresystems.Sucharchitecturalmodelscontaindetailsonthe structureofa soft- ware,i.e.,thecomponentsandconnectorsitisbuiltof,thesoftware’sbehavior,i.e.,its control and data flows, and the software’s deployment, i.e., the allocation of compo- nents and connectorson software and hardware environments. In line with the focus onmodels,QoSA2008alsofocusedontheautomatedtransformationofmodelsusing model-drivendevelopmenttechniques. QoSA2008received36submissions.Fromthesesubmissions,13wereacceptedas long papers after a careful peer-reviewprocess followed by an online Program Com- mittee discussion. This resulted in an acceptance rate of 36%. The selected technical papersarepublishedinthisvolume,togetherwithawrittenversionoftheinvitedtalk byCarloGhezzi.Forthesecondtime,QoSAwasheldaspartoftheconferenceseries FederatedEventsonComponent-BasedSoftwareEngineeringandSoftwareArchitec- ture(COMPARCH).ThefederatedeventswereQoSA2008,the11thInternationalSym- posiumonComponent-BasedSoftwareEngineering(CBSE2008)andtheWorkshopon VI Preface Component-BasedHigh-PerformanceComputing(CBHPC2008).TogetherwithCOM- PARCH’s Industrial Experience Report Track and the co-located Workshop on Component-Oriented Programming (WCOP 2008), COMPARCH provided a broad spectrumofeventsrelatedtocomponentsandarchitectures.ByintegratingQoSA’sand CBSE’s technical programs in COMPARCH 2008, both conferences elaborated their successfulcollaborationthusdemonstratingthecloserelationshipbetweensoftwarear- chitecturesandtheirconstitutingsoftwarecomponents. AmongthemanypeoplewhocontributedtothesuccessofQoSA2008,wewould like to thankthe membersofthe ProgramCommitteesfor theirvaluableworkduring the review process, as well as Carlo Ghezzi, Michael Stal, Thomas Dreier, Philippe Kruchten,andFlorianMatthesfortheirCOMPARCHkeynotes.Additionally,wethank AlfredHofmannfromSpringerforhissupportinreviewingandpublishingtheproceed- ingsvolumeandHenningGroendaforhissupportinorganizingQoSA andpreparing this LNCS volume. The QoSA organizerswould also like to thank the supporters of COMPARCH 2008,namely 1&1 InternetAG and sd&m AG. This conferencewould nothavebeenpossiblewithoutthecommitmentofallthesepeopleandoursupporters. July2008 SteffenBecker FrantisekPlasil RalfReussner Organization QoSA2008 (PartofCOMPARCH2008) GeneralChair RalfReussner,UniversityofKarlsruhe(TH),Germany ProgramCommitteeChairs SteffenBecker,ForschungszentrumInformatik(FZI),Germany FrantisekPlasil,CharlesUniversity,CzechRepublic ProgramCommittee ColinAtkinson,UniversityofMannheim,Germany AchimBaier,itemisAG,Germany LenBass,SoftwareEngineeringInstitute,USA JanBosch,Intuit,USA JeremyBradley,ImperialCollegeLondon,UK VincenzoGrassi,UniversityofRome"TorVergata",Italy WilhelmHasselbring,UniversityofOldenburg/OFFIS,Germany ChristineHofmeister,LehighUniversity,USA Jean-MarcJezequel,UniversityofRennes/INRIA,France SamuelKounev,UniversityofCambridge,UK PatriciaLago,VrijeUniversiteit,TheNetherlands NicoleLevy,UniversityofVersailles,France MarkusLumpe,SwinburneUniversity,Australia EricMadelaine,Inria,France TomiMannisto,HelsinkiUniversityofTechnology,Finland NenadMedvidovic,UniversityofSouthernCalifornia,USA RaffaelaMirandola,PolitecnicodiMilano,Italy RobertNord,SoftwareEngineeringInstitute,USA DorinaPetriu,CarletonUniversity,Canada ImanPoernomo,King’sCollege,UK SasikumarPunnekkat,MälardalenUniversity,Sweden AndreasRausch,ClausthalUniversityofTechnology,Germany MatthiasRiebisch,TechnicalUniversityofIlmenau,Germany RoshanakRoshandel,SeattleUniversity,USA BernhardRumpe,UniversityofTechnologyBraunschweig,Germany Jean-GuySchneider,SwinburneUniversity,Australia MichaelStal,Siemens,Germany PetrTuma,CharlesUniversity,CzechRepublic AxelUhl,SAP,Germany KurtWallnau,SoftwareEngineeringInstitute,USA VIII Organization WolfgangWeck,IndependentSoftwareArchitect,Switzerland MurrayWoodside,CarltonUniversity,Canada SteffenZschaler,TechnicalUniversityofDresden,Germany Co-reviewers HuseyinAysan,MälardalenUniversity,Sweden FranzBrosch,ForschungszentrumInformatik(FZI),Germany AntonioCansado,Inria,France VirginieContes,Inria,France FabriceHuet,Inria,France ChristophRathfelder,ForschungszentrumInformatik(FZI),Germany MajorSupporters 1&1InternetAG,Karlsruhe,Germany sd&mAG,Munich,Germany Table of Contents Keynote Rethinking the Use of Models in Software Architecture ............... 1 Danilo Ardagna, Carlo Ghezzi, and Raffaela Mirandola Architectural Design Decisions and Influence on Quality Design Reasoning Improves Software Design Quality.................. 28 Antony Tang, Minh H. Tran, Jun Han, and Hans van Vliet A Tool to Visualize Architectural Design Decisions ................... 43 Larix Lee and Philippe Kruchten Style-Based Model Transformation for Early Extrafunctional Analysis of Distributed Systems ........................................... 55 Julien Mallet and Siegfried Rouvrais Architecture and Components / Reasoning about Components Carmen: Software Component Model Checker ....................... 71 Aleˇs Plˇsek and Jiˇr´ı Ad´amek MOSES: MOdeling Software and platform architEcture in UML 2 for Simulation-based performance analysis.............................. 86 Vittorio Cortellessa, Pierluigi Pierini, Romina Spalazzese, and Alessio Vianale Designing the Enterprise Architecture Function ...................... 103 Bas van der Raadt and Hans van Vliet Quality Prediction of Service Compositions through Probabilistic Model Checking ................................................. 119 Stefano Gallotti, Carlo Ghezzi, Raffaela Mirandola, and Giordano Tamburrelli Models and Prediction Model-Driven Performance Analysis ................................ 135 Gabriel A. Moreno and Paulo Merson X Table of Contents Architectural Specification and Static Analyses of Contractual Application Properties............................................ 152 Guillaume Waignier, Anne-Franc¸oise Le Meur, and Laurence Duchien Integrating Quality-Attribute Reasoning Frameworks in the ArchE Design Assistant ................................................. 171 Andres Diaz-Pace, Hyunwoo Kim, Len Bass, Phil Bianco, and Felix Bachmann Architecture Evaluation Processes Middleware Architecture Evaluation for Dependable Self-managing Systems ........................................................ 189 Yan Liu, Muhammad Ali Babar, and Ian Gorton Comprehensive Architecture Evaluation and Management in Large Software-Systems ................................................ 205 Frank Salger, Marcel Bennicke, Gregor Engels, and Claus Lewerentz Sharing the Architectural Knowledge of Quantitative Analysis ......... 220 Anton Jansen, Tjaard de Vries, Paris Avgeriou, and Martijn van Veelen Author Index.................................................. 235