{"title":"Queuing Models for Field Defect Resolution Process","authors":"S. Gokhale, R. Mullen","doi":"10.1109/ISSRE.2006.38","DOIUrl":"https://doi.org/10.1109/ISSRE.2006.38","url":null,"abstract":"This paper explores a novel application of queuing theory to the corrective software maintenance problem to support quantitative balancing between resources and responsiveness. Initially, we provide a detailed description of the states a defect traverses from find to fix and a definition and justification of mean time to resolution as a useful process metric. We consider the effect of queuing system structures, priority levels and priority disciplines on the differential mean times to resolution of defects of different severities. We find that modeling the defect resolution capacity of a software engineering group as n identical M/M/1 servers provides a flexible and realistic approximation to the queuing behavior of four different organizations. We consider three queuing disciplines. Though purely preemptive and non-preemptive priority disciplines may be suited for other groups, our data was best fit by a mixed discipline, one in which only the most severe defects preempt ongoing service activities of lesser severities. We provide two examples of the utility of such a model: given the reasonable assumption that the most severe defects have the highest impact on reliability, we find that the reduction of the resolution time for these defects must come from changes reducing the service time. On the other hand the effect of additional engineering resources on the resolution time of less severe defects is easily computed and can be significant","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115286613","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}
{"title":"Effectively Combining Software Verification Strategies: Understanding Different Assumptions","authors":"David Owen, Dejan Desovski, B. Cukic","doi":"10.1109/ISSRE.2006.24","DOIUrl":"https://doi.org/10.1109/ISSRE.2006.24","url":null,"abstract":"In this paper we describe an experiment in which inconsistent results between two tools for testing formal models (and a third used to determine which of the two was correct) led us to a more careful look at the way each tool was being used and a clearer understanding of the output of the tools. For the experiment, we created error-seeded versions of an SCR specification representing a real-world personnel access control system. They were checked using the model checker SPIN and Lurch, our random testing tool for finite-state models. In one case a property violation was detected by Lurch, an incomplete tool, but missed by SPIN, a model checking tool designed for complete verification. We used the SCR Toolset and the Salsa invariant checker to determine that the violation detected by Lurch was indeed present in the specification. We then looked more carefully at how we were using SPIN in conjunction with the SCR Toolset and, eventually, made adjustments so that SPIN also detected the property violation initially detected only by Lurch. Once it was clear the tools were being used correctly and would give consistent results, we did an experiment to determine how they could be combined to optimize completeness and efficiency. We found that combining tools made it possible to verify the specifications faster and with much less memory in most cases","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"54 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115528255","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}
{"title":"Measuring and Enhancing Prediction Capabilities of Vulnerability Discovery Models for Apache and IIS HTTP Servers","authors":"Omar H. Alhazmi, Y. Malaiya","doi":"10.1109/ISSRE.2006.26","DOIUrl":"https://doi.org/10.1109/ISSRE.2006.26","url":null,"abstract":"The prediction of the number of vulnerabilities in an HTTP server can allow us to evaluate the security risk associated with its use. Vulnerability discovery models have recently been proposed which can be used to estimate the future number of vulnerabilities expected to be discovered. A detailed analysis of the prediction capabilities of two models termed AML and LVD for the vulnerabilities in the two major HTTP servers is presented. Four complete data sets for Apache and US are used, representing an open source and a commercial Web server respectively. Both long term predictions involving several years and short term predictions for the following year are considered. Potential methods for enhancing the prediction accuracy are considered. The results show good predictive capabilities of the AML model when constraints are used for estimating the model parameters. The LVD model works well in some special cases when saturation has not yet set in. The results can be used by both developers to plan the test and maintenance effort needed and by users to assess the potential security risks associated with a specific server","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130293864","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}
{"title":"Reliability and Performance of Component Based Software Systems with Restarts, Retries, Reboots and Repairs","authors":"V. Sharma, Kishor S. Trivedi","doi":"10.1109/ISSRE.2006.39","DOIUrl":"https://doi.org/10.1109/ISSRE.2006.39","url":null,"abstract":"High reliability and performance are vital for software systems handling diverse mission critical applications. Such software systems are usually component based and may possess multiple levels of fault recovery. A number of parameters, including the software architecture, behavior of individual components, underlying hardware, and the fault recovery measures, affect the behavior of such systems, and there is a need for an approach to study them. In this paper we present an integrated approach for modeling and analysis of component based systems with multiple levels of failures and fault recovery both at the software, as well as the hardware level. The approach is useful to analyze attributes such as overall reliability, performance, and machine availabilities for such systems, wherein failures may happen at the software components, the operating system, or at the hardware, and corresponding restarts, retries, reboots or repairs are used for mitigation. Our approach encompasses Markov chain, and queueing network modeling, for estimating system reliability, machine availabilities and performance. The approach is helpful for designing and building better systems and also while improving existing systems","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"1982 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134019713","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}
{"title":"Metrics-Based Software Reliability Models Using Non-homogeneous Poisson Processes","authors":"K. Shibata, K. Rinsaka, T. Dohi","doi":"10.1109/ISSRE.2006.28","DOIUrl":"https://doi.org/10.1109/ISSRE.2006.28","url":null,"abstract":"The traditional software reliability models aim to describe the temporal behavior of software fault-detection processes with only the fault data, but fail to incorporate some significant test-metrics data observed in software testing. In this paper we develop a useful modeling framework to assess the quantitative software reliability with time-dependent covariate as well as software-fault data. The basic ideas employed here are to introduce the discrete proportional hazard model on a cumulative Bernoulli trial process, and to represent a generalized fault-detection processes having time-dependent covariate structure. The resulting stochastic models are regarded as combinations of the proportional hazard models and the familiar non-homogeneous Poisson processes. We compare these metrics-based software reliability models with some typical non-homogeneous Poisson process models, and evaluate quantitatively both goodness-of-fit and predictive performances from the viewpoint of information criteria. As an important result, the accuracy on reliability assessment strongly depends on the kind of software metrics used for analysis and can be improved by incorporating time-dependent metrics data in modeling","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"102 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117292874","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}
{"title":"On the Effect of Fault Removal in Software Testing - Bayesian Reliability Estimation Approach","authors":"H. Okamura, Hitoshi Furumura, T. Dohi","doi":"10.1109/ISSRE.2006.33","DOIUrl":"https://doi.org/10.1109/ISSRE.2006.33","url":null,"abstract":"In this paper, we propose some reliability estimation methods in software testing. The proposed methods are based on the familiar Bayesian statistics, and can be characterized by using test outcomes in input domain models. It is shown that the resulting approaches are capable of estimating software reliability in the case where the detected software faults are removed. In numerical examples, we compare the proposed methods with the existing method, and investigate the effect of fault removal on the reliability estimation in software testing. We show that the proposed methods can give more accurate estimates of software reliability","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114384232","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}
{"title":"Assessing the Relationship between Software Assertions and Faults: An Empirical Investigation","authors":"Gunnar Kudrjavets, Nachiappan Nagappan, T. Ball","doi":"10.1109/ISSRE.2006.14","DOIUrl":"https://doi.org/10.1109/ISSRE.2006.14","url":null,"abstract":"The use of assertions in software development is thought to help produce quality software. Unfortunately, there is scant empirical evidence in commercial software systems for this argument to date. This paper presents an empirical case study of two commercial software components at Microsoft Corporation. The developers of these components systematically employed assertions, which allowed us to investigate the relationship between software assertions and code quality. We also compare the efficacy of assertions against that of popular bug finding techniques like source code static analysis tools. We observe from our case study that with an increase in the assertion density in a file there is a statistically significant decrease in fault density. Further, the usage of software assertions in these components found a large percentage of the faults in the bug database","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"79 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120972683","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}
{"title":"Detecting Redundant Unit Tests for AspectJ Programs","authors":"Tao Xie, Jianjun Zhao, D. Marinov, D. Notkin","doi":"10.1109/issre.2006.21","DOIUrl":"https://doi.org/10.1109/issre.2006.21","url":null,"abstract":"Aspect-oriented software development is gaining popularity with the adoption of languages such as AspectJ. Testing is an important part in any software development, including aspect-oriented development. To automate generation of unit tests for AspectJ programs, we can apply the existing tools that automate generation of unit tests for Java programs. However, these tools can generate a large number of test inputs, and manually inspecting the behavior of the software on all these inputs is time consuming. We propose Raspect, a framework for detecting redundant unit tests for AspectJ programs. We introduce three levels of units in AspectJ programs: advised methods, advice, and intertype methods. We show how to detect at each level redundant test that does not exercise new behavior. Our approach selects only non-redundant tests from the automatically generated test suites, thus allowing the developer to spend less time in inspecting this reduced set of tests. We have implemented Raspect and applied it on 12 subjects taken from a variety of sources; our experience shows that Raspect can effectively reduce the size of generated test suites for inspecting AspectJ programs","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134084774","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}
{"title":"Memoized Forward Computation of Dynamic Slices","authors":"Wes Masri, Nagi H. Nahas, Andy Podgurski","doi":"10.1109/ISSRE.2006.53","DOIUrl":"https://doi.org/10.1109/ISSRE.2006.53","url":null,"abstract":"Forward computation of dynamic slices is necessary to support interactive debugging and online analysis of long running programs. However, the overhead of existing forward computing algorithms limits their use to non-processing intensive applications. Recent empirical studies have shown that slices tend to reoccur often during execution. This paper presents a new forward computing algorithm for dynamic slicing, which is based on the stronger assumption that the same set union operations need to be performed repeatedly during slice computation. We present the results of an empirical study contrasting the performance of our new algorithm to the performance of a basic forward computing algorithm that unconditionally merges slices influencing an executing statement. The results indicate that the new algorithm is substantially faster than the basic algorithm and often requires significantly less memory","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"48 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127435437","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}
{"title":"A Perspective on Software Consumability","authors":"Carl Kessler","doi":"10.1109/ISSRE.2006.8","DOIUrl":"https://doi.org/10.1109/ISSRE.2006.8","url":null,"abstract":"Summary form only given. Reliability questions are often directed at the core values of a software product that is at the features and functions. After all, the client imagines a to-be state where the software is running and the client achieves their business goals. So reliability concerns appropriately have mapped to the question: can the client reasonably achieve those goals through this software? This line of investigation is not, however, the only critical path constraint on client success. The client has to travel a path from their as-is state in order to get to the values promised by product features and functions; this path requires successful execution of a set of meta-tasks. These meta-tasks can interfere with value attainment or even prevent it. We call the impact of these meta-tasks on a product \"consumability\". We will discuss this and the measurement models we have built around consumability to formally address this topic in our development activities","PeriodicalId":373353,"journal":{"name":"2006 17th International Symposium on Software Reliability Engineering","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132542801","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}