首页 > 最新文献

International ACM SIGSOFT Conference on Quality of Software Architectures最新文献

英文 中文
Performance-based selection of software and hardware features under parameter uncertainty 参数不确定条件下基于性能的软硬件特性选择
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602585
L. Elorza, Catia Trubiani, V. Cortellessa, Goiuria Sagardui Mendieta
Configurable software systems allow stakeholders to derive variants by selecting software and/or hardware features. Performance analysis of feature-based systems has been of large interest in the last few years, however a major research challenge is still to conduct such analysis before achieving full knowledge of the system, namely under a certain degree of uncertainty. In this paper we present an approach to analyze the correlation between selection of features embedding uncertain parameters and system performance. In particular, we provide best and worst case performance bounds on the basis of selected features and, in cases of wide gaps among these bounds, we carry on a sensitivity analysis process aimed at taming the uncertainty of parameters. The application of our approach to a case study in the e-health domain demonstrates how to support stakeholders in the identification of system variants that meet performance requirements.
可配置的软件系统允许涉众通过选择软件和/或硬件特性派生变体。在过去的几年中,基于特征的系统的性能分析已经引起了很大的兴趣,然而,一个主要的研究挑战仍然是在获得系统的全部知识之前进行这种分析,即在一定程度的不确定性下。本文提出了一种分析嵌入不确定参数的特征选择与系统性能之间关系的方法。特别是,我们在选定特征的基础上提供了最佳和最差情况下的性能界限,并且在这些界限之间存在较大差距的情况下,我们进行了旨在驯服参数不确定性的敏感性分析过程。将我们的方法应用于电子医疗领域的一个案例研究,演示了如何支持利益相关者识别满足性能需求的系统变体。
{"title":"Performance-based selection of software and hardware features under parameter uncertainty","authors":"L. Elorza, Catia Trubiani, V. Cortellessa, Goiuria Sagardui Mendieta","doi":"10.1145/2602576.2602585","DOIUrl":"https://doi.org/10.1145/2602576.2602585","url":null,"abstract":"Configurable software systems allow stakeholders to derive variants by selecting software and/or hardware features. Performance analysis of feature-based systems has been of large interest in the last few years, however a major research challenge is still to conduct such analysis before achieving full knowledge of the system, namely under a certain degree of uncertainty. In this paper we present an approach to analyze the correlation between selection of features embedding uncertain parameters and system performance. In particular, we provide best and worst case performance bounds on the basis of selected features and, in cases of wide gaps among these bounds, we carry on a sensitivity analysis process aimed at taming the uncertainty of parameters. The application of our approach to a case study in the e-health domain demonstrates how to support stakeholders in the identification of system variants that meet performance requirements.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125914696","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 23
Using architecture-level performance models as resource profiles for enterprise applications 使用架构级性能模型作为企业应用程序的资源配置文件
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602587
Andreas Brunnert, Kilian Wischer, H. Krcmar
The rising energy and hardware demand is a growing concern in enterprise data centers. It is therefore desirable to limit the hardware resources that need to be added for new enterprise applications (EA). Detailed capacity planning is required to achieve this goal. Otherwise, performance requirements (i.e. response time, throughput, resource utilization) might not be met. This paper introduces resource profiles to support capacity planning. These profiles can be created by EA vendors and allow evaluating energy consumption and performance of EAs for different workloads and hardware environments. Resource profiles are based on architecture-level performance models. These models allow to represent performance-relevant aspects of an EA architecture separately from the hardware environment and workload. The target hardware environment and the expected workload can only be specified by EA hosts and users respectively. To account for these distinct responsibilities, an approach is introduced to adapt resource profiles created by EA vendors to different hardware environments. A case study validates this concept by creating a resource profile for the SPECjEnterprise2010 benchmark application. Predictions using this profile for two hardware environments match energy consumption and performance measurements with an error of mostly below 15%.
不断增长的能源和硬件需求是企业数据中心日益关注的问题。因此,限制需要为新的企业应用程序(EA)添加的硬件资源是可取的。要实现这一目标,需要详细的容量规划。否则,可能无法满足性能需求(即响应时间、吞吐量、资源利用率)。本文介绍了支持容量规划的资源配置文件。这些配置文件可以由EA供应商创建,并允许评估不同工作负载和硬件环境下EA的能耗和性能。资源概要文件基于体系结构级性能模型。这些模型允许独立于硬件环境和工作负载来表示EA体系结构的性能相关方面。目标硬件环境和预期的工作负载只能分别由EA主机和用户指定。为了解释这些不同的责任,引入了一种方法来调整EA供应商创建的资源配置文件以适应不同的硬件环境。一个案例研究通过为SPECjEnterprise2010基准应用程序创建资源配置文件来验证这个概念。使用此配置文件对两种硬件环境进行的预测与能耗和性能测量相匹配,误差大多低于15%。
{"title":"Using architecture-level performance models as resource profiles for enterprise applications","authors":"Andreas Brunnert, Kilian Wischer, H. Krcmar","doi":"10.1145/2602576.2602587","DOIUrl":"https://doi.org/10.1145/2602576.2602587","url":null,"abstract":"The rising energy and hardware demand is a growing concern in enterprise data centers. It is therefore desirable to limit the hardware resources that need to be added for new enterprise applications (EA). Detailed capacity planning is required to achieve this goal. Otherwise, performance requirements (i.e. response time, throughput, resource utilization) might not be met. This paper introduces resource profiles to support capacity planning. These profiles can be created by EA vendors and allow evaluating energy consumption and performance of EAs for different workloads and hardware environments. Resource profiles are based on architecture-level performance models. These models allow to represent performance-relevant aspects of an EA architecture separately from the hardware environment and workload. The target hardware environment and the expected workload can only be specified by EA hosts and users respectively. To account for these distinct responsibilities, an approach is introduced to adapt resource profiles created by EA vendors to different hardware environments. A case study validates this concept by creating a resource profile for the SPECjEnterprise2010 benchmark application. Predictions using this profile for two hardware environments match energy consumption and performance measurements with an error of mostly below 15%.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123919319","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 18
Evaluation of a static architectural conformance checking method in a line of computer games 计算机游戏系列中静态架构一致性检查方法的评估
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602590
Tobias Olsson, Daniel Toll, Anna Wingkvist, Morgan Ericsson
We present an evaluation of a simple method to find architectural problems in a product line of computer games. The method uses dependencies (direct, indirect, or no) to automatically classify types in the implementation to high-level components in the product line architecture. We use a commercially available tool to analyse dependencies in the source code. The automatic classification of types is compared to a manual classification by the developer, and all mismatches are reported. To evaluate the method, we inspect the source code and look for a pre-defined set of architectural problems in all types. We compare the set of types that contained problems to the set of types where the manual and automatic classification disagreed to determine precision and recall. We also investigate what changes are needed to correct the found mismatches by either designing and implementing changes in the source code or refining the automatic classification. Our evaluation shows that the simple method is effective at detecting architectural problems in a product line of four games. The method is lightweight, customisable and easy to implement early in the development cycle.
我们提出了一种简单的方法来评估在电脑游戏产品线中发现架构问题。该方法使用依赖关系(直接的、间接的或非依赖关系)来自动将实现中的类型分类到产品线体系结构中的高级组件。我们使用商业上可用的工具来分析源代码中的依赖关系。由开发人员将类型的自动分类与手动分类进行比较,并报告所有不匹配。为了评估该方法,我们检查源代码,并在所有类型中寻找一组预定义的体系结构问题。我们将包含问题的类型集与手动和自动分类不一致的类型集进行比较,以确定准确率和召回率。我们还通过在源代码中设计和实现更改或改进自动分类来研究需要进行哪些更改来纠正发现的不匹配。我们的评估表明,这种简单的方法在检测包含四个游戏的产品线中的架构问题方面是有效的。该方法轻量级、可定制且易于在开发周期的早期实现。
{"title":"Evaluation of a static architectural conformance checking method in a line of computer games","authors":"Tobias Olsson, Daniel Toll, Anna Wingkvist, Morgan Ericsson","doi":"10.1145/2602576.2602590","DOIUrl":"https://doi.org/10.1145/2602576.2602590","url":null,"abstract":"We present an evaluation of a simple method to find architectural problems in a product line of computer games. The method uses dependencies (direct, indirect, or no) to automatically classify types in the implementation to high-level components in the product line architecture. We use a commercially available tool to analyse dependencies in the source code. The automatic classification of types is compared to a manual classification by the developer, and all mismatches are reported. To evaluate the method, we inspect the source code and look for a pre-defined set of architectural problems in all types. We compare the set of types that contained problems to the set of types where the manual and automatic classification disagreed to determine precision and recall. We also investigate what changes are needed to correct the found mismatches by either designing and implementing changes in the source code or refining the automatic classification. Our evaluation shows that the simple method is effective at detecting architectural problems in a product line of four games. The method is lightweight, customisable and easy to implement early in the development cycle.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"772 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115755213","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 8
Regression verification of AADL models through slicing of system dependence graphs 基于系统依赖图切片的AADL模型回归验证
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602589
Andreas Johnsen, K. Lundqvist, P. Pettersson, Kaj Hänninen
Design artifacts of embedded systems are subjected to a number of modifications during the development process. Verified artifacts that subsequently are modified must necessarily be re-verified to ensure that no faults have been introduced in response to the modification. We collectively call this type of verification as regression verification. In this paper, we contribute with a technique for selective regression verification of embedded systems modeled in the Architecture Analysis and Design Language (AADL). The technique can be used with any AADL-based verification technique to efficiently perform regression verification by only selecting verification sequences that cover parts that are affected by the modification for re-execution. This allows for the avoidance of unnecessary re-verification, and thereby unnecessary costs. The selection is based on the concept of specification slicing through system dependence graphs (SDGs) such that the effect of a modification can be identified.
嵌入式系统的设计工件在开发过程中会受到许多修改。随后被修改的已验证工件必须被重新验证,以确保在响应修改时没有引入错误。我们统称这种验证为回归验证。在本文中,我们提供了一种用体系结构分析与设计语言(AADL)建模的嵌入式系统的选择性回归验证技术。该技术可以与任何基于aadl的验证技术一起使用,通过只选择覆盖受修改影响的部分的验证序列来有效地执行回归验证。这样可以避免不必要的重新核查,从而避免不必要的费用。选择是基于通过系统依赖图(sdg)进行规范切片的概念,这样就可以识别修改的效果。
{"title":"Regression verification of AADL models through slicing of system dependence graphs","authors":"Andreas Johnsen, K. Lundqvist, P. Pettersson, Kaj Hänninen","doi":"10.1145/2602576.2602589","DOIUrl":"https://doi.org/10.1145/2602576.2602589","url":null,"abstract":"Design artifacts of embedded systems are subjected to a number of modifications during the development process. Verified artifacts that subsequently are modified must necessarily be re-verified to ensure that no faults have been introduced in response to the modification. We collectively call this type of verification as regression verification. In this paper, we contribute with a technique for selective regression verification of embedded systems modeled in the Architecture Analysis and Design Language (AADL). The technique can be used with any AADL-based verification technique to efficiently perform regression verification by only selecting verification sequences that cover parts that are affected by the modification for re-execution. This allows for the avoidance of unnecessary re-verification, and thereby unnecessary costs. The selection is based on the concept of specification slicing through system dependence graphs (SDGs) such that the effect of a modification can be identified.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"27 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134461668","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
An empirical investigation of modularity metrics for indicating architectural technical debt 对指示架构技术债务的模块化度量的实证研究
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602581
Zengyang Li, Peng Liang, P. Avgeriou, N. Guelfi, Apostolos Ampatzoglou
Architectural technical debt (ATD) is incurred by design decisions that consciously or unconsciously compromise system-wide quality attributes, particularly maintainability and evolvability. ATD needs to be identified and measured, so that it can be monitored and eventually repaid, when appropriate. In practice, ATD is difficult to identify and measure, since ATD does not yield observable behaviors to end users. One indicator of ATD, is the average number of modified components per commit (ANMCC): a higher ANMCC indicates more ATD in a software system. However, it is difficult and sometimes impossible to calculate ANMCC, because the data (i.e., the log of commits) are not always available. In this work, we propose to use software modularity metrics, which can be directly calculated based on source code, as a substitute of ANMCC to indicate ATD. We validate the correlation between ANMCC and modularity metrics through a holistic multiple case study on thirteen open source software projects. The results of this study suggest that two modularity metrics, namely Index of Package Changing Impact (IPCI) and Index of Package Goal Focus (IPGF), have significant correlation with ANMCC, and therefore can be used as alternative ATD indicators.
架构技术债务(ATD)是由有意识或无意识地损害系统范围质量属性(特别是可维护性和可发展性)的设计决策引起的。需要确定和衡量ATD,以便对其进行监测,并最终在适当的时候予以偿还。实际上,ATD很难识别和测量,因为ATD不能向最终用户产生可观察的行为。ATD的一个指标是每次提交修改组件的平均数量(ANMCC): ANMCC越高,说明软件系统中的ATD越多。然而,计算ANMCC是困难的,有时甚至是不可能的,因为数据(即提交日志)并不总是可用的。在这项工作中,我们建议使用软件模块化度量,它可以根据源代码直接计算,作为ANMCC的替代品来表示ATD。我们通过对13个开源软件项目的整体多案例研究验证了ANMCC和模块化度量之间的相关性。本研究结果表明,两个模块化指标,即包装变化影响指数(IPCI)和包装目标焦点指数(IPGF),与ANMCC有显著的相关性,因此可以作为备选的ATD指标。
{"title":"An empirical investigation of modularity metrics for indicating architectural technical debt","authors":"Zengyang Li, Peng Liang, P. Avgeriou, N. Guelfi, Apostolos Ampatzoglou","doi":"10.1145/2602576.2602581","DOIUrl":"https://doi.org/10.1145/2602576.2602581","url":null,"abstract":"Architectural technical debt (ATD) is incurred by design decisions that consciously or unconsciously compromise system-wide quality attributes, particularly maintainability and evolvability. ATD needs to be identified and measured, so that it can be monitored and eventually repaid, when appropriate. In practice, ATD is difficult to identify and measure, since ATD does not yield observable behaviors to end users. One indicator of ATD, is the average number of modified components per commit (ANMCC): a higher ANMCC indicates more ATD in a software system. However, it is difficult and sometimes impossible to calculate ANMCC, because the data (i.e., the log of commits) are not always available. In this work, we propose to use software modularity metrics, which can be directly calculated based on source code, as a substitute of ANMCC to indicate ATD. We validate the correlation between ANMCC and modularity metrics through a holistic multiple case study on thirteen open source software projects. The results of this study suggest that two modularity metrics, namely Index of Package Changing Impact (IPCI) and Index of Package Goal Focus (IPGF), have significant correlation with ANMCC, and therefore can be used as alternative ATD indicators.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114550850","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 60
Experiences with modeling memory contention for multi-core industrial real-time systems 多核工业实时系统内存争用建模经验
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602584
Thijmen de Gooijer, K. Eric Harper
Wide availability of multicore CPUs makes concurrency a critical design factor for the software architecture and execution models of industrial controllers, especially with messages passing between tasks running on different cores. To improve performance, we refactored a standardized shared memory IPC mechanism implemented with traditional kernel locks to use lock-free algorithms. Prototyping the changes made it possible to determine the speed-up when the locks were removed, but we could neither easily confirm whether the IPC performance would suffice for the communication patterns in our real-time system, nor could we tell how well the implementation would scale to CPUs with more cores than our test machine. In this paper we report on our experience with using a queuing petri net performance model to predict the impact of memory contention in a multi-core CPU on architecture level performance. We instantiated our model with benchmark data and prototype measurements. The results from our model simulation provide valuable feedback for design decisions and point at potential bottlenecks. Comparison of the prototype's performance with our model simulation results increases credibility of our work. This paper supports other practitioners who consider applying performance modeling to quantify the quality of their architectures.
多核cpu的广泛可用性使得并发成为工业控制器软件体系结构和执行模型的关键设计因素,特别是在不同核上运行的任务之间传递消息时。为了提高性能,我们重构了一个使用传统内核锁实现的标准化共享内存IPC机制,以使用无锁算法。对更改进行原型设计可以确定锁移除时的加速,但是我们既不能轻易地确认IPC性能是否足以满足实时系统中的通信模式,也不能判断该实现是否能够很好地扩展到比我们的测试机器拥有更多内核的cpu。在本文中,我们报告了我们使用排队petri网性能模型来预测多核CPU中内存争用对架构级性能的影响的经验。我们用基准数据和原型测量实例化了我们的模型。我们的模型仿真结果为设计决策提供了有价值的反馈,并指出了潜在的瓶颈。将样机的性能与模型仿真结果进行比较,增加了我们工作的可信度。本文支持其他考虑应用性能建模来量化其体系结构质量的实践者。
{"title":"Experiences with modeling memory contention for multi-core industrial real-time systems","authors":"Thijmen de Gooijer, K. Eric Harper","doi":"10.1145/2602576.2602584","DOIUrl":"https://doi.org/10.1145/2602576.2602584","url":null,"abstract":"Wide availability of multicore CPUs makes concurrency a critical design factor for the software architecture and execution models of industrial controllers, especially with messages passing between tasks running on different cores. To improve performance, we refactored a standardized shared memory IPC mechanism implemented with traditional kernel locks to use lock-free algorithms. Prototyping the changes made it possible to determine the speed-up when the locks were removed, but we could neither easily confirm whether the IPC performance would suffice for the communication patterns in our real-time system, nor could we tell how well the implementation would scale to CPUs with more cores than our test machine. In this paper we report on our experience with using a queuing petri net performance model to predict the impact of memory contention in a multi-core CPU on architecture level performance. We instantiated our model with benchmark data and prototype measurements. The results from our model simulation provide valuable feedback for design decisions and point at potential bottlenecks. Comparison of the prototype's performance with our model simulation results increases credibility of our work. This paper supports other practitioners who consider applying performance modeling to quantify the quality of their architectures.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130548793","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Formalizing correspondence rules for automotive architecture views 形式化汽车体系结构视图的通信规则
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602588
Y. Dajsuren, Christine M. Gerpheide, Alexander Serebrenik, Anton Wijs, Bogdan Vasilescu, M. Brand
Architecture views have long been used in software industry to systematically model complex systems by representing them from the perspective of related stakeholder concerns. However, consensus has not been reached for the architecture views between automotive architecture description languages and automotive architecture frameworks. Therefore, this paper presents the automotive architecture views based on an elaborate study of existing automotive architecture description techniques. Furthermore, we propose a method to formalize correspondence rules between architecture views to enforce consistency between architecture views. The approach was implemented in a Java plugin for IBM Rational Rhapsody and evaluated in a case study based on the Adaptive Cruise Control system. The outcome of the evaluation is considered to be a useful approach for formalizing correspondences between different views and a useful tool for automotive architects.
架构视图已经在软件行业中被长期使用,通过从相关涉众关注的角度表示复杂系统来系统地建模。然而,汽车体系结构描述语言和汽车体系结构框架之间的体系结构观点尚未达成一致。因此,本文在详细研究现有汽车体系结构描述技术的基础上,提出了汽车体系结构观点。此外,我们提出了一种形式化体系结构视图之间的对应规则的方法,以加强体系结构视图之间的一致性。该方法在IBM Rational Rhapsody的Java插件中实现,并在基于自适应巡航控制系统的案例研究中进行了评估。评估的结果被认为是形式化不同视图之间对应关系的有用方法,也是汽车架构师的有用工具。
{"title":"Formalizing correspondence rules for automotive architecture views","authors":"Y. Dajsuren, Christine M. Gerpheide, Alexander Serebrenik, Anton Wijs, Bogdan Vasilescu, M. Brand","doi":"10.1145/2602576.2602588","DOIUrl":"https://doi.org/10.1145/2602576.2602588","url":null,"abstract":"Architecture views have long been used in software industry to systematically model complex systems by representing them from the perspective of related stakeholder concerns. However, consensus has not been reached for the architecture views between automotive architecture description languages and automotive architecture frameworks. Therefore, this paper presents the automotive architecture views based on an elaborate study of existing automotive architecture description techniques. Furthermore, we propose a method to formalize correspondence rules between architecture views to enforce consistency between architecture views. The approach was implemented in a Java plugin for IBM Rational Rhapsody and evaluated in a case study based on the Adaptive Cruise Control system. The outcome of the evaluation is considered to be a useful approach for formalizing correspondences between different views and a useful tool for automotive architects.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"102 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121401005","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 16
Dealing with uncertainties in the performance modelling of software systems 软件系统性能建模中的不确定性处理
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602582
Diego Perez-Palacin, R. Mirandola
Models play a central role in the assessment of software non-functional properties like performance and reliability. Models can be used both in the initial phases of development to support the designer decisions and at runtime to evaluate the impact of changes in the existing software. However, being abstraction, the models include per-se a certain degree of uncertainty. Nevertheless, often this aspect is neglected and models are used beyond their capabilities. Recognising the presence of uncertainties and managing them, would increase the level of trust in a given software model. In this paper we exploit a recently defined taxonomy that classifies the different types of uncertainties and we define a method that, starting from a given model, helps in recognising the existence of uncertainty, in classifying and managing it. We show the method at work on an example application considering the performance of the application as target non-functional property.
模型在评估软件非功能属性(如性能和可靠性)方面起着核心作用。模型既可以在开发的初始阶段用于支持设计人员的决策,也可以在运行时用于评估现有软件中更改的影响。然而,由于是抽象的,模型本身包含一定程度的不确定性。然而,这方面经常被忽视,模型的使用超出了它们的能力。认识到不确定性的存在并对其进行管理,将提高对给定软件模型的信任程度。在本文中,我们利用最近定义的分类法对不同类型的不确定性进行分类,并定义了一种方法,该方法从给定模型开始,有助于识别不确定性的存在,并对其进行分类和管理。我们在一个示例应用程序中展示了该方法,该方法将应用程序的性能作为目标非功能属性。
{"title":"Dealing with uncertainties in the performance modelling of software systems","authors":"Diego Perez-Palacin, R. Mirandola","doi":"10.1145/2602576.2602582","DOIUrl":"https://doi.org/10.1145/2602576.2602582","url":null,"abstract":"Models play a central role in the assessment of software non-functional properties like performance and reliability. Models can be used both in the initial phases of development to support the designer decisions and at runtime to evaluate the impact of changes in the existing software. However, being abstraction, the models include per-se a certain degree of uncertainty. Nevertheless, often this aspect is neglected and models are used beyond their capabilities. Recognising the presence of uncertainties and managing them, would increase the level of trust in a given software model. In this paper we exploit a recently defined taxonomy that classifies the different types of uncertainties and we define a method that, starting from a given model, helps in recognising the existence of uncertainty, in classifying and managing it. We show the method at work on an example application considering the performance of the application as target non-functional property.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116903923","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 10
Designing and evolving distributed architecture using kevoree 使用kevree设计和发展分布式体系结构
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2611461
François Fouquet, Grégory Nain, Erwan Daubert, Johann Bourcier, Olivier Barais, N. Plouzeau, Brice Morin
Modern software applications are distributed and often operate in dynamic contexts, where requirements, assumptions about the environment, and usage profiles continuously change. These changes are difficult to predict and to anticipate at design time. The running software system should thus be able to react on its own, by dynamically adapting its behavior, in order to sustain a required quality of service. A key challenge is to provide the system with the necessary flexibility to perform self-adaptation, without compromising dependability. Models@Runtime is an emerging paradigm aiming at transferring traditional modeling activities (focusing on quality, verification, and so on) performed by humans, to the running system. In this trend, Kevoree provides a models@ runtime platform to design heterogeneous, distributed and adaptive applications based on the component based software engineering paradigm. At the end of this tutorial, applicants will be able to develop and assemble new components and communication channel to design complex self-adaptable distributed architectures by reusing existing piece of code.
现代软件应用程序是分布式的,并且经常在动态环境中运行,其中需求、关于环境的假设和使用概要文件不断变化。这些变化在设计时很难预测和预测。因此,正在运行的软件系统应该能够通过动态地调整其行为来自行做出反应,以维持所需的服务质量。一个关键的挑战是为系统提供必要的灵活性来执行自适应,而不损害可靠性。Models@Runtime是一个新兴的范例,旨在将人类执行的传统建模活动(关注质量、验证等)转移到正在运行的系统中。在这种趋势下,Kevoree提供了一个基于组件的软件工程范式的模型@运行时平台来设计异构、分布式和自适应的应用程序。在本教程结束时,申请人将能够开发和组装新的组件和通信通道,通过重用现有的代码片段来设计复杂的自适应分布式体系结构。
{"title":"Designing and evolving distributed architecture using kevoree","authors":"François Fouquet, Grégory Nain, Erwan Daubert, Johann Bourcier, Olivier Barais, N. Plouzeau, Brice Morin","doi":"10.1145/2602576.2611461","DOIUrl":"https://doi.org/10.1145/2602576.2611461","url":null,"abstract":"Modern software applications are distributed and often operate in dynamic contexts, where requirements, assumptions about the environment, and usage profiles continuously change. These changes are difficult to predict and to anticipate at design time. The running software system should thus be able to react on its own, by dynamically adapting its behavior, in order to sustain a required quality of service. A key challenge is to provide the system with the necessary flexibility to perform self-adaptation, without compromising dependability. Models@Runtime is an emerging paradigm aiming at transferring traditional modeling activities (focusing on quality, verification, and so on) performed by humans, to the running system. In this trend, Kevoree provides a models@ runtime platform to design heterogeneous, distributed and adaptive applications based on the component based software engineering paradigm. At the end of this tutorial, applicants will be able to develop and assemble new components and communication channel to design complex self-adaptable distributed architectures by reusing existing piece of code.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"123 2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121191135","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Empirical resilience evaluation of an architecture-based self-adaptive software system 基于体系结构的自适应软件系统的经验弹性评价
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602577
J. Cámara, Pedro Correia, R. Lemos, M. Vieira
Architecture-based self-adaptation is considered as a promising approach to drive down the development and operation costs of complex software systems operating in ever changing environments. However, there is still a lack of evidence supporting the arguments for the beneficial impact of architecture-based self-adaptation on resilience with respect to other customary approaches, such as embedded code-based adaptation. In this paper, we report on an empirical study about the impact on resilience of incorporating architecture-based self-adaptation in an industrial middleware used to collect data in highly populated networks of devices. To this end, we compare the results of resilience evaluation between the original version of the middleware, in which adaptation mechanisms are embedded at the code-level, and a modified version of that middleware in which the adaptation mechanisms are implemented using Rainbow, a framework for architecture-based self-adaptation. Our results show improved levels of resilience in architecture-based compared to embedded code-based self-adaptation.
基于体系结构的自适应被认为是降低在不断变化的环境中运行的复杂软件系统的开发和操作成本的一种很有前途的方法。然而,相对于其他习惯方法(如嵌入式基于代码的适应),基于架构的自适应对弹性的有益影响仍然缺乏证据支持。在本文中,我们报告了一项关于在工业中间件中整合基于架构的自适应对弹性影响的实证研究,该中间件用于在高度密集的设备网络中收集数据。为此,我们比较了中间件的原始版本和中间件的修改版本之间的弹性评估结果,在中间件的原始版本中,适应机制嵌入在代码级别,而在中间件的修改版本中,适应机制是使用基于体系结构的自适应框架Rainbow实现的。我们的结果表明,与基于嵌入式代码的自适应相比,基于架构的弹性水平有所提高。
{"title":"Empirical resilience evaluation of an architecture-based self-adaptive software system","authors":"J. Cámara, Pedro Correia, R. Lemos, M. Vieira","doi":"10.1145/2602576.2602577","DOIUrl":"https://doi.org/10.1145/2602576.2602577","url":null,"abstract":"Architecture-based self-adaptation is considered as a promising approach to drive down the development and operation costs of complex software systems operating in ever changing environments. However, there is still a lack of evidence supporting the arguments for the beneficial impact of architecture-based self-adaptation on resilience with respect to other customary approaches, such as embedded code-based adaptation. In this paper, we report on an empirical study about the impact on resilience of incorporating architecture-based self-adaptation in an industrial middleware used to collect data in highly populated networks of devices. To this end, we compare the results of resilience evaluation between the original version of the middleware, in which adaptation mechanisms are embedded at the code-level, and a modified version of that middleware in which the adaptation mechanisms are implemented using Rainbow, a framework for architecture-based self-adaptation. Our results show improved levels of resilience in architecture-based compared to embedded code-based self-adaptation.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134024310","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 20
期刊
International ACM SIGSOFT Conference on Quality of Software Architectures
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1