{"title":"Using error information to improve software quality","authors":"G. Walia, Jeffrey C. Carver","doi":"10.1109/ISSREW.2013.6688887","DOIUrl":null,"url":null,"abstract":"Problem Definition: To help ensure high-quality software artifacts, researchers and practitioners have developed various techniques for identifying and repairing problems early in the software lifecycle (e.g., requirements and design documents). Most of these techniques are fault-based, and have been empirically validated. However, results show that even when developers faithfully apply these techniques, they are not able to identify all types of problems and that 40-50% of effort is spent on fixing these early problems later in the development process. The studies have revealed the inadequacy of fault-based approaches, which treats the symptoms of software defects, not their underlying causes. Prior research that only analyzed a sample of faults to determine their causes and suggest process improvements (e.g., RCA, ODC) overlooked many errors due to a lack of underlying cognitive theory. Proposed Solution: Our solution applies results from human error research to address the defects made during development. Human error research focuses on the psychological processes that produce errors in human behavior. The process of applying human error research to software development begins by collecting data about errors, finding common failures, and interpreting those errors in light of human information processing limitations and known error patterns. A taxonomy of errors can be used to make developers more effective during the software inspection process to catch costly mistakes early.","PeriodicalId":332420,"journal":{"name":"2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"79 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2013-12-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISSREW.2013.6688887","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 7
Abstract
Problem Definition: To help ensure high-quality software artifacts, researchers and practitioners have developed various techniques for identifying and repairing problems early in the software lifecycle (e.g., requirements and design documents). Most of these techniques are fault-based, and have been empirically validated. However, results show that even when developers faithfully apply these techniques, they are not able to identify all types of problems and that 40-50% of effort is spent on fixing these early problems later in the development process. The studies have revealed the inadequacy of fault-based approaches, which treats the symptoms of software defects, not their underlying causes. Prior research that only analyzed a sample of faults to determine their causes and suggest process improvements (e.g., RCA, ODC) overlooked many errors due to a lack of underlying cognitive theory. Proposed Solution: Our solution applies results from human error research to address the defects made during development. Human error research focuses on the psychological processes that produce errors in human behavior. The process of applying human error research to software development begins by collecting data about errors, finding common failures, and interpreting those errors in light of human information processing limitations and known error patterns. A taxonomy of errors can be used to make developers more effective during the software inspection process to catch costly mistakes early.