SIGSOFT '04/FSE-12最新文献

筛选
英文 中文
Reasoning about partial goal satisfaction for requirements and design engineering 需求与设计工程部分目标满足的推理
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029905
Emmanuel Letier, A. V. Lamsweerde
{"title":"Reasoning about partial goal satisfaction for requirements and design engineering","authors":"Emmanuel Letier, A. V. Lamsweerde","doi":"10.1145/1029894.1029905","DOIUrl":"https://doi.org/10.1145/1029894.1029905","url":null,"abstract":"Exploring alternative options is at the heart of the requirements and design processes. Different alternatives contribute to different degrees of achievement of non-functional goals about system safety, security, performance, usability, and so forth. Such goals in general cannot be satisfied in an absolute, clear-cut sense. Various qualitative and quantitative frameworks have been proposed to support the assessment of alternatives for design decision making. In general they lead to limited conclusions due to the lack of accuracy and measurability of goal formulations and the lack of impact propagation rules along goal contribution links.\u0000 The paper presents techniques for specifying partial degrees of goal satisfaction and for quantifying the impact of alternative system designs on the degree of goal satisfaction. The approach consists in enriching goal refinement models with a probabilistic layer for reasoning about partial satisfaction. Within such models, non-functional goals are specified in a precise, probabilistic way; their specification is interpreted in terms of application-specific measures; impact of alternative goal refinements is evaluated in terms of refinement equations over random variables involved in the system's functional goals. A systematic method is presented for guiding the elaboration of such models. The latter can then be used to assess the impact of alternative decisions on the degree of goal satisfaction or to derive quantitative, fine-grained requirements on the software to achieve the higher-level goals.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"741 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117009098","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}
引用次数: 317
Refining code-design mapping with flow analysis 用流分析精炼代码设计映射
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029926
Xiaofang Zhang, M. Young, John Howard Eli Fiskio-Lasseter
{"title":"Refining code-design mapping with flow analysis","authors":"Xiaofang Zhang, M. Young, John Howard Eli Fiskio-Lasseter","doi":"10.1145/1029894.1029926","DOIUrl":"https://doi.org/10.1145/1029894.1029926","url":null,"abstract":"We address the problem of refining and completing a partially specified high-level design model and a partially-defined mapping from source code to design model. This is related but not identical to tasks that have been automated with a variety of reverse engineering tools to support software modification tasks. We posited that set-based flow analysis algorithms would provide a convenient and powerful basis for refining an initial rough model and partial mapping, and in particular that the ability to compute fixed points of set equations would be useful in propagating constraints on the relations among the model, the mapping, and facts extracted from the implementation. Here we report our experience applying this approach to a modest but realistic example problem. We were successful in expressing a variety of useful transformations very succinctly as flow equations, and the propagation of recursively-defined constraints was indeed useful in refining the mapping from implementation to model. On the other hand, our experience highlights remaining challenges to make this an attractive approach for general use. Special measures are required to identify and remove inconsistent constraints before they propagate through a system. Also, while the required flow equations are succinct, they are also rather opaque; it is not obvious how their expressive power might be preserved in a more accessible notation.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"747 ","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"113994462","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}
引用次数: 9
Testing static analysis tools using exploitable buffer overflows from open source code 使用来自开源代码的可利用缓冲区溢出测试静态分析工具
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029911
Misha Zitser, R. Lippmann, T. Leek
{"title":"Testing static analysis tools using exploitable buffer overflows from open source code","authors":"Misha Zitser, R. Lippmann, T. Leek","doi":"10.1145/1029894.1029911","DOIUrl":"https://doi.org/10.1145/1029894.1029911","url":null,"abstract":"Five modern static analysis tools (ARCHER, BOON, Poly-Space C Verifier, Splint, and UNO) were evaluated using source code examples containing 14 exploitable buffer overflow vulnerabilities found in various versions of Sendmail, BIND, and WU-FTPD. Each code example included a \"BAD\" case with and a \"OK\" case without buffer overflows. Buffer overflows varied and included stack, heap, bss and data buffers; access above and below buffer bounds; access using pointers, indices, and functions; and scope differences between buffer creation and use. Detection rates for the \"BAD\" examples were low except for Poly-Space and Splint which had average detection rates of 87% and 57%, respectively. However, average false alarm rates were high and roughly 50% for these two tools. On patched programs these two tools produce one warning for every 12 to 46 lines of source code and neither tool appears able to accurately distinguished between vulnerable and patched code.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"88 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124174693","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}
引用次数: 297
Explaining abstract counterexamples 解释抽象反例
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029908
S. Chaki, Alex Groce, O. Strichman
{"title":"Explaining abstract counterexamples","authors":"S. Chaki, Alex Groce, O. Strichman","doi":"10.1145/1029894.1029908","DOIUrl":"https://doi.org/10.1145/1029894.1029908","url":null,"abstract":"When a program violates its specification a model checker produces a counterexample that shows an example of undesirable behavior. It is up to the user to understand the error, locate it, and fix the problem. Previous work introduced a technique for explaining and localizing errors based on finding the closest execution to a counterexample, with respect to a distance metric. That approach was applied only to concrete executions of programs. This paper extends and generalizes the approach by combining it with predicate abstraction. Using an abstract state-space increases scalability and makes explanations more informative. Differences between executions are presented in terms of predicates derived from the specification and program, rather than specific changes to variable values. Reasoning to the cause of an error from the factthat in the failing run x < y, but in the successful execution x = y is easier than reasoning from the information that in the failing run y = 239, but in the successful execution y = 232. An abstract explanation is <i>automatically generalized</i>\u0000 Predicate abstraction has previously been used in model checking purely as a state-space reduction technique. However, an abstraction good enough to enable a model checking tool to find an error is also likely to be useful as an <i>automatically generated high-level description of a state space</i> --- suitable for use by programmers. Results demonstrating the effectiveness of abstract explanations support this claim.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114775096","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}
引用次数: 57
System architecture: the context for scenario-based model synthesis 系统架构:基于场景的模型综合的上下文
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029903
Sebastián Uchitel, Robert Chatley, J. Kramer, J. Magee
{"title":"System architecture: the context for scenario-based model synthesis","authors":"Sebastián Uchitel, Robert Chatley, J. Kramer, J. Magee","doi":"10.1145/1029894.1029903","DOIUrl":"https://doi.org/10.1145/1029894.1029903","url":null,"abstract":"Constructing rigorous models for analysing the behaviour of concurrent and distributed systems is a complex task. Our aim is to facilitate model construction. Scenarios provide simple, intuitive, example based descriptions of the behaviour of component instances in the context of a simplified architecture instance. The specific architecture instance is generally chosen to provide sufficient context to indicate the expected behaviour of particular instances of component types to be used in the real system. Existing synthesis techniques provide mechanisms for building behaviour models for these simplified and specific architectural settings. However, the behaviour models required are those for the full generality of the system architecture, and not the simplified architecture used for scenarios. In this paper we exploit architectural information in the context of behaviour model synthesis from scenarios. Software architecture descriptions give the necessary contextual information so that component instance behaviour can be generalised to component type behaviour. Furthermore, architecture description languages can be used to describe the complex architectures in which the generalised behaviours need to be instantiated. Thus, architectural information used in conjunction with scenario-based model synthesis can support both model construction and elaboration, where the behaviour derived from simple architecture fragments can be instantiated in more complex ones.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"56 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115405523","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}
引用次数: 28
An efficient and backwards-compatible transformation to ensure memory safety of C programs 一种高效且向后兼容的转换,以确保C程序的内存安全
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029913
W. Xu, Daniel C. DuVarney, R. Sekar
{"title":"An efficient and backwards-compatible transformation to ensure memory safety of C programs","authors":"W. Xu, Daniel C. DuVarney, R. Sekar","doi":"10.1145/1029894.1029913","DOIUrl":"https://doi.org/10.1145/1029894.1029913","url":null,"abstract":"Memory-related errors, such as buffer overflows and dangling pointers, remain one of the principal reasons for failures of C programs. As a result, a number of recent research efforts have focused on the problem of dynamic detection of memory errors in C programs. However, existing approaches suffer from one or more of the following problems: inability to detect all memory errors (e.g., Purify), requiring non-trivial modifications to existing C programs (e.g., Cyclone), changing the memory management model of C to use garbage collection (e.g., CCured), and excessive performance overheads. In this paper, we present a new approach that addresses these problems. Our approach operates via source code transformation and combines efficient data-structures with simple, localized optimizations to obtain good performance.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"542 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128669539","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}
引用次数: 165
Engineering human trust in mobile system collaborations 在移动系统协作中设计人类信任
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029912
L. Capra
{"title":"Engineering human trust in mobile system collaborations","authors":"L. Capra","doi":"10.1145/1029894.1029912","DOIUrl":"https://doi.org/10.1145/1029894.1029912","url":null,"abstract":"Rapid advances in wireless networking technologies have enabled mobile devices to be connected anywhere and anytime. While roaming, applications on these devices dynamically discover hosts and services with whom interactions can be started. However, the fear of exposure to risky transactions with potentially unknown entities may seriously hinder collaboration. To minimise this risk, an engineering approach to the development of trust-based collaborations is necessary. This paper introduces hTrust, a human trust management model and framework that facilitates the construction of trust-aware mobile systems and applications. In particular, hTrust supports: reasoning about trust (trust formation), dissemination of trust information in the network (trust dissemination), and derivation of new trust relationships from previously formed ones (trust evolution). The framework views each mobile host as a self-contained unit, carrying along a portfolio of credentials that are used to prove its trustworthiness to other hosts in an ad-hoc mobile environment. Customising functions are defined to capture the natural disposition to trust of the user of the device inside our trust management framework.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"74 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114284085","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}
引用次数: 107
Correlation exploitation in error ranking 误差排序中的相关性利用
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029909
Theodore Kremenek, K. Ashcraft, Junfeng Yang, D. Engler
{"title":"Correlation exploitation in error ranking","authors":"Theodore Kremenek, K. Ashcraft, Junfeng Yang, D. Engler","doi":"10.1145/1029894.1029909","DOIUrl":"https://doi.org/10.1145/1029894.1029909","url":null,"abstract":"Static program checking tools can find many serious bugs in software, but due to analysis limitations they also frequently emit false error reports. Such false positives can easily render the error checker useless by hiding real errors amidst the false. Effective error report ranking schemes mitigate the problem of false positives by suppressing them during the report inspection process [17, 19, 20]. In this way, ranking techniques provide a complementary method to increasing the precision of the analysis results of a checking tool. A weakness of previous ranking schemes, however, is that they produce static rankings that do not adapt as reports are inspected, ignoring useful correlations amongst reports. This paper addresses this weakness with two main contributions. First, we observe that both bugs and false positives frequently cluster by code locality. We analyze clustering behavior in historical bug data from two large systems and show how clustering can be exploited to greatly improve error report ranking. Second, we present a general probabilistic technique for error ranking that (1) exploits correlation behavior amongst reports and (2) incorporates user feedback into the ranking process. In our results we observe a factor of 2-8 improvement over randomized ranking for error reports emitted by both intra-procedural and inter-procedural analysis tools.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"78 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121741358","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}
引用次数: 143
Heuristic-guided counterexample search in FLAVERS FLAVERS中启发式引导的反例搜索
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029922
Jianbin Tan, G. Avrunin, L. Clarke, S. Zilberstein, S. Leue
{"title":"Heuristic-guided counterexample search in FLAVERS","authors":"Jianbin Tan, G. Avrunin, L. Clarke, S. Zilberstein, S. Leue","doi":"10.1145/1029894.1029922","DOIUrl":"https://doi.org/10.1145/1029894.1029922","url":null,"abstract":"One of the benefits of finite-state verification (FSV) tools, such as model checkers, is that a counterexample is provided when the property cannot be verified. Not all counterexamples, however, are equally useful to the analysts trying to understand and localize the fault. Often counterexamples are so long that they are hard to understand. Thus, it is important for FSV tools to find short counterexamples and to do so quickly. Commonly used search strategies, such as breadth-first and depth-first search, do not usually perform well in both of these dimensions. In this paper, we investigate heuristic-guided search strategies for the FSV tool FLAVERS and propose a novel two-stage counterexample search strategy. We describe an experiment showing that this two-stage strategy, when combined with appropriate heuristics, is extremely effective at quickly finding short counterexamples for a large set of verification problems.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123591470","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}
引用次数: 26
Is security engineering really just good software engineering? 安全工程真的只是好的软件工程吗?
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029895
A. Wolf
{"title":"Is security engineering really just good software engineering?","authors":"A. Wolf","doi":"10.1145/1029894.1029895","DOIUrl":"https://doi.org/10.1145/1029894.1029895","url":null,"abstract":"These days, if you say that you are doing research in the area of computer security you instantly receive attention. Sadly, the same cannot be said of software engineering. But are the two areas really so different? Both seem to be concerned with issues that range from the finely technical to the broadly social and that force us to make difficult tradeoffs among cost, performance, quality, and usability. Both seem to require that we conduct our research in an interdisciplinary context. In the end we realize that fully solving the security problem for ever larger and more complex systems is as intractable as fully solving the traditional software engineering problem.\u0000 In this talk I will attempt to relate the challenges of security engineering and software engineering, and will argue that security engineering is more of a software engineering problem than many people would like to admit.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"76 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-10-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114546701","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
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信
小红书