首页 > 最新文献

13th International Symposium on Software Reliability Engineering, 2002. Proceedings.最新文献

英文 中文
The impact of recovery mechanisms on the likelihood of saving corrupted state 恢复机制对保存损坏状态的可能性的影响
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173219
Subhachandra Chandra, Peter M. Chen
Recovery systems must save state before a failure occurs to enable the system to recover from the failure. However, recovery will fail if the recovery system saves any state corrupted by the fault. The frequency and comprehensiveness of how a recovery system saves state has a major effect on how often the recovery system inadvertently saves corrupted state. This paper explores and measures that effect. We measure how often software faults in the application and operating system cause real applications to save corrupted state when using different types of recovery systems. We find that generic recovery techniques, such as checkpointing and logging, work well for faults in the operating system. However, we find that they do not work well for faults in the application because the very actions taken to enable recovery often corrupt the state upon which successful recovery depends.
恢复系统必须在故障发生之前保存状态,以使系统能够从故障中恢复。但是,如果恢复系统保存任何被故障损坏的状态,则恢复将失败。恢复系统保存状态的频率和全面性对恢复系统无意中保存损坏状态的频率有很大影响。本文对这种影响进行了探讨和测量。当使用不同类型的恢复系统时,我们测量应用程序和操作系统中的软件故障导致实际应用程序保存损坏状态的频率。我们发现,一般的恢复技术,如检查点和日志记录,对操作系统中的故障很有效。然而,我们发现它们不能很好地处理应用程序中的错误,因为为启用恢复而采取的操作通常会破坏成功恢复所依赖的状态。
{"title":"The impact of recovery mechanisms on the likelihood of saving corrupted state","authors":"Subhachandra Chandra, Peter M. Chen","doi":"10.1109/ISSRE.2002.1173219","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173219","url":null,"abstract":"Recovery systems must save state before a failure occurs to enable the system to recover from the failure. However, recovery will fail if the recovery system saves any state corrupted by the fault. The frequency and comprehensiveness of how a recovery system saves state has a major effect on how often the recovery system inadvertently saves corrupted state. This paper explores and measures that effect. We measure how often software faults in the application and operating system cause real applications to save corrupted state when using different types of recovery systems. We find that generic recovery techniques, such as checkpointing and logging, work well for faults in the operating system. However, we find that they do not work well for faults in the application because the very actions taken to enable recovery often corrupt the state upon which successful recovery depends.","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131757749","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}
引用次数: 25
Test reuse in the spreadsheet paradigm 在电子表格范例中测试重用
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173265
M. Fisher, Dalai Jin, G. Rothermel, M. Burnett
Spreadsheet languages are widely used by a variety of end users to perform many important tasks. Despite their perceived simplicity, spreadsheets often contain faults. Furthermore, users modify their spreadsheets frequently, which can render previously correct spreadsheets faulty. To address this problem, we previously introduced a visual approach by which users can systematically test their spreadsheets, see where new tests are required after changes, and request automated generation of potentially useful test inputs. To date, however, this approach has not taken advantage of previously developed test cases, which means that users of the approach cannot benefit, when re-testing following changes, from prior testing efforts. We have therefore been investigating ways to add support for test re-use into our spreadsheet testing methodology. In this paper we present a test re-use strategy for spreadsheets, and the algorithms that implement it, and describe their integration into our spreadsheet testing methodology. We report results of a case study examining the application of this strategy.
电子表格语言被各种终端用户广泛用于执行许多重要任务。尽管看起来很简单,但电子表格经常包含错误。此外,用户经常修改他们的电子表格,这可能会使以前正确的电子表格出错。为了解决这个问题,我们之前介绍了一种可视化的方法,通过这种方法,用户可以系统地测试他们的电子表格,查看更改后需要新测试的地方,并请求自动生成潜在有用的测试输入。然而,到目前为止,该方法还没有利用以前开发的测试用例,这意味着当重新测试后续更改时,该方法的用户不能从先前的测试工作中获益。因此,我们一直在研究将测试重用支持添加到电子表格测试方法中的方法。在本文中,我们提出了一个电子表格的测试重用策略,以及实现它的算法,并描述了它们与我们的电子表格测试方法的集成。我们报告了一个案例研究的结果,研究了这一策略的应用。
{"title":"Test reuse in the spreadsheet paradigm","authors":"M. Fisher, Dalai Jin, G. Rothermel, M. Burnett","doi":"10.1109/ISSRE.2002.1173265","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173265","url":null,"abstract":"Spreadsheet languages are widely used by a variety of end users to perform many important tasks. Despite their perceived simplicity, spreadsheets often contain faults. Furthermore, users modify their spreadsheets frequently, which can render previously correct spreadsheets faulty. To address this problem, we previously introduced a visual approach by which users can systematically test their spreadsheets, see where new tests are required after changes, and request automated generation of potentially useful test inputs. To date, however, this approach has not taken advantage of previously developed test cases, which means that users of the approach cannot benefit, when re-testing following changes, from prior testing efforts. We have therefore been investigating ways to add support for test re-use into our spreadsheet testing methodology. In this paper we present a test re-use strategy for spreadsheets, and the algorithms that implement it, and describe their integration into our spreadsheet testing methodology. We report results of a case study examining the application of this strategy.","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114977631","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}
引用次数: 36
On estimating testing effort needed to assure field quality in software development 评估在软件开发中保证现场质量所需的测试工作
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173234
O. Mizuno, Eijiro Shigematsu, Yasunari Takagi, T. Kikuno
In practical software development, software quality is generally evaluated by the number of residual defects. To keep the number of residual defects within a permissible value, too much effort is often assigned to software testing. We try to develop a statistical model to determine the amount of testing effort which is needed to assure the field quality. The model explicitly includes design, review, and test (including debug) activities. Firstly, we construct a linear multiple regression model that can clarify the relationship among the number of residual defects and the efforts assigned to design, review, and test activities. We then confirm the applicability of the model by statistical analysis using actual project data. Next, we obtain an equation based on the model to determine the test effort. As parameters in the equation, the permissible number of residual defects, the design effort, and the review effort are included. Then, the equation determines the test effort that is needed to assure the permissible residual defects. Finally, we conduct an experimental evaluation using actual project data and show the usefulness of the equation.
在实际的软件开发中,软件质量通常是通过剩余缺陷的数量来评估的。为了将剩余缺陷的数量保持在允许的范围内,通常会将太多的工作分配给软件测试。我们试图开发一个统计模型来确定测试工作量,这是确保现场质量所需要的。该模型显式地包括设计、审查和测试(包括调试)活动。首先,我们构建了一个线性多元回归模型,该模型可以澄清剩余缺陷的数量与分配给设计、审查和测试活动的工作量之间的关系。然后利用实际工程数据进行统计分析,验证了模型的适用性。接下来,我们得到一个基于模型的方程来确定测试工作。作为方程中的参数,残余缺陷的允许数量、设计工作量和评审工作量都包括在内。然后,该方程确定了确保允许的残余缺陷所需的测试工作量。最后,利用实际工程数据进行了实验评估,验证了该方程的有效性。
{"title":"On estimating testing effort needed to assure field quality in software development","authors":"O. Mizuno, Eijiro Shigematsu, Yasunari Takagi, T. Kikuno","doi":"10.1109/ISSRE.2002.1173234","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173234","url":null,"abstract":"In practical software development, software quality is generally evaluated by the number of residual defects. To keep the number of residual defects within a permissible value, too much effort is often assigned to software testing. We try to develop a statistical model to determine the amount of testing effort which is needed to assure the field quality. The model explicitly includes design, review, and test (including debug) activities. Firstly, we construct a linear multiple regression model that can clarify the relationship among the number of residual defects and the efforts assigned to design, review, and test activities. We then confirm the applicability of the model by statistical analysis using actual project data. Next, we obtain an equation based on the model to determine the test effort. As parameters in the equation, the permissible number of residual defects, the design effort, and the review effort are included. Then, the equation determines the test effort that is needed to assure the permissible residual defects. Finally, we conduct an experimental evaluation using actual project data and show the usefulness of the equation.","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122698236","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
Fault detection capabilities of coupling-based OO testing 基于耦合的OO测试的故障检测能力
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173253
R. Alexander, Jeff Offutt, J. Bieman
Object-oriented programs cause a shift in focus from software units to the way software classes and components are connected. Thus, we are finding that we need less emphasis on unit testing and more on integration testing. The compositional relationships of inheritance and aggregation, especially when combined with polymorphism, introduce new kinds of integration faults, which can be covered using testing criteria that take the effects of inheritance and polymorphism into account. This paper demonstrates, via a set of experiments, the relative effectiveness of several coupling-based OO testing criteria and branch coverage. OO criteria are all more effective at detecting faults due to the use of inheritance and polymorphism than branch coverage.
面向对象的程序将焦点从软件单元转移到软件类和组件的连接方式。因此,我们发现我们需要更少地强调单元测试,而更多地强调集成测试。继承和聚合的组合关系,特别是当与多态性结合使用时,引入了新的集成错误类型,可以使用考虑继承和多态性影响的测试标准来覆盖这些错误。本文通过一组实验证明了几种基于耦合的OO测试标准和分支覆盖率的相对有效性。由于使用了继承和多态性,OO标准在检测错误方面都比分支覆盖更有效。
{"title":"Fault detection capabilities of coupling-based OO testing","authors":"R. Alexander, Jeff Offutt, J. Bieman","doi":"10.1109/ISSRE.2002.1173253","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173253","url":null,"abstract":"Object-oriented programs cause a shift in focus from software units to the way software classes and components are connected. Thus, we are finding that we need less emphasis on unit testing and more on integration testing. The compositional relationships of inheritance and aggregation, especially when combined with polymorphism, introduce new kinds of integration faults, which can be covered using testing criteria that take the effects of inheritance and polymorphism into account. This paper demonstrates, via a set of experiments, the relative effectiveness of several coupling-based OO testing criteria and branch coverage. OO criteria are all more effective at detecting faults due to the use of inheritance and polymorphism than branch coverage.","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"38 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122907708","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}
引用次数: 17
Reliability assessment of framework-based distributed embedded software systems 基于框架的分布式嵌入式软件系统可靠性评估
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173291
F. Bastani, Sung Kim, I. Yen, I. Chen
Distributed embedded software systems, such as sensor networks and command and control systems, are complex systems with stringent performance, reliability, security, and safety constraints. These are also long-lived systems that must be continually upgraded and evolved to incorporate enhanced functionality. One approach for achieving high quality and evolvability for these systems is to organize them in the form of application-oriented frameworks that allow the system to be composed from orthogonal aspects that can be independently developed, evolved, and certified. In this paper, we define a general framework that allows a distributed embedded system to have relatively independent aspects, including "plug-and-play" capability. We present conditions under which the reliability of the system can be inferred from the reliability of the individual aspects. The approach is illustrated for a framework-based distributed sensor network.
分布式嵌入式软件系统,如传感器网络和命令和控制系统,是具有严格性能、可靠性、安全性和安全性约束的复杂系统。这些系统的寿命也很长,必须不断升级和发展,以纳入增强的功能。实现这些系统的高质量和可演化性的一种方法是将它们以面向应用程序的框架的形式组织起来,这种框架允许系统由可独立开发、演化和认证的正交方面组成。在本文中,我们定义了一个通用框架,该框架允许分布式嵌入式系统具有相对独立的方面,包括“即插即用”功能。我们提出了一些条件,在这些条件下,系统的可靠性可以从各个方面的可靠性推断出来。该方法以基于框架的分布式传感器网络为例进行了说明。
{"title":"Reliability assessment of framework-based distributed embedded software systems","authors":"F. Bastani, Sung Kim, I. Yen, I. Chen","doi":"10.1109/ISSRE.2002.1173291","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173291","url":null,"abstract":"Distributed embedded software systems, such as sensor networks and command and control systems, are complex systems with stringent performance, reliability, security, and safety constraints. These are also long-lived systems that must be continually upgraded and evolved to incorporate enhanced functionality. One approach for achieving high quality and evolvability for these systems is to organize them in the form of application-oriented frameworks that allow the system to be composed from orthogonal aspects that can be independently developed, evolved, and certified. In this paper, we define a general framework that allows a distributed embedded system to have relatively independent aspects, including \"plug-and-play\" capability. We present conditions under which the reliability of the system can be inferred from the reliability of the individual aspects. The approach is illustrated for a framework-based distributed sensor network.","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130623362","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
Saturation effects in testing of formal models 正式模型测试中的饱和效应
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173208
T. Menzies, David Owen, B. Cukic
Formal analysis of software is a powerful analysis tool, but can be too costly. Random search of formal models can reduce that cost, but is theoretically incomplete. However, random search of finite-state machines exhibits an early saturation effect, i.e., random search quickly yields all that can be found, even after a much longer search. Hence, we avoid the theoretical problem of incompleteness, provided that testing continues until after the saturation point. Such a random search is rapid, consumes little memory, is simple to implement, and can handle very large formal models (in one experiment shown here, over 10/sup 178/ states).
软件的形式化分析是一种功能强大的分析工具,但可能过于昂贵。正式模型的随机搜索可以降低成本,但理论上是不完整的。然而,有限状态机的随机搜索表现出一种早期饱和效应,即随机搜索很快产生所有可以找到的结果,即使经过更长的搜索。因此,如果测试持续到饱和点之后,我们就避免了不完备的理论问题。这种随机搜索速度快,消耗内存少,易于实现,并且可以处理非常大的形式模型(在这里显示的一个实验中,超过10/sup 178/ states)。
{"title":"Saturation effects in testing of formal models","authors":"T. Menzies, David Owen, B. Cukic","doi":"10.1109/ISSRE.2002.1173208","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173208","url":null,"abstract":"Formal analysis of software is a powerful analysis tool, but can be too costly. Random search of formal models can reduce that cost, but is theoretically incomplete. However, random search of finite-state machines exhibits an early saturation effect, i.e., random search quickly yields all that can be found, even after a much longer search. Hence, we avoid the theoretical problem of incompleteness, provided that testing continues until after the saturation point. Such a random search is rapid, consumes little memory, is simple to implement, and can handle very large formal models (in one experiment shown here, over 10/sup 178/ states).","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"51 26","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134225917","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}
引用次数: 29
Effect of disturbances on the convergence of failure intensity 扰动对失效强度收敛的影响
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173296
João W. Cangussu, A. Mathur, R. Decarlo
We report a study to determine the impact of four types of disturbances on the failure intensity of a software product undergoing system test. Hardware failures, discovery of a critical fault, attrition in the test team, are examples of disturbances that will likely affect the convergence of the failure intensity to its desired value. Such disturbances are modeled as impulse, pulse, step, and white noise. Our study examined, in quantitative terms, the impact of such disturbances on the convergence behavior of the failure intensity. Results from this study reveal that the behavior of the state model, proposed elsewhere, is consistent with what one might predict. The model is useful in that it provides a quantitative measure of the delay one can expect when a disturbance occurs.
我们报告了一项研究,以确定四种类型的干扰对正在进行系统测试的软件产品的故障强度的影响。硬件故障、关键故障的发现、测试团队的人员流失,都是干扰的例子,这些干扰可能会影响故障强度收敛到所需值。这些干扰被建模为脉冲、脉冲、阶跃和白噪声。我们的研究以定量的方式检验了这些扰动对破坏强度收敛行为的影响。这项研究的结果表明,其他地方提出的状态模型的行为与人们可能预测的一致。该模型是有用的,因为它提供了一个定量的测量延迟,可以预期当一个干扰发生。
{"title":"Effect of disturbances on the convergence of failure intensity","authors":"João W. Cangussu, A. Mathur, R. Decarlo","doi":"10.1109/ISSRE.2002.1173296","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173296","url":null,"abstract":"We report a study to determine the impact of four types of disturbances on the failure intensity of a software product undergoing system test. Hardware failures, discovery of a critical fault, attrition in the test team, are examples of disturbances that will likely affect the convergence of the failure intensity to its desired value. Such disturbances are modeled as impulse, pulse, step, and white noise. Our study examined, in quantitative terms, the impact of such disturbances on the convergence behavior of the failure intensity. Results from this study reveal that the behavior of the state model, proposed elsewhere, is consistent with what one might predict. The model is useful in that it provides a quantitative measure of the delay one can expect when a disturbance occurs.","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"30 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122274246","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}
引用次数: 5
An empirical study of tracing techniques from a failure analysis perspective 从失效分析的角度对追踪技术进行实证研究
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173270
Satya Kanduri, Sebastian G. Elbaum
Tracing is a dynamic analysis technique to continuously capture events of interest on a running program. The occurrence of a statement, the invocation of a function, and the trigger of a signal are examples of traced events. Software engineers employ traces to accomplish various tasks, ranging from performance monitoring to failure analysis. Despite its capabilities, tracing can negatively impact the performance and general behavior of an application. In order to minimize that impact, traces are normally buffered and transferred to (slower) permanent storage at specific intervals. This scenario presents a delicate balance. Increased buffering can minimize the impact on the target program, but it increases the risk of losing valuable collected data in the event of a failure. Frequent disk transfers can ensure traced data integrity, but it risks a high impact on the target program. We conducted an experiment involving six tracing schemes and various buffer sizes to address these trade-offs. Our results highlight opportunities for tailored tracing schemes that would benefit failure analysis.
跟踪是一种动态分析技术,用于连续捕获正在运行的程序中感兴趣的事件。语句的出现、函数的调用和信号的触发都是跟踪事件的示例。软件工程师使用跟踪来完成各种任务,从性能监视到故障分析。尽管跟踪功能强大,但它会对应用程序的性能和一般行为产生负面影响。为了尽量减少这种影响,迹线通常被缓冲,并以特定的间隔转移到(较慢的)永久存储器。这种情况呈现出一种微妙的平衡。增加缓冲可以最大限度地减少对目标程序的影响,但它增加了在发生故障时丢失有价值的收集数据的风险。频繁的磁盘传输可以确保跟踪数据的完整性,但它可能会对目标程序产生很大的影响。我们进行了一个涉及六种跟踪方案和各种缓冲区大小的实验,以解决这些权衡。我们的结果强调了定制跟踪方案的机会,这将有利于故障分析。
{"title":"An empirical study of tracing techniques from a failure analysis perspective","authors":"Satya Kanduri, Sebastian G. Elbaum","doi":"10.1109/ISSRE.2002.1173270","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173270","url":null,"abstract":"Tracing is a dynamic analysis technique to continuously capture events of interest on a running program. The occurrence of a statement, the invocation of a function, and the trigger of a signal are examples of traced events. Software engineers employ traces to accomplish various tasks, ranging from performance monitoring to failure analysis. Despite its capabilities, tracing can negatively impact the performance and general behavior of an application. In order to minimize that impact, traces are normally buffered and transferred to (slower) permanent storage at specific intervals. This scenario presents a delicate balance. Increased buffering can minimize the impact on the target program, but it increases the risk of losing valuable collected data in the event of a failure. Frequent disk transfers can ensure traced data integrity, but it risks a high impact on the target program. We conducted an experiment involving six tracing schemes and various buffer sizes to address these trade-offs. Our results highlight opportunities for tailored tracing schemes that would benefit failure analysis.","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122689632","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
Data coverage testing of programs for container classes 容器类程序的数据覆盖测试
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173244
P. Netisopakul, L. White, John Morris, D. Hoffman
For the testing of container classes and the algorithms or programs that operate on the data in a container, these data have the property of being homogeneous throughout the container. We have developed an approach for this situation called data coverage testing, where automated test generation can systematically generate increasing test data size. Given a program and a test model, it can be theoretically shown that there exists a sufficiently large test data set size N, such that testing with a data set size larger than N does not detect more faults. A number of experiments have been conducted using a set of C++ STL programs, comparing data coverage testing with two other testing strategies: statement coverage and random generation. These experiments validate the theoretical analysis for data coverage, confirming the predicted sufficiently large N for each program.
对于容器类和对容器中的数据进行操作的算法或程序的测试,这些数据在整个容器中具有同构的属性。我们已经为这种情况开发了一种称为数据覆盖测试的方法,其中自动化的测试生成可以系统地生成不断增加的测试数据大小。给定一个程序和一个测试模型,理论上可以证明存在一个足够大的测试数据集大小N,使得使用大于N的数据集进行测试并不会检测到更多的故障。使用一组c++ STL程序进行了许多实验,将数据覆盖测试与另外两种测试策略(语句覆盖和随机生成)进行了比较。这些实验验证了数据覆盖率的理论分析,证实了每个程序的预测N足够大。
{"title":"Data coverage testing of programs for container classes","authors":"P. Netisopakul, L. White, John Morris, D. Hoffman","doi":"10.1109/ISSRE.2002.1173244","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173244","url":null,"abstract":"For the testing of container classes and the algorithms or programs that operate on the data in a container, these data have the property of being homogeneous throughout the container. We have developed an approach for this situation called data coverage testing, where automated test generation can systematically generate increasing test data size. Given a program and a test model, it can be theoretically shown that there exists a sufficiently large test data set size N, such that testing with a data set size larger than N does not detect more faults. A number of experiments have been conducted using a set of C++ STL programs, comparing data coverage testing with two other testing strategies: statement coverage and random generation. These experiments validate the theoretical analysis for data coverage, confirming the predicted sufficiently large N for each program.","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128452628","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
A flexible generator architecture for improving software dependability 灵活的生成器架构,提高软件的可靠性
Pub Date : 2002-11-12 DOI: 10.1109/ISSRE.2002.1173221
C. Fetzer, Zhen Xiao
Improving the dependability of computer systems is increasingly important as more and more of our lives depend on the availability of such systems. Wrapping dynamic link libraries is an effective approach for improving the reliability and security of computer software without source code access. We describe a flexible framework to generate a rich set of software wrappers for shared libraries. We describe the architecture of the wrapper generator, the problems of how to generate wrappers efficiently, and our solutions to these problems. Based on a set of properties declared for a function, the generator can create a variety of wrappers to suit the diverse requirements of application programs. Performance measurements indicate that the overhead of the generated wrappers is small.
提高计算机系统的可靠性变得越来越重要,因为我们的生活越来越依赖于这些系统的可用性。包装动态链接库是提高计算机软件可靠性和安全性的有效途径,无需访问源代码。我们描述了一个灵活的框架来为共享库生成一组丰富的软件包装器。我们描述了包装器生成器的体系结构,如何有效地生成包装器的问题,以及我们对这些问题的解决方案。基于为函数声明的一组属性,生成器可以创建各种包装器,以满足应用程序的各种需求。性能测量表明,生成的包装器的开销很小。
{"title":"A flexible generator architecture for improving software dependability","authors":"C. Fetzer, Zhen Xiao","doi":"10.1109/ISSRE.2002.1173221","DOIUrl":"https://doi.org/10.1109/ISSRE.2002.1173221","url":null,"abstract":"Improving the dependability of computer systems is increasingly important as more and more of our lives depend on the availability of such systems. Wrapping dynamic link libraries is an effective approach for improving the reliability and security of computer software without source code access. We describe a flexible framework to generate a rich set of software wrappers for shared libraries. We describe the architecture of the wrapper generator, the problems of how to generate wrappers efficiently, and our solutions to these problems. Based on a set of properties declared for a function, the generator can create a variety of wrappers to suit the diverse requirements of application programs. Performance measurements indicate that the overhead of the generated wrappers is small.","PeriodicalId":159160,"journal":{"name":"13th International Symposium on Software Reliability Engineering, 2002. Proceedings.","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-11-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127599638","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}
引用次数: 12
期刊
13th International Symposium on Software Reliability Engineering, 2002. Proceedings.
全部 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学术文献互助群
群 号:604180095
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1