SIGSOFT '04/FSE-12最新文献

筛选
英文 中文
Efficient incremental algorithms for dynamic detection of likely invariants 动态检测似然不变量的有效增量算法
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029901
J. Perkins, Michael D. Ernst
{"title":"Efficient incremental algorithms for dynamic detection of likely invariants","authors":"J. Perkins, Michael D. Ernst","doi":"10.1145/1029894.1029901","DOIUrl":"https://doi.org/10.1145/1029894.1029901","url":null,"abstract":"Dynamic detection of likely invariants is a program analysis that generalizes over observed values to hypothesize program properties. The reported program properties are a set of likely invariants over the program, also known as an operational abstraction. Operational abstractions are useful in testing, verification, bug detection, refactoring, comparing behavior, and many other tasks.\u0000 Previous techniques for dynamic invariant detection scale poorly or report too few properties. Incremental algorithms are attractive because they process each observed value only once and thus scale well with data sizes. Previous incremental algorithms only checked and reported a small number of properties. This paper takes steps toward correcting this problem. The paper presents two new incremental algorithms for invariant detection and compares them analytically and experimentally to two existing algorithms. Furthermore, the paper presents four optimizations and shows how to implement them in the context of incremental algorithms. The result is more scalable invariant detection that does not sacrifice functionality.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"59 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":"128102864","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}
引用次数: 113
A type system for object models 对象模型的类型系统
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029921
J. Edwards, D. Jackson, E. Torlak
{"title":"A type system for object models","authors":"J. Edwards, D. Jackson, E. Torlak","doi":"10.1145/1029894.1029921","DOIUrl":"https://doi.org/10.1145/1029894.1029921","url":null,"abstract":"A type system for object models is described that supports subtyping, unions, and overloading of relation names. No special features need be added to the modelling language; in particular, there are no casts, and the meaning of an object model can be understood without mentioning types. A type error is associated with an expression that can be proved to be _irrelevant_, in the sense that it can be replaced by an empty set or relation without affecting the value of its enclosing constraint. Relevance is computed by a simple abstract interpretation.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"43 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":"116409687","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}
引用次数: 42
PSE: explaining program failures via postmortem static analysis PSE:通过事后静态分析来解释程序失败
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029907
R. Manevich, Manu Sridharan, Stephen Adams, Manuvir Das, Zhe Yang
{"title":"PSE: explaining program failures via postmortem static analysis","authors":"R. Manevich, Manu Sridharan, Stephen Adams, Manuvir Das, Zhe Yang","doi":"10.1145/1029894.1029907","DOIUrl":"https://doi.org/10.1145/1029894.1029907","url":null,"abstract":"In this paper, we describe PSE (Postmortem Symbolic Evaluation), a static analysis algorithm that can be used by programmers to diagnose software failures. The algorithm requires minimal information about a failure, namely its kind (e.g. NULL dereference), and its location in the program's source code. It produces a set of execution traces along which the program can be driven to the given failure.\u0000 PSE tracks the flow of a single value of interest from the point in the program where the failure occurred back to the points in the program where the value may have originated. The algorithm combines a novel dataflow analysis and memory alias analysis in a manner that allows for precise exploration of the program's behavior in polynomial time.\u0000 We have applied PSE to the problem of diagnosing potential NULL-dereference errors in a suite of C programs, including several SPEC benchmarks and a large commercial operating system. In most cases, the analysis is able to either validate a pointer dereference, or find precise error traces demonstrating a NULL value for the pointer, in less than a second.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"60 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":"130052174","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}
引用次数: 109
Verifying aspect advice modularly 模块化地验证方面通知
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029916
S. Krishnamurthi, Kathi Fisler, M. Greenberg
{"title":"Verifying aspect advice modularly","authors":"S. Krishnamurthi, Kathi Fisler, M. Greenberg","doi":"10.1145/1029894.1029916","DOIUrl":"https://doi.org/10.1145/1029894.1029916","url":null,"abstract":"Aspect-oriented programming has become an increasingly important means of expressing cross-cutting program abstractions. Despite this, aspects lack support for computer-aided verification. We present a technique for verifying aspect-oriented programs (expressed as state machines). Our technique assumes that the set of pointcut designators is known statically, but that the actual advice can vary. This calls for a modular technique that does not require repeated analysis of the entire system every time a developer changes advice. We present such an analysis, addressing several subtleties that arise. We also present an important optimization for handling multiple pointcut designators. We have implemented a prototype verifier and applied it to some simple but interesting cases.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"72 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":"127068909","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}
引用次数: 136
Automating comprehensive safety analysis of concurrent programs using verisoft and TXL 使用verisoft和TXL自动化并发程序的综合安全分析
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029900
J. Dingel, Hongzhi Liang
{"title":"Automating comprehensive safety analysis of concurrent programs using verisoft and TXL","authors":"J. Dingel, Hongzhi Liang","doi":"10.1145/1029894.1029900","DOIUrl":"https://doi.org/10.1145/1029894.1029900","url":null,"abstract":"In run-time safety analysis the executions of a concurrent program are monitored and analyzed with respect to safety properties. Similar to testing, run-time analysis is quite efficient, but it also tends to be incomplete. The results pertain only to the observed executions which may constitute just a small subset of all possible executions.\u0000 In this paper, we describe a tool called ViP which uses the software model checker VeriSoft to perform comprehensive run-time safety analyses of concurrent C/C++ programs. A ViP analysis proceeds in three fully automated steps: First, the input program is prepared for a VeriSoft analysis through instrumentation. Next, VeriSoft is invoked to generate the traces corresponding to all possible executions of the program. Then, the traces are checked efficiently for specification violations. The instrumentation is based on the source code transformation language TXL. TXL allows for the instrumentation to be described in terms of rewrite rules and gives ViP a remarkable amount of flexibility.\u0000 The paper describes ViP together with its use of VeriSoft and TXL. Several sample analyses are discussed to illustrate the use of ViP.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"190 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":"123400734","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
Making embedded software reuse practical and safe 使嵌入式软件复用实用、安全
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029897
N. Leveson, K. Weiss
{"title":"Making embedded software reuse practical and safe","authors":"N. Leveson, K. Weiss","doi":"10.1145/1029894.1029897","DOIUrl":"https://doi.org/10.1145/1029894.1029897","url":null,"abstract":"Reuse of application software has been limited and sometimes has led to accidents. This paper suggests some requirements for successful and safe application software reuse and demonstrates them using a case study on a real spacecraft.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"49 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":"124245931","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}
引用次数: 39
Resolving uncertainties during trace analysis 解决跟踪分析过程中的不确定性
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029899
Alexander Egyed
{"title":"Resolving uncertainties during trace analysis","authors":"Alexander Egyed","doi":"10.1145/1029894.1029899","DOIUrl":"https://doi.org/10.1145/1029894.1029899","url":null,"abstract":"Software models provide independent perspectives onto software systems. Ideally, all models should use the same model element to describe the same part of a system. Practically, models elements are not shared because of syntactic and semantic differences among modeling notations. Trace dependencies explicitly maintain the commonalities among the distinct model elements.\u0000 Generating and maintaining trace dependencies is difficult, costly, and highly error-prone. Automated trace analysis techniques are scarce. This paper extends an existing, testing-based technique for generating and maintaining trace dependencies. It is based on the commonality principle: if two model elements of different perspectives are the same then they must have the same source code. The existing approach associates test scenarios with model elements, tests them, and observes what lines of code are being executed. Model elements are considered the same/similar if their testing uses the same/overlapping lines of code.\u0000 This paper extends the existing approach (and tool) by giving the user a richer, more powerful, yet precise language on how to relate model elements, test scenarios, and source code (the input). This allows some forms of uncertainties to exist in input data without sacrificing reliability. The extended approach also identifies \"shared code.\" Shared code works against the commonality principle in that model elements do not relate if they overlap solely on their use of generic source code (e.g., queue). As a pre-requisite, our approach requires an executable and observable software system and test scenarios.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"11 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":"122291145","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
The usability problem for home appliances: engineers caused it, engineers can fix it! 家用电器的可用性问题:工程师造成的,工程师可以解决!
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029896
J. Marks
{"title":"The usability problem for home appliances: engineers caused it, engineers can fix it!","authors":"J. Marks","doi":"10.1145/1029894.1029896","DOIUrl":"https://doi.org/10.1145/1029894.1029896","url":null,"abstract":"Ordinary people already have great difficulty using the advanced features of digitally enabled household appliances, and the problem grows worse with time as more customization and programming features are added. This usability problem cannot be solved using the tiny displays and limited control buttons typically found on such devices. In this talk I will describe a new type of collaborative interface in which the appliance actively helps the user, especially with complex features that are only used occasionally. This interface provides a consistent and pervasive mechanism for answering the who-what-where-when-why-how questions that often cause users to consult a manual, call a help line, or simply give up. A crucial aspect of the interface architecture is the use of home networking to share a physically large and computationally powerful display among multiple appliances.\u0000 Why is this a relevant talk for a software-engineering conference? A contributing factor to the usability crisis is the dominance of engineers in product design at many companies. The development of more-usable devices requires a broader conception of engineering that includes interaction design, artificial intelligence, and human factors - at a minimum. I will describe how these disciplines can complement traditional electrical and software engineering in the context of attempting to solve a commercially significant real-world problem.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"127 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":"127789705","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
How a good software practice thwarts collaboration: the multiple roles of APIs in software development 良好的软件实践如何阻碍协作:api在软件开发中的多重角色
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029925
C. D. Souza, D. Redmiles, Li-Te Cheng, D. Millen, J. Patterson
{"title":"How a good software practice thwarts collaboration: the multiple roles of APIs in software development","authors":"C. D. Souza, D. Redmiles, Li-Te Cheng, D. Millen, J. Patterson","doi":"10.1145/1029894.1029925","DOIUrl":"https://doi.org/10.1145/1029894.1029925","url":null,"abstract":"The principle of information hiding has been very influential in software engineering since its inception in 1972. This principle prescribes that software modules hide implementation details from other modules in order to decrease their interdependencies. This separation also decreases the dependency among software developers implementing modules, thus simplifying some aspects of collaboration. A common instantiation of this principle is in the form of application programming interfaces (APIs). We performed a qualitative study on how practitioners use APIs in their daily work. Although particularly interested in aspects of collaboration, we report all findings about their observed use. The findings include mundane observations that are predicted by theory, ways that APIs support collaborative software development. But the findings also include some surprises, ways that APIs hinder collaboration. The surprises indicate directions for further improvement of collaborative software development practices and tools.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"27 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":"129013738","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}
引用次数: 129
Relevancy based semantic interoperation of reuse repositories 重用存储库的基于相关性的语义互操作
SIGSOFT '04/FSE-12 Pub Date : 2004-10-31 DOI: 10.1145/1029894.1029924
Y. Pan, Lei Wang, Lu Zhang, Bing Xie, Fuqing Yang
{"title":"Relevancy based semantic interoperation of reuse repositories","authors":"Y. Pan, Lei Wang, Lu Zhang, Bing Xie, Fuqing Yang","doi":"10.1145/1029894.1029924","DOIUrl":"https://doi.org/10.1145/1029894.1029924","url":null,"abstract":"Software reuse is a promising solution to the software crisis. Reuse repositories are the basic infrastructure for software reuse. During the past decade, various academic, commercial, governmental, and industrial organizations have developed many Internet-enabled reuse repositories to provide access to software components and related resources. It has necessitated semantic interoperation to allow distributed maintenance and management of these repositories while enabling users to efficiently and conveniently access resources from multiple reuse repositories via a single representation view. In this paper, we have proposed an approach to enhancing the semantic interoperability of reuse repositories, called the improved relevancy matching and ranking (IRMR) method, based on analyzing the correlation of terms in representation methods of the repositories. A prototype system, the Virtual Repository supporting Semantic Interoperation (VRSI), is presented to illustrate the application of this approach to support the semantic interoperation of reuse repositories. Experimental results on real world reuse repositories demonstrated significant improvement in terms of searching effectiveness.","PeriodicalId":121365,"journal":{"name":"SIGSOFT '04/FSE-12","volume":"43 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":"124619403","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
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学术官方微信
小红书