Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319087
G. Seshagiri, S. Priya
The market for products whose objective is to improve software project management and software quality management is expected to be large and growing. In this paper, we present data from a software project whose mission is to build a commercial enterprise software project and quality management tool. The data we present include: planned and actual schedule, earned value, size, productivity, and defect removal by phase. We present process quality index and percent defect free modules as useful measures to predict post development defects in the product. We conclude that vendors of software project and quality management tools must walk the talk by utilizing disciplined techniques for managing the project and building quality into their products with known quality methods. The Team Software Process is a proven framework for both software project management and software quality management.
{"title":"Walking the talk: building quality into the software quality management tool","authors":"G. Seshagiri, S. Priya","doi":"10.1109/QSIC.2003.1319087","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319087","url":null,"abstract":"The market for products whose objective is to improve software project management and software quality management is expected to be large and growing. In this paper, we present data from a software project whose mission is to build a commercial enterprise software project and quality management tool. The data we present include: planned and actual schedule, earned value, size, productivity, and defect removal by phase. We present process quality index and percent defect free modules as useful measures to predict post development defects in the product. We conclude that vendors of software project and quality management tools must walk the talk by utilizing disciplined techniques for managing the project and building quality into their products with known quality methods. The Team Software Process is a proven framework for both software project management and software quality management.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128090558","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}
Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319109
Ruilian Zhao, Michael R. Lyu
A character string is an important element in programming. A problem that needs further research is how to automatically generate software test data for character strings. This paper presents a novel approach for automatic test data generation of program paths including character string predicates, and the effectiveness of this approach is examined on a number of programs. Each element of input variable of a character string is determined by using the gradient descent technique to perform function minimization so that the test data of character string can be dynamically generated. The experimental results illustrate that this approach is effective.
{"title":"Character string predicate based automatic software test data generation","authors":"Ruilian Zhao, Michael R. Lyu","doi":"10.1109/QSIC.2003.1319109","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319109","url":null,"abstract":"A character string is an important element in programming. A problem that needs further research is how to automatically generate software test data for character strings. This paper presents a novel approach for automatic test data generation of program paths including character string predicates, and the effectiveness of this approach is examined on a number of programs. Each element of input variable of a character string is determined by using the gradient descent technique to perform function minimization so that the test data of character string can be dynamically generated. The experimental results illustrate that this approach is effective.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130713577","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}
Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319081
T. Yoshikawa, Kouya Shimura, T. Ozawa
Java has been used widely, from servers to cellular phones. In order to test those Java runtime systems, many test tools have been provided. However these tools are not enough for Java JIT compilers. They should be tested by various executable bytecode sequences. Most test tools don't cover such kinds of a combination test. Therefore we developed a random test program generator and a Java JIT compiler test system. This test system automatically: 1) generates Java class files which are random, executable and finite; 2) inserts codes that output execution-process-dependent results; 3) runs these on the target JIT compiler and other tested Java runtimes; 4) compares results. In this paper, we describe how to generate random test programs, and how to test a Java JIT compiler, and then we evaluate quality (coverage) of generated random test programs.
{"title":"Random program generator for Java JIT compiler test system","authors":"T. Yoshikawa, Kouya Shimura, T. Ozawa","doi":"10.1109/QSIC.2003.1319081","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319081","url":null,"abstract":"Java has been used widely, from servers to cellular phones. In order to test those Java runtime systems, many test tools have been provided. However these tools are not enough for Java JIT compilers. They should be tested by various executable bytecode sequences. Most test tools don't cover such kinds of a combination test. Therefore we developed a random test program generator and a Java JIT compiler test system. This test system automatically: 1) generates Java class files which are random, executable and finite; 2) inserts codes that output execution-process-dependent results; 3) runs these on the target JIT compiler and other tested Java runtimes; 4) compares results. In this paper, we describe how to generate random test programs, and how to test a Java JIT compiler, and then we evaluate quality (coverage) of generated random test programs.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130948103","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}
Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319088
Christine T. Cheng, A. Dumitrescu, Patrick J. Schroeder
In this paper, we consider a problem that arises in black box testing: generating small test suites (i.e., sets of test cases) where the combinations that have to be covered are specified by input-output parameter relationships of a software system. That is, we only consider combinations of input parameters that affect an output parameter. We also do not assume that the input parameters have the same number of values. To solve this problem, we revisit the greedy algorithm for test generation and show that the size of the test suite it generates is within a logarithmic factor of the optimal. Unfortunately, the algorithm's main weaknesses are its time and space requirements for construction. To address this issue, we present a problem reduction technique that makes the greedy algorithm or any other test suite generation method more efficient if the reduction in size is significant.
{"title":"Generating small combinatorial test suites to cover input-output relationships","authors":"Christine T. Cheng, A. Dumitrescu, Patrick J. Schroeder","doi":"10.1109/QSIC.2003.1319088","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319088","url":null,"abstract":"In this paper, we consider a problem that arises in black box testing: generating small test suites (i.e., sets of test cases) where the combinations that have to be covered are specified by input-output parameter relationships of a software system. That is, we only consider combinations of input parameters that affect an output parameter. We also do not assume that the input parameters have the same number of values. To solve this problem, we revisit the greedy algorithm for test generation and show that the size of the test suite it generates is within a logarithmic factor of the optimal. Unfortunately, the algorithm's main weaknesses are its time and space requirements for construction. To address this issue, we present a problem reduction technique that makes the greedy algorithm or any other test suite generation method more efficient if the reduction in size is significant.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126930634","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}
Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319107
Mike Barnett, W. Grieskamp, Wolfram Schulte, N. Tillmann, Margus Veanes
The Abstract State Machine Language supports use-case oriented modeling in a faithful way. In this paper, we discuss how the AsmL test tool, a new component of the AsmL tool environment, is used to generate finite state machines from use-case models which can be used for validation purposes or for testing.
{"title":"Validating use-cases with the AsmL test tool","authors":"Mike Barnett, W. Grieskamp, Wolfram Schulte, N. Tillmann, Margus Veanes","doi":"10.1109/QSIC.2003.1319107","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319107","url":null,"abstract":"The Abstract State Machine Language supports use-case oriented modeling in a faithful way. In this paper, we discuss how the AsmL test tool, a new component of the AsmL tool environment, is used to generate finite state machines from use-case models which can be used for validation purposes or for testing.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125349297","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}
Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319125
I. Caballero, M. Piattini
In these days, most organizations have realised, at last, so important as their software is their data, because it can be considered as an important asset present in all business organizational processes. Our aim is to optimise the data management process (DMP) in order to assure data quality. For this, we have just drawn a framework based on maturity levels - as CMMIs ones -with specific and generic data quality goals, which are achieved by executing the corresponding activities.
{"title":"CALDEA: a data quality model based on maturity levels","authors":"I. Caballero, M. Piattini","doi":"10.1109/QSIC.2003.1319125","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319125","url":null,"abstract":"In these days, most organizations have realised, at last, so important as their software is their data, because it can be considered as an important asset present in all business organizational processes. Our aim is to optimise the data management process (DMP) in order to assure data quality. For this, we have just drawn a framework based on maturity levels - as CMMIs ones -with specific and generic data quality goals, which are achieved by executing the corresponding activities.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124609573","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}
Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319116
D. Card, Cheryl L. Jones
This article summarizes the basic concepts of practical software measurement (PSM), explains their relationship to prior work, then describes the status of its transition into practice within the software industry. PSM is rapidly becoming the most popular approach to measurement for process management. It is based on the collective experience of a working group representing universities, industry, and government. Key elements of PSM have been documented as an international standard and incorporated into the Capability Maturity Model - integrated.
{"title":"Status report: practical software measurement","authors":"D. Card, Cheryl L. Jones","doi":"10.1109/QSIC.2003.1319116","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319116","url":null,"abstract":"This article summarizes the basic concepts of practical software measurement (PSM), explains their relationship to prior work, then describes the status of its transition into practice within the software industry. PSM is rapidly becoming the most popular approach to measurement for process management. It is based on the collective experience of a working group representing universities, industry, and government. Key elements of PSM have been documented as an international standard and incorporated into the Capability Maturity Model - integrated.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115210618","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}
Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319084
T. Khoshgoftaar, Erik Geleyn, Laurent A. Nguyen
The increased reliance on computer systems in the modern world has created a need for engineering reliability control of computer systems to the highest possible standards. This is especially crucial in high-assurance and mission critical systems. Software quality classification models are one of the important tools in achieving high reliability. They can be used to calibrate software metrics-based models to detect fault-prone software modules. Timely use of such models can greatly aid in detecting faults early in the life cycle of the software product. Individual classifiers (models) may be improved by using the combined decision from multiple classifiers. Several algorithms implement this concept and have been investigated. These combined learners provide the software quality modeling community with accurate, robust, and goal oriented models. This paper presents a comprehensive comparative evaluation of three combined learners, Bagging, Boosting, and Logit-Boost. We evaluated these methods with a strong and a weak learner, i.e., C4.5 and Decision Stumps, respectively. Two large-scale case studies of industrial software systems are used in our empirical investigations.
{"title":"Empirical case studies of combining software quality classification models","authors":"T. Khoshgoftaar, Erik Geleyn, Laurent A. Nguyen","doi":"10.1109/QSIC.2003.1319084","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319084","url":null,"abstract":"The increased reliance on computer systems in the modern world has created a need for engineering reliability control of computer systems to the highest possible standards. This is especially crucial in high-assurance and mission critical systems. Software quality classification models are one of the important tools in achieving high reliability. They can be used to calibrate software metrics-based models to detect fault-prone software modules. Timely use of such models can greatly aid in detecting faults early in the life cycle of the software product. Individual classifiers (models) may be improved by using the combined decision from multiple classifiers. Several algorithms implement this concept and have been investigated. These combined learners provide the software quality modeling community with accurate, robust, and goal oriented models. This paper presents a comprehensive comparative evaluation of three combined learners, Bagging, Boosting, and Logit-Boost. We evaluated these methods with a strong and a weak learner, i.e., C4.5 and Decision Stumps, respectively. Two large-scale case studies of industrial software systems are used in our empirical investigations.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129031015","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}
Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319120
Yan Jiong, Ji Wang, Huowang Chen
Software statistical testing is concerned with testing the entire software systems based on their usage models. In the context of UML-based development, it is desired that usage models can be derived from UML analysis artifacts. This paper presents a method that derives the software usage models from reasonably constrained UML artifacts. The method utilizes use case diagrams, sequence diagrams and the execution probability of each sequence diagram in its associated use case. By projecting the messages in sequence diagrams onto the objects under test, the method elicits messages and their occurrence probabilities for generating the usage model of each use case for the objects under test. Then the usage models of use cases are integrated into the system usage model. The integration procedure utilizes the execution sequential relations between use cases.
{"title":"Deriving software statistical testing model from UML model","authors":"Yan Jiong, Ji Wang, Huowang Chen","doi":"10.1109/QSIC.2003.1319120","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319120","url":null,"abstract":"Software statistical testing is concerned with testing the entire software systems based on their usage models. In the context of UML-based development, it is desired that usage models can be derived from UML analysis artifacts. This paper presents a method that derives the software usage models from reasonably constrained UML artifacts. The method utilizes use case diagrams, sequence diagrams and the execution probability of each sequence diagram in its associated use case. By projecting the messages in sequence diagrams onto the objects under test, the method elicits messages and their occurrence probabilities for generating the usage model of each use case for the objects under test. Then the usage models of use cases are integrated into the system usage model. The integration procedure utilizes the execution sequential relations between use cases.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126269923","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}
Pub Date : 2003-11-06DOI: 10.1109/QSIC.2003.1319105
P. Allen, M. Ramachandran, H. Abushama
The paper describes an ongoing project to define a suitable process model for software process improvement in small to medium organizations. This is being carried out as a collaborative project between Leeds Metropolitan University and four small to medium companies who are currently implementing SP1 programs. Key features of the PRISMS process are: explicitly relating improvement goals to business goals, which are used to choose and prioritize key process areas for improvement; the use of a simplified and tailorable assessment method based on CMM (Paulk et al., 1995); the definition and use of metrics from the outset; and mechanisms to encourage maximum transparency in the process and participation by all stakeholders.
本文描述了一个正在进行的项目,为中小型组织的软件过程改进定义一个合适的过程模型。这是利兹城市大学和目前正在实施SP1程序的四家中小型公司之间的合作项目。prism过程的主要特征是:明确地将改进目标与业务目标联系起来,用于选择和确定改进的关键过程域的优先级;使用基于CMM的简化和可定制的评估方法(Paulk et al., 1995);从一开始就定义和使用指标;以及鼓励进程最大程度透明度和所有利益攸关方参与的机制。
{"title":"PRISMS: an approach to software process improvement for small to medium enterprises","authors":"P. Allen, M. Ramachandran, H. Abushama","doi":"10.1109/QSIC.2003.1319105","DOIUrl":"https://doi.org/10.1109/QSIC.2003.1319105","url":null,"abstract":"The paper describes an ongoing project to define a suitable process model for software process improvement in small to medium organizations. This is being carried out as a collaborative project between Leeds Metropolitan University and four small to medium companies who are currently implementing SP1 programs. Key features of the PRISMS process are: explicitly relating improvement goals to business goals, which are used to choose and prioritize key process areas for improvement; the use of a simplified and tailorable assessment method based on CMM (Paulk et al., 1995); the definition and use of metrics from the outset; and mechanisms to encourage maximum transparency in the process and participation by all stakeholders.","PeriodicalId":145980,"journal":{"name":"Third International Conference on Quality Software, 2003. Proceedings.","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2003-11-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130466799","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}