Jacek Rosik, AndrewJ. L. Gear, J. Buckley, M. Babar
{"title":"An industrial case study of architecture conformance","authors":"Jacek Rosik, AndrewJ. L. Gear, J. Buckley, M. Babar","doi":"10.1145/1414004.1414019","DOIUrl":"https://doi.org/10.1145/1414004.1414019","url":null,"abstract":"A software designer often has little control over, or means of checking, whether his design is being adhered to, once the implementation begins. This 'architectural drift', where the original design of the system and the as-implemented design of the system diverge, can cause serious problems for evolution, maintenance and the comprehensibility of a system if it remains undocumented or uncorrected. The earlier such discrepancies can be identified, the better.\u0000 This paper reports on a case study designed to evaluate a proposed approach for monitoring architectural drift during software development. The proposed approach differs significantly from existing design conformance approaches in that it has been designed for application within a forward engineering context. The findings show the utility of the approach in identifying architectural drift but also illustrate a number of improvements that could be made to the technique to further promote architecture conformance.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114456348","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}
René Noël, G. Valdés, Marcello Visconti, H. Astudillo
{"title":"Adding planned design to xp might help novices' productivity (or might not): two controlled experiments","authors":"René Noël, G. Valdés, Marcello Visconti, H. Astudillo","doi":"10.1145/1414004.1414053","DOIUrl":"https://doi.org/10.1145/1414004.1414053","url":null,"abstract":"Extreme Programming (XP) suggests using Evolutionary design, always implementing the simplest solution that satisfies the current iteration's requirements, instead of Planned (or Traditional) up-front design. Some developers have questioned the usefulness of Evolutionary approach's enabling practices (e.g., refactoring, test-driven development) arguing for the naturalness of, and need for, Planned design. Two controlled experiments were conducted to compare both approaches regarding product quality and programmer productivity. Results from both studies show that (1) there is no significant difference in the product quality, independently of experience, but (2) novices are more productive using the Planned approach.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123940106","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":"Combining regression and estimation by analogy in a semi-parametric model for software cost estimation","authors":"N. Mittas, L. Angelis","doi":"10.1145/1414004.1414017","DOIUrl":"https://doi.org/10.1145/1414004.1414017","url":null,"abstract":"Software Cost Estimation is the task of predicting the effort or productivity required to complete a software project. Two of the most known techniques appeared in literature so far are Regression Analysis and Estimation by Analogy. The results of the empirical studies show the lack of convergence in choosing the best prediction technique between the parametric Regression Analysis and the non-parametric Estimation by Analogy models. In this paper, we introduce the use of a semi-parametric model that achieves to incorporate some parametric information into a non-parametric model combining in this way regression and analogy. Furthermore, we demonstrate the procedure of building such a model on two well-known datasets and we present the comparative results based on the predictive accuracy of the new technique using several accuracy measures. We also perform statistical tests on the residuals in order to assess the improvement in the predictions attained through the new semi-parametric model in comparison to the accuracy of Regression Analysis and Estimation by Analogy when applied separately. Our results show that the semi-parametric model provides more accurate predictions than each one of the parametric and non-parametric approaches.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132150428","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}
F. P. Romero, J. A. Olivas, M. Genero, M. Piattini
{"title":"Automatic extraction of the main terminology used in empirical software engineering through text mining techniques","authors":"F. P. Romero, J. A. Olivas, M. Genero, M. Piattini","doi":"10.1145/1414004.1414082","DOIUrl":"https://doi.org/10.1145/1414004.1414082","url":null,"abstract":"The need for an explicit common terminology within Empirical Software Engineering (an ESE-Glossary of terms) was highlighted in the ISERN 2007 meeting [2]. The goal was to define a glossary of terms related to ESE based on an initial glossary published in http://lens-ese.cos.ufrj.br/wikiese. This initial glossary was built manually, based on expert knowledge. However, owing to the dynamic nature of the research works in ESE, this glossary must be dynamically updated with information extracted from the relevant documents in the research domain. Automation is, therefore, mandatory. We propose a text mining technique for the automatic extraction of the most relevant terms used in ESE documents. Our technique also provides the relationships between terms, with the degree of affinity between them. Our approach could, therefore, be useful in the improvement of the initial glossary of terms and in discovering relationships between terms.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126612405","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 establishing a benchmark for evaluating static analysis alert prioritization and classification techniques","authors":"S. Heckman, L. Williams","doi":"10.1145/1414004.1414013","DOIUrl":"https://doi.org/10.1145/1414004.1414013","url":null,"abstract":"Benchmarks provide an experimental basis for evaluating software engineering processes or techniques in an objective and repeatable manner. We present the FAULTBENCH v0.1 benchmark, as a contribution to current benchmark materials, for evaluation and comparison of techniques that prioritize and classify alerts generated by static analysis tools. Static analysis tools may generate an overwhelming number of alerts, the majority of which are likely to be false positives (FP). Two FP mitigation techniques, alert prioritization and classification, provide an ordering or classification of alerts, identifying those likely to be anomalies. We evaluate FAULTBENCH using three versions of a FP mitigation technique within the AWARE adaptive prioritization model. Individual FAULTBENCH subjects vary in their optimal FP mitigation techniques. Together, FAULTBENCH subjects provide a precise and general evaluation of FP mitigation techniques.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121120503","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}
C. Thomson, M. Holcombe, A. J. Cowling, Tony Simons, G. Michaelides
{"title":"A pilot study of comparative customer comprehension between extreme x-machine and uml models","authors":"C. Thomson, M. Holcombe, A. J. Cowling, Tony Simons, G. Michaelides","doi":"10.1145/1414004.1414048","DOIUrl":"https://doi.org/10.1145/1414004.1414048","url":null,"abstract":"Many design notations are used during software development to help the developers better understand the required system. However they are infrequently shown to clients, partly because developers believe that clients don't understand them. In this study we investigate the extent to which clients comprehend three types of diagram. Two popular UML diagrams (activity and use case) and Extreme X-Machines diagrams (a type of state diagram developed to support Extreme Programming) were shown to three clients for whom we had recently delivered the software that was represented. The clients were given some simple guidance on interpreting them and asked to evaluate how well they understood them. This pilot study found that all the diagrams studied seemed to be equally well understood, but further studies are required to evaluate their usefulness.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"155 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121674709","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":"Mining software code repositories and bug databases using survival analysis models","authors":"M. Wedel, U. Jensen, P. Göhner","doi":"10.1145/1414004.1414052","DOIUrl":"https://doi.org/10.1145/1414004.1414052","url":null,"abstract":"Code repositories and bug databases contain valuable information about the process of software development. Typical studies correlate code properties with the number of faults in a software module to find error-prone modules. However, many studies do not regard the occurrence of faults over time, although the time information can be retrieved from bug databases. In order to overcome this problem, we suggest the application of survival analysis models, which are used in biostatistics and can handle time-dependent data. Because a large amount of raw data has to be evaluated statistically, we further discuss the automated retrieval and pre-processing of raw data from code repositories and bug databases.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"69 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134594221","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 survey of software project managers on software process change","authors":"Yuepu Guo, C. Seaman","doi":"10.1145/1414004.1414046","DOIUrl":"https://doi.org/10.1145/1414004.1414046","url":null,"abstract":"Software project managers play an important role in selecting their software development process. In this study we conducted a survey of software project managers about software process change. The result of the survey revealed several factors affecting this type of decision making. It also revealed critical issues in software development projects. In particular, the findings point to the importance of a piloting strategy in technology transfer, as well as the importance of highlighting cost, quality, and schedule information in reporting evidence of a new technique's effectiveness. We expect that the findings of this study could facilitate research on technology transfer and adoption.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"115 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115486458","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":"An empirical model to predict security vulnerabilities using code complexity metrics","authors":"Yonghee Shin, L. Williams","doi":"10.1145/1414004.1414065","DOIUrl":"https://doi.org/10.1145/1414004.1414065","url":null,"abstract":"Complexity is often hypothesized to be the enemy of software security. If this hypothesis is true, complexity metrics may be used to predict the locale of security problems and can be used to prioritize inspection and testing efforts. We performed statistical analysis on nine complexity metrics from the JavaScript Engine in the Mozilla application framework to find differences in code metrics between vulnerable and nonvulnerable code and to predict vulnerabilities. Our initial results show that complexity metrics can predict vulnerabilities at a low false positive rate, but at a high false negative rate.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131206686","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":"Any other cost estimation inhibitors?","authors":"Ana Magazinovic, J. Pernstål","doi":"10.1145/1414004.1414042","DOIUrl":"https://doi.org/10.1145/1414004.1414042","url":null,"abstract":"The purpose of this qualitative multiple case study is to research the current causes to cost estimation errors and revisit the research question of a well published quantitative study to explore whether responses would be consistent using qualitative methodology. Both overlaps and deviations are to be expected as a result of this comparison. The focus of this paper is on differences where new issues are likely to be found.\u0000 The 8 resulting cross case cost estimation inhibitors validate 7 out of 16 issues found in the quantitative study. They are also related to the theory within and outside the area of software engineering resulting in five underlying software cost estimation inhibitors and providing a deeper understanding for the snapshot of the current causes of cost estimation errors reported by the practitioners.\u0000 Lastly, the question of the practitioners' ability to report upon software cost estimation inhibitors is discussed. We argue that there might be causes of cost estimation errors that practitioners might be unwilling to reveal or might even be completely unaware of. Thus, they might unconsciously be providing researchers with invalid data.","PeriodicalId":124452,"journal":{"name":"International Symposium on Empirical Software Engineering and Measurement","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-10-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129900401","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}