parallel changes, in which separate lines of development are carried out by different developments, are a basic fact of developing and maintaining large-scale software systems. Merging parallel versions and variants o...
详细信息
parallel changes, in which separate lines of development are carried out by different developments, are a basic fact of developing and maintaining large-scale software systems. Merging parallel versions and variants of source code is a common and essential software engineering activity. When a non-trivial number of conflicts is detected, there is a need to support the maintainer in investigating and resolving these conflicts. In this study, the authors present software conflict resolution recommender (scoreRec), a cost-benefit approach to ranking the conflicting software entities. The contributions of scoreRec lie in the leverage of both structural and semantic information of the source code to generate conflict resolution recommendations, as well as the hierarchical presentation of the recommendations with detailed explanations. The authors evaluate scoreRec through an industrial-strength legacy system developed by computational scientists. The results show that scoreRec offers relevant and insightful information and sound engineering support for conflict resolution. The authors' work also sheds light on the future development of recommendation systems in the context of software merging.
With the parallel computer systems scaling-up, the measure index for performance of the systems demands a shift from traditional "high performance" to "high productivity." This brings a new challen...
详细信息
With the parallel computer systems scaling-up, the measure index for performance of the systems demands a shift from traditional "high performance" to "high productivity." This brings a new challenge to defining a synthetic, yet meaningful, measure index of multiple productivity variables;namely computing performance, reliability, energy consumption, parallel software development, etc. Traditional measures for large-scale parallel computer systems merely focus on computing performance, and are incapable of measuring the multiple productivity variables simultaneously in an effective manner. A recently proposed market-related money model, which pursues high utility/cost ratio, relies on money as a measure to consider the multiple productivity variables. Differing from the previous models, this paper proposes a novel system productivity speedup metric for large-scale parallel computer systems. The metric uses speedup instead of money to comprehensively unify the measures of multiple productivity variables. Finally, we propose a trade-off productivity measurement to weigh different productivity variables, to address different design targets. The measurement can facilitate the system evaluation, expose future technique tendencies, and guide future system design.
A large number of optimization problems within the field of Bioinformatics require methods able to handle its inherent complexity (e.g. NP-hard problems) and also demand increased computational efforts. In this contex...
详细信息
A large number of optimization problems within the field of Bioinformatics require methods able to handle its inherent complexity (e.g. NP-hard problems) and also demand increased computational efforts. In this context, the use of parallel architectures is a necessity. In this work, we propose ParJECoLi, a Java based library that offers a large set of metaheuristic methods (such as Evolutionary Algorithms) and also addresses the issue of its efficient execution on a wide range of parallel architectures. The proposed approach focuses on the easiness of use, making the adaptation to distinct parallel environments (multicore, cluster, grid) transparent to the user. Indeed, this work shows how the development of the optimization library can proceed independently of its adaptation for several architectures, making use of Aspect-Oriented Programming. The pluggable nature of parallelism related modules allows the user to easily configure its environment, adding parallelism modules to the base source code when needed. The performance of the platform is validated with two case studies within biological model optimization. (c) 2012 Elsevier Ireland Ltd. All rights reserved.
In collaborative softwaredevelopment, the utilization of Version Control Systems (VCSs) is a must. For this, a multitude of pessimistic as well as optimistic VCSs for model artifacts emerged. Pessimistic approaches f...
详细信息
In collaborative softwaredevelopment, the utilization of Version Control Systems (VCSs) is a must. For this, a multitude of pessimistic as well as optimistic VCSs for model artifacts emerged. Pessimistic approaches follow the lock-edit-unlock paradigm whereas optimistic approaches allow parallel editing of one resource, which are therefore the preferred ones. To be flexible for the ever increasing variety of modeling environments and languages such tools should be independent of the modeling environment and applicable to various modeling languages. Those VCS characteristics may implicate a lack of information for the conflict detection method by virtue of firstly receiving solely the state of an artifact without concrete editing operations and secondly due to unavailable knowledge about the semantics of a modeling language. However, in optimistic VCSs concurrent changes can result in conflicts and inconsistencies. In environment and language independent VCSs inconsistencies would even arise more often due to information losses. Hence, accurate conflict detection methods are indispensable for the realization of such VCSs. To tackle this task, the "Semantically enhanced Model Version Control System" SMoVer is presented. With SMoVer it is possible to specify the semantics of a modeling language, needed for conflict detection in order to provide more accurate conflict reports than other current environment and language independent VCSs. In this work, it is exemplified how semantics of a specific modeling language can be specified in SMoVer, how those specifications can improve the accuracy of conflict reports and finally how those can be presented to modelers.
In real-time and safety-critical systems, the move towards multicores is becoming unavoidable in order to keep pace with the increasing required processing power and to meet the high integration trend while maintainin...
详细信息
ISBN:
(纸本)9781467383219
In real-time and safety-critical systems, the move towards multicores is becoming unavoidable in order to keep pace with the increasing required processing power and to meet the high integration trend while maintaining a reasonable power consumption. However, standard multicore systems are mainly designed to increase average performance, whereas embedded systems have additional requirements with respect to safety, reliability and realtime behavior. Therefore, the shift to multicores raises several challenges the embedded community has to face. These challenges involve the design of certifiable multicore platforms, the management of shared resources and the development/integration of parallelsoftware. These issues are encountered at different steps of system development, from modeling and design to software implementation and hardware deployment. Therefore, both multicore/semiconductor manufacturers and the real-time community have to bridge the gap in order to meet the challenges imposed by multicores. The goal of this paper is to trigger such a discussion as an attempt to bridge the gap between the two worlds and to raise awareness about the hurdles and challenges that need to be tackled.
暂无评论