首页 > 最新文献

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

英文 中文
Efficient re-resolution of SMT specifications for evolving software architectures 为不断发展的软件架构有效地重新解析SMT规范
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602578
Kenneth Johnson, R. Calinescu
We present a generic method for the efficient constraint re-resolution of a component-based software architecture after changes such as addition, removal and modification of components. Given a formal description of an evolving system as a constraint-specification problem, our method identifies and executes the re-resolution steps required to verify the system's compliance with constraints after each change. At each step, satisfiability modulo theory (SMT) techniques determine the satisfiability of component constraints expressed as logical formulae over suitably chosen theories of arithmetic, reusing results obtained in previous steps. We illustrate the application of the approach on a constraint-satisfaction problem arising from cloud-deployed software services. The incremental method is shown to re-resolve system constraints in a fraction of the time taken by standard SMT resolution.
提出了一种基于组件的软件体系结构在增加、删除和修改组件等变化后的有效约束重新解析的通用方法。给定作为约束规范问题的演进系统的正式描述,我们的方法识别并执行在每次变更之后验证系统对约束的遵从性所需的重新解析步骤。在每个步骤中,可满足模理论(SMT)技术确定在适当选择的算法理论上以逻辑公式表示的组件约束的可满足性,重用在前面步骤中获得的结果。我们举例说明了该方法在云部署软件服务产生的约束满足问题上的应用。增量方法被证明可以在标准SMT解析所花费的时间的一小部分内重新解析系统约束。
{"title":"Efficient re-resolution of SMT specifications for evolving software architectures","authors":"Kenneth Johnson, R. Calinescu","doi":"10.1145/2602576.2602578","DOIUrl":"https://doi.org/10.1145/2602576.2602578","url":null,"abstract":"We present a generic method for the efficient constraint re-resolution of a component-based software architecture after changes such as addition, removal and modification of components. Given a formal description of an evolving system as a constraint-specification problem, our method identifies and executes the re-resolution steps required to verify the system's compliance with constraints after each change. At each step, satisfiability modulo theory (SMT) techniques determine the satisfiability of component constraints expressed as logical formulae over suitably chosen theories of arithmetic, reusing results obtained in previous steps. We illustrate the application of the approach on a constraint-satisfaction problem arising from cloud-deployed software services. The incremental method is shown to re-resolve system constraints in a fraction of the time taken by standard SMT resolution.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"35 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":"132568096","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}
引用次数: 7
Architectural tactics support in cloud computing providers: the jelastic case 云计算提供商中的架构策略支持:jelastic案例
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602580
J. Chavarriaga, Carlos Noguera, R. Casallas, V. Jonckers
When developing and deploying applications in the cloud, architects face the challenge of conciliating architectural decisions with the options and restrictions imposed by the chosen cloud provider. An architectural decision can be seen as a two-step process: selecting architectural tactics to promote quality attributes and choosing design alternatives to implement those tactics. Available design alternatives are limited by the offer of the cloud provider. When configuring the cloud platform and its services as directed by the chosen tactics, the architect must be mindful of conflicts among the available alternatives. These trade-offs amongst the desired quality attributes can be difficult to detect, understand and ultimately solve. In this paper, we consider the case of Jelastic, a particular cloud platform provider, to illustrate: 1) the modeling of architectural tactics and their corresponding design alternatives using cloud configuration options, and 2) a process that exploits these models to determine which options to use in order to implement a combination of tactics. Furthermore, we present an analysis for this cloud provider that explains which combinations of tactics and configurations lead to trade-offs.
当在云中开发和部署应用程序时,架构师面临着将架构决策与所选云提供商所施加的选项和限制相协调的挑战。架构决策可以看作是一个两步的过程:选择架构策略来提升质量属性,选择设计替代方案来实现这些策略。可用的设计替代方案受到云提供商提供的限制。在按照所选策略配置云平台及其服务时,架构师必须注意可用替代方案之间的冲突。在期望的质量属性之间的这些权衡可能很难检测、理解和最终解决。在本文中,我们将考虑Jelastic(一个特定的云平台提供商)的案例,以说明:1)使用云配置选项对架构策略及其相应的设计方案进行建模,以及2)利用这些模型来确定使用哪些选项以实现策略组合的过程。此外,我们对该云提供商进行了分析,解释了策略和配置的哪些组合会导致权衡。
{"title":"Architectural tactics support in cloud computing providers: the jelastic case","authors":"J. Chavarriaga, Carlos Noguera, R. Casallas, V. Jonckers","doi":"10.1145/2602576.2602580","DOIUrl":"https://doi.org/10.1145/2602576.2602580","url":null,"abstract":"When developing and deploying applications in the cloud, architects face the challenge of conciliating architectural decisions with the options and restrictions imposed by the chosen cloud provider. An architectural decision can be seen as a two-step process: selecting architectural tactics to promote quality attributes and choosing design alternatives to implement those tactics. Available design alternatives are limited by the offer of the cloud provider. When configuring the cloud platform and its services as directed by the chosen tactics, the architect must be mindful of conflicts among the available alternatives. These trade-offs amongst the desired quality attributes can be difficult to detect, understand and ultimately solve. In this paper, we consider the case of Jelastic, a particular cloud platform provider, to illustrate: 1) the modeling of architectural tactics and their corresponding design alternatives using cloud configuration options, and 2) a process that exploits these models to determine which options to use in order to implement a combination of tactics. Furthermore, we present an analysis for this cloud provider that explains which combinations of tactics and configurations lead to trade-offs.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"111 3S 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":"124556004","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}
引用次数: 3
Software QoS enhancement through self-adaptation and formal models 通过自适应和形式化模型增强软件QoS
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2611459
R. Mirandola, Diego Perez-Palacin
Modern software operates in highly dynamic and often unpredictable environments that can degrade its quality of service. Therefore, it is increasingly important having systems able to adapt their behavior to the environment where they execute at any moment. Nevertheless, software with self-adaptive capabilities is difficult to develop. To make easier its development, different architectural frameworks have been proposed during the last years. A shared characteristic among most frameworks is that they define applications that make an internal use of models, which are analyzed to discover the configurations that better fit in the changing environments. In this context, this tutorial presents the current research advances on architectural frameworks for building self-adaptive software that meets its Quality of Service (QoS). We discuss architectures that use self-adaption to improve the QoS and whose adaptations are planned as a result of the analysis of formal models. We also describe a set of current research challenges that are still preventing the complete automatic control of dependable self-adaptive software.
现代软件在高度动态且经常不可预测的环境中运行,这可能会降低其服务质量。因此,让系统能够随时调整其行为以适应其执行的环境变得越来越重要。然而,具有自适应能力的软件很难开发。为了使其更容易开发,在过去几年中提出了不同的体系结构框架。大多数框架的一个共同特征是,它们定义了内部使用模型的应用程序,对模型进行分析以发现更适合不断变化的环境的配置。在此背景下,本教程介绍了用于构建满足其服务质量(QoS)的自适应软件的体系结构框架的当前研究进展。我们将讨论使用自适应来改进QoS的体系结构,并根据形式化模型的分析计划其适应性。我们还描述了一组当前的研究挑战,这些挑战仍然阻碍了可靠的自适应软件的完全自动控制。
{"title":"Software QoS enhancement through self-adaptation and formal models","authors":"R. Mirandola, Diego Perez-Palacin","doi":"10.1145/2602576.2611459","DOIUrl":"https://doi.org/10.1145/2602576.2611459","url":null,"abstract":"Modern software operates in highly dynamic and often unpredictable environments that can degrade its quality of service. Therefore, it is increasingly important having systems able to adapt their behavior to the environment where they execute at any moment. Nevertheless, software with self-adaptive capabilities is difficult to develop. To make easier its development, different architectural frameworks have been proposed during the last years. A shared characteristic among most frameworks is that they define applications that make an internal use of models, which are analyzed to discover the configurations that better fit in the changing environments.\u0000 In this context, this tutorial presents the current research advances on architectural frameworks for building self-adaptive software that meets its Quality of Service (QoS). We discuss architectures that use self-adaption to improve the QoS and whose adaptations are planned as a result of the analysis of formal models. We also describe a set of current research challenges that are still preventing the complete automatic control of dependable self-adaptive software.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"57 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":"132177516","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}
引用次数: 1
Automatic detection of performance anti-patterns in inter-component communications 组件间通信中性能反模式的自动检测
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602579
Alexander Wert, M. Oehler, Christoph Heger, Roozbeh Farahbod
Performance problems such as high response times in software applications have a significant effect on the customer's satisfaction. In enterprise applications, performance problems are frequently manifested in inefficient or unnecessary communication patterns between software components originating from poor architectural design or implementation. Due to high manual effort, thorough performance analysis is often neglected, in practice. In order to overcome this problem, automated engineering approaches are required for the detection of performance problems. In this paper, we introduce several heuristics for measurement-based detection of well-known performance anti-patterns in inter-component communications. The detection heuristics comprise load and instrumentation descriptions for performance tests as well as corresponding detection rules. We integrate these heuristics with Dynamic Spotter, a framework for automatic detection of performance problems. We evaluate our heuristics on four evaluation scenarios based on an e-commerce benchmark (TPC-W) where the heuristics detect the expected communication performance anti-patterns and pinpoint their root causes.
软件应用程序中的高响应时间等性能问题对客户满意度有重大影响。在企业应用程序中,性能问题经常表现为由于糟糕的体系结构设计或实现而导致的软件组件之间低效或不必要的通信模式。由于大量的手工工作,在实践中经常忽略彻底的性能分析。为了克服这个问题,需要使用自动化工程方法来检测性能问题。在本文中,我们介绍了几种基于测量的启发式方法,用于检测组件间通信中众所周知的性能反模式。检测启发式包括性能测试的负载和仪器描述以及相应的检测规则。我们将这些启发式方法与Dynamic Spotter(一个自动检测性能问题的框架)集成在一起。我们基于电子商务基准(TPC-W)在四个评估场景中评估我们的启发式方法,其中启发式方法检测预期的通信性能反模式并查明其根本原因。
{"title":"Automatic detection of performance anti-patterns in inter-component communications","authors":"Alexander Wert, M. Oehler, Christoph Heger, Roozbeh Farahbod","doi":"10.1145/2602576.2602579","DOIUrl":"https://doi.org/10.1145/2602576.2602579","url":null,"abstract":"Performance problems such as high response times in software applications have a significant effect on the customer's satisfaction. In enterprise applications, performance problems are frequently manifested in inefficient or unnecessary communication patterns between software components originating from poor architectural design or implementation. Due to high manual effort, thorough performance analysis is often neglected, in practice. In order to overcome this problem, automated engineering approaches are required for the detection of performance problems. In this paper, we introduce several heuristics for measurement-based detection of well-known performance anti-patterns in inter-component communications. The detection heuristics comprise load and instrumentation descriptions for performance tests as well as corresponding detection rules. We integrate these heuristics with Dynamic Spotter, a framework for automatic detection of performance problems. We evaluate our heuristics on four evaluation scenarios based on an e-commerce benchmark (TPC-W) where the heuristics detect the expected communication performance anti-patterns and pinpoint their root causes.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"26 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":"133066834","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}
引用次数: 24
Architecture management and evaluation in mature products: experiences from a lightweight approach 成熟产品中的架构管理和评估:来自轻量级方法的经验
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602583
M. Raatikainen, J. Savolainen, T. Männistö
Software architecture evaluation is an essential part of architecture management and a means to uncover problems and increase confidence in the capability of the software architecture in fulfilling the most critical requirements. Architecture evaluation is typically carried out at an early stage of a software development. However, development efforts are often related to further development of existing software. We present a case study of the software architecture board (SWAB) initiative carried out at in a company called NSN. SWAB employed a lightweight architecture evaluation and management approach to exchange architectural experiences with related products and assess ability to fulfill future requirements. SWAB operated for two years but ultimately came to an end because the desired objectives were not achieved. The case study provides lessons for the evaluation of architecture in mature products and for using a lightweight evaluation approach: Evaluation in mature products seems not to be about finding problems and risk or making trade-offs, but about architecture management such as better communication, raising awareness about the architecture, and increased confidence to the architecture throughout the organization; and a lightweight architecture evaluation seems to be a good approach especially for mature products. However, the motivation and justification for architectural evaluation of mature products remains challenging, as their architecture is already in place and evolved over years towards good candidates, although the need for inter-product communication and alignment of architectural issues can be argued for.
软件体系结构评估是体系结构管理的一个重要部分,也是发现问题和增加对软件体系结构满足最关键需求的能力的信心的一种手段。架构评估通常在软件开发的早期阶段进行。然而,开发工作通常与现有软件的进一步开发有关。我们提出了一个在一家名为NSN的公司实施的软件架构板(SWAB)计划的案例研究。SWAB采用轻量级架构评估和管理方法,与相关产品交换架构经验,并评估满足未来需求的能力。SWAB操作了两年,但最终因未能达到预期目标而终止。案例研究为成熟产品中的体系结构评估和使用轻量级评估方法提供了经验教训:成熟产品中的评估似乎不是关于发现问题和风险或做出权衡,而是关于体系结构管理,例如更好的沟通,提高对体系结构的认识,以及在整个组织中增加对体系结构的信心;轻量级架构评估似乎是一个很好的方法,尤其是对于成熟的产品。然而,对成熟产品进行体系结构评估的动机和理由仍然具有挑战性,因为它们的体系结构已经到位,并且经过多年的发展已经成为好的候选产品,尽管需要产品间的沟通和体系结构问题的一致性是可以争论的。
{"title":"Architecture management and evaluation in mature products: experiences from a lightweight approach","authors":"M. Raatikainen, J. Savolainen, T. Männistö","doi":"10.1145/2602576.2602583","DOIUrl":"https://doi.org/10.1145/2602576.2602583","url":null,"abstract":"Software architecture evaluation is an essential part of architecture management and a means to uncover problems and increase confidence in the capability of the software architecture in fulfilling the most critical requirements. Architecture evaluation is typically carried out at an early stage of a software development. However, development efforts are often related to further development of existing software. We present a case study of the software architecture board (SWAB) initiative carried out at in a company called NSN. SWAB employed a lightweight architecture evaluation and management approach to exchange architectural experiences with related products and assess ability to fulfill future requirements. SWAB operated for two years but ultimately came to an end because the desired objectives were not achieved. The case study provides lessons for the evaluation of architecture in mature products and for using a lightweight evaluation approach: Evaluation in mature products seems not to be about finding problems and risk or making trade-offs, but about architecture management such as better communication, raising awareness about the architecture, and increased confidence to the architecture throughout the organization; and a lightweight architecture evaluation seems to be a good approach especially for mature products. However, the motivation and justification for architectural evaluation of mature products remains challenging, as their architecture is already in place and evolved over years towards good candidates, although the need for inter-product communication and alignment of architectural issues can be argued for.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"39 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":"127115129","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
Trust or verify? 信任还是验证?
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2611460
B. Meyer
Software quality should be built in from the start: a priori. Software quality can only be guaranteed through verification: a posteriori. It is easy to find arguments for either of these views. Is quality an a priori or a posteriori attribute? Saying "both" does not answer the question, only turns it into a new one: how should we combine the two approaches? Building on both my experience with the Eiffel method and the verification work at ETH I will try to define what exact doses of, respectively, "correctness by construction" and modern verification techniques can, at a realistic cost, yield the best possible quality. The ETH work is based on the idea of "Verification As a Matter Of Course": make verification available to all developments, not just the most critical applications. Integrated in the Eiffel Verification Environment (EVE), the approach combines many different forms of verification, some static (proofs, based on Boogie), some dynamic (tests, based on the AutoTest automatic test framework. The talk will include some of the results from the EVE effort to discuss future trends in the production of reliable architectures.
软件质量应该从一开始就被构建:先验的。软件质量只能通过事后验证来保证。很容易找到支持这两种观点的论据。质量是先天的还是后天的属性?说“两者”并不能回答这个问题,只是把它变成了一个新的问题:我们应该如何把这两种方法结合起来?基于我使用Eiffel方法的经验和ETH的验证工作,我将分别尝试定义“构建正确性”和现代验证技术的确切剂量,以现实的成本,产生最好的质量。ETH的工作是基于“验证是理所当然的”的理念:使验证可用于所有开发,而不仅仅是最关键的应用程序。该方法集成在Eiffel验证环境(EVE)中,结合了许多不同形式的验证,有些是静态的(基于Boogie的证明),有些是动态的(基于AutoTest自动测试框架的测试)。该演讲将包括EVE工作的一些结果,以讨论可靠架构生产的未来趋势。
{"title":"Trust or verify?","authors":"B. Meyer","doi":"10.1145/2602576.2611460","DOIUrl":"https://doi.org/10.1145/2602576.2611460","url":null,"abstract":"Software quality should be built in from the start: a priori. Software quality can only be guaranteed through verification: a posteriori.\u0000 It is easy to find arguments for either of these views. Is quality an a priori or a posteriori attribute? Saying \"both\" does not answer the question, only turns it into a new one: how should we combine the two approaches?\u0000 Building on both my experience with the Eiffel method and the verification work at ETH I will try to define what exact doses of, respectively, \"correctness by construction\" and modern verification techniques can, at a realistic cost, yield the best possible quality.\u0000 The ETH work is based on the idea of \"Verification As a Matter Of Course\": make verification available to all developments, not just the most critical applications. Integrated in the Eiffel Verification Environment (EVE), the approach combines many different forms of verification, some static (proofs, based on Boogie), some dynamic (tests, based on the AutoTest automatic test framework. The talk will include some of the results from the EVE effort to discuss future trends in the production of reliable architectures.","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":"129423317","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
SRMP: a software pattern for deadlocks prevention inreal-time concurrency models SRMP:一种在实时并发模型中防止死锁的软件模式
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602591
Rania Mzid, C. Mraidha, Jean-Philippe Babau, M. Abid
Model-based approaches for the development of software intensive real-time embedded systems allow early verification of timing properties at the design phase. At this phase, the Real-Time Operating System (RTOS) may not be chosen, hence some assumptions on the software platform are made to achieve timing verifications such as schedulability analysis of tasks describing the application. Among these assumptions, the synchronization protocol which is used to manage the concurrent access to resources that are shared between tasks. A classical solution is to consider the Priority Ceiling Protocol (PCP) synchronization protocol to avoid deadlocks. However, when this protocol is not provided by the target RTOS on which the application will be deployed, the concurrency model becomes not implementable and a new synchronization protocol must be considered. In this paper, we propose the Shared Resource Merge Pattern (SRMP) which aims to prevent deadlocks when the use of PCP protocol is not allowed by the target RTOS. The application of this pattern on the concurrency model must guarantee that the timing properties of the real-time application are still met.
基于模型的方法用于开发软件密集型实时嵌入式系统,允许在设计阶段早期验证时间属性。在此阶段,可能不选择实时操作系统(RTOS),因此对软件平台进行一些假设,以实现时序验证,例如描述应用程序的任务的可调度性分析。在这些假设中,同步协议用于管理对任务间共享资源的并发访问。经典的解决方案是考虑优先级上限协议(PCP)同步协议来避免死锁。然而,当部署应用程序的目标RTOS不提供此协议时,并发模型将无法实现,必须考虑新的同步协议。在本文中,我们提出了共享资源合并模式(SRMP),该模式旨在防止在目标RTOS不允许使用PCP协议时发生死锁。这种模式在并发模型上的应用必须保证仍然满足实时应用程序的计时属性。
{"title":"SRMP: a software pattern for deadlocks prevention inreal-time concurrency models","authors":"Rania Mzid, C. Mraidha, Jean-Philippe Babau, M. Abid","doi":"10.1145/2602576.2602591","DOIUrl":"https://doi.org/10.1145/2602576.2602591","url":null,"abstract":"Model-based approaches for the development of software intensive real-time embedded systems allow early verification of timing properties at the design phase. At this phase, the Real-Time Operating System (RTOS) may not be chosen, hence some assumptions on the software platform are made to achieve timing verifications such as schedulability analysis of tasks describing the application. Among these assumptions, the synchronization protocol which is used to manage the concurrent access to resources that are shared between tasks. A classical solution is to consider the Priority Ceiling Protocol (PCP) synchronization protocol to avoid deadlocks. However, when this protocol is not provided by the target RTOS on which the application will be deployed, the concurrency model becomes not implementable and a new synchronization protocol must be considered. In this paper, we propose the Shared Resource Merge Pattern (SRMP) which aims to prevent deadlocks when the use of PCP protocol is not allowed by the target RTOS. The application of this pattern on the concurrency model must guarantee that the timing properties of the real-time application are still met.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"10 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":"126392774","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
Failure data collection for reliability prediction models: a survey 可靠性预测模型的失效数据收集综述
Pub Date : 2014-06-27 DOI: 10.1145/2602576.2602586
Barbora Buhnova, Stanislav Chren, Lucie Fabriková
Design decisions made early in software development have great impact on the software product quality. Design-time reliability prediction is one of the techniques that support software engineers in early design decisions, based on the evaluation of reliability impact of the individual design alternatives. The accuracy of reliability prediction is critically dependent on the accuracy of reliability prediction models, which relies on uncertain failure parameters (such as the failure probability of component-internal actions). Although the effectiveness of the failure-parameter estimation critically influences the usability of the prediction techniques, the parameter estimation often relies on expert knowledge and is not receiving systematic attention. This paper aims to survey existing techniques for estimation and collection of failure parameters in architecture-based reliability prediction models, and presents the findings that can be learned from their detailed analysis.
在软件开发早期做出的设计决策对软件产品质量有很大的影响。设计时可靠性预测是支持软件工程师在早期设计决策的技术之一,它基于对单个设计方案的可靠性影响的评估。可靠性预测的准确性很大程度上取决于可靠性预测模型的准确性,而可靠性预测模型依赖于不确定的失效参数(如部件内部动作的失效概率)。虽然故障参数估计的有效性对预测技术的可用性有重要影响,但参数估计往往依赖于专家知识,没有得到系统的重视。本文旨在综述现有的基于体系结构的可靠性预测模型中失效参数的估计和收集技术,并从这些技术的详细分析中得出一些结论。
{"title":"Failure data collection for reliability prediction models: a survey","authors":"Barbora Buhnova, Stanislav Chren, Lucie Fabriková","doi":"10.1145/2602576.2602586","DOIUrl":"https://doi.org/10.1145/2602576.2602586","url":null,"abstract":"Design decisions made early in software development have great impact on the software product quality. Design-time reliability prediction is one of the techniques that support software engineers in early design decisions, based on the evaluation of reliability impact of the individual design alternatives. The accuracy of reliability prediction is critically dependent on the accuracy of reliability prediction models, which relies on uncertain failure parameters (such as the failure probability of component-internal actions). Although the effectiveness of the failure-parameter estimation critically influences the usability of the prediction techniques, the parameter estimation often relies on expert knowledge and is not receiving systematic attention. This paper aims to survey existing techniques for estimation and collection of failure parameters in architecture-based reliability prediction models, and presents the findings that can be learned from their detailed analysis.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"16 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":"125432670","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}
引用次数: 7
Combining fUML and profiles for non-functional analysis based on model execution traces 结合uml和概要文件进行基于模型执行轨迹的非功能分析
Pub Date : 2013-06-17 DOI: 10.1145/2465478.2465493
L. Berardinelli, Philip Langer, Tanja Mayerhofer
For developing software systems it is crucial to consider non-functional properties already in an early development stage to guarantee that the system will satisfy its non-functional requirements. Following the model-based engineering paradigm facilitates an early analysis of non-functional properties of the system being developed based on the elaborated design models. Although UML is widely used in model-based engineering, it is not suitable for model-based analysis directly due to its lack of formal semantics. Thus, current model-based analysis approaches transform UML models into formal languages dedicated for analyses purpose, which may introduce accidental complexity of implementing the required model transformations. The recently introduced fUML standard provides a formal semantics of a subset of UML enabling the execution of UML models. In this paper, we show how fUML can be utilized for analyzing UML models directly without having to transform them. We present a reusable framework for performing model-based analyses leveraging execution traces of UML models and integrating UML profiles heretofore unsupported by fUML. A case study in the performance analysis domain is used to illustrate the benefits of our framework.
对于开发软件系统来说,在早期开发阶段就考虑非功能属性以保证系统将满足其非功能需求是至关重要的。遵循基于模型的工程范式有助于基于精心设计模型开发的系统的非功能属性的早期分析。尽管UML在基于模型的工程中被广泛使用,但由于缺乏形式化语义,它并不适合直接用于基于模型的分析。因此,当前基于模型的分析方法将UML模型转换为专门用于分析目的的正式语言,这可能会引入实现所需模型转换的意外复杂性。最近引入的UML标准提供了UML子集的形式化语义,支持UML模型的执行。在本文中,我们展示了如何利用fUML直接分析UML模型,而不必对它们进行转换。我们提出了一个可重用的框架,用于执行基于模型的分析,利用UML模型的执行轨迹,并集成迄今为止不被UML支持的UML概要文件。在性能分析领域的一个案例研究被用来说明我们的框架的好处。
{"title":"Combining fUML and profiles for non-functional analysis based on model execution traces","authors":"L. Berardinelli, Philip Langer, Tanja Mayerhofer","doi":"10.1145/2465478.2465493","DOIUrl":"https://doi.org/10.1145/2465478.2465493","url":null,"abstract":"For developing software systems it is crucial to consider non-functional properties already in an early development stage to guarantee that the system will satisfy its non-functional requirements. Following the model-based engineering paradigm facilitates an early analysis of non-functional properties of the system being developed based on the elaborated design models. Although UML is widely used in model-based engineering, it is not suitable for model-based analysis directly due to its lack of formal semantics. Thus, current model-based analysis approaches transform UML models into formal languages dedicated for analyses purpose, which may introduce accidental complexity of implementing the required model transformations.\u0000 The recently introduced fUML standard provides a formal semantics of a subset of UML enabling the execution of UML models. In this paper, we show how fUML can be utilized for analyzing UML models directly without having to transform them. We present a reusable framework for performing model-based analyses leveraging execution traces of UML models and integrating UML profiles heretofore unsupported by fUML. A case study in the performance analysis domain is used to illustrate the benefits of our framework.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"96 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-06-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116670767","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
Evaluation framework for software architecture viewpoint languages 软件架构视点语言的评估框架
Pub Date : 2013-06-17 DOI: 10.1145/2465478.2465483
B. Tekinerdogan, Elif Demirli
In general, software architecture is documented using software architecture views to address the different stakeholder concerns. The current trend recognizes that the set of viewpoints should not be fixed but multiple viewpoints might be introduced instead to design and document the software architecture. To ensure the quality of the software architecture various software architecture evaluation approaches have been introduced. In addition several documentation guidelines have been provided to ensure the quality of the software architecture document. Unfortunately, the evaluation of the adopted viewpoints that are used to design and document the software architecture has not been considered explicitly. If the architectural viewpoints are not well-defined then implicitly this will have an impact on the quality of the design and the documentation of the software architecture. We present an evaluation framework for assessing existing or newly defined software architecture viewpoint languages. The approach is based on software language engineering techniques, and considers each viewpoint as a metamodel. The approach does not assume a particular architecture framework and can be applied to existing or newly defined viewpoint languages. We illustrate our approach for modeling and reviewing the first and second editions of the viewpoint languages of the Views and Beyond approach.
一般来说,软件体系结构是使用软件体系结构视图来处理不同涉众关注的问题。当前的趋势认识到,视点集合不应该是固定的,而是可以引入多个视点来设计和记录软件体系结构。为了保证软件体系结构的质量,引入了各种软件体系结构评估方法。此外,还提供了一些文档指南,以确保软件架构文档的质量。不幸的是,对用于设计和记录软件体系结构的所采用的视点的评估并没有被明确地考虑。如果体系结构观点没有明确定义,那么这将会对软件体系结构的设计质量和文档编制产生影响。我们提出了一个评估框架,用于评估现有的或新定义的软件架构视点语言。该方法基于软件语言工程技术,并将每个视点视为一个元模型。该方法不假设特定的体系结构框架,并且可以应用于现有的或新定义的视点语言。我们举例说明了Views和Beyond方法的视点语言的第一版和第二版的建模和回顾方法。
{"title":"Evaluation framework for software architecture viewpoint languages","authors":"B. Tekinerdogan, Elif Demirli","doi":"10.1145/2465478.2465483","DOIUrl":"https://doi.org/10.1145/2465478.2465483","url":null,"abstract":"In general, software architecture is documented using software architecture views to address the different stakeholder concerns. The current trend recognizes that the set of viewpoints should not be fixed but multiple viewpoints might be introduced instead to design and document the software architecture. To ensure the quality of the software architecture various software architecture evaluation approaches have been introduced. In addition several documentation guidelines have been provided to ensure the quality of the software architecture document. Unfortunately, the evaluation of the adopted viewpoints that are used to design and document the software architecture has not been considered explicitly. If the architectural viewpoints are not well-defined then implicitly this will have an impact on the quality of the design and the documentation of the software architecture. We present an evaluation framework for assessing existing or newly defined software architecture viewpoint languages. The approach is based on software language engineering techniques, and considers each viewpoint as a metamodel. The approach does not assume a particular architecture framework and can be applied to existing or newly defined viewpoint languages. We illustrate our approach for modeling and reviewing the first and second editions of the viewpoint languages of the Views and Beyond approach.","PeriodicalId":110790,"journal":{"name":"International ACM SIGSOFT Conference on Quality of Software Architectures","volume":"130 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-06-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114543368","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}
引用次数: 15
期刊
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