2012 28th IEEE International Conference on Software Maintenance (ICSM)最新文献

筛选
英文 中文
Fine-grained change impact analysis for component-based product families 对基于组件的产品族进行细粒度的变更影响分析
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405262
A. Yazdanshenas, L. Moonen
{"title":"Fine-grained change impact analysis for component-based product families","authors":"A. Yazdanshenas, L. Moonen","doi":"10.1109/ICSM.2012.6405262","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405262","url":null,"abstract":"Developing software product-lines based on a set of shared components is a proven tactic to enhance reuse, quality, and time to market in producing a portfolio of products. Large-scale product families face rapidly increasing maintenance challenges as their evolution can happen both as a result of collective domain engineering activities, and as a result of product-specific developments. To make informed decisions about prospective modifications, developers need to estimate what other sections of the system will be affected and need attention, which is known as change impact analysis. This paper contributes a method to carry out change impact analysis in a component-based product family, based on system-wide information flow analysis. We use static program slicing as the underlying analysis technique, and use model-driven engineering (MDE) techniques to propagate the ripple effects from a source code modification into all members of the product family. In addition, our approach ranks results based on an approximation of the scale of their impact. We have implemented our approach in a prototype tool, called Richter, which was evaluated on a real-world product family.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"55 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130853971","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}
引用次数: 15
Refactoring meets spreadsheet formulas 重构符合电子表格公式
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405299
Sandro Badame, Danny Dig
{"title":"Refactoring meets spreadsheet formulas","authors":"Sandro Badame, Danny Dig","doi":"10.1109/ICSM.2012.6405299","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405299","url":null,"abstract":"The number of end-users who write spreadsheet programs is at least an order of magnitude larger than the number of trained programmers who write professional software. We studied a corpus of 3691 spreadsheets and we found that their formulas are riddled with the same smells that plague professional software: hardcoded constants, duplicated expressions, unnecessary complexity, and unsanitized input. These make spreadsheets difficult to read and expensive to maintain. Like automated refactoring in the object-oriented domain, spreadsheet refactoring can be transformative. In this paper we present seven refactorings for spreadsheet formulas implemented in RefBook, a plugin for Microsoft Excel. To evaluate the usefulness of RefBook, we employed three kinds of empirical methods. First, we conducted a User Survey with 28 Excel users to find out whether they preferred the refactored formulas. Second, we conducted a Controlled Experiment with the same 28 participants to measure their productivity when doing manual refactorings. Third, we performed a Retrospective Case Study on the EUSES Spreadsheet Corpus with 3691 spreadsheets to determine how often we could apply the refactorings supported by RefBook. The results show: (i) users prefer the improved quality of refactored formulas, (ii) RefBook is faster and more reliable than manual refactoring, and (iii) the refactorings are widely applicable. On average RefBook is able to apply the refactorings in less than half the time that users performed the refactorings manually. 92.54% of users introduced errors or new smells into the spreadsheet or were unable to complete the task.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133327144","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}
引用次数: 63
MARBLE: Modernization approach for recovering business processes from legacy information systems MARBLE:用于从遗留信息系统中恢复业务流程的现代化方法
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405351
Ricardo Pérez-Castillo
{"title":"MARBLE: Modernization approach for recovering business processes from legacy information systems","authors":"Ricardo Pérez-Castillo","doi":"10.1109/ICSM.2012.6405351","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405351","url":null,"abstract":"The volatile IT industry often tempts companies to replace legacy information systems with new ones. However, these systems cannot always be completely discarded because they gradually store a significant amount of valuable business knowledge as a result of progressive maintenance over time. MARBLE semi-automatically rebuilds the hidden business processes embedded in legacy information systems. MARBLE supports a business process archeology method which allows business experts to attain a rapid and meaningful understanding of the organization's business processes. MARBLE-framed techniques are based on static and dynamic analysis by considering different legacy software artifacts (e.g., source code, event logs, etc.). Through the validation of MARBLE with several industrial systems, the proposal proved to be less time-consuming and more exhaustive (since it considers the embedded business knowledge) than a manual process redesigned by experts from scratch. The main implications are that MARBLE provides maintainers with a mechanism with which to modernize legacy information systems in line with the actual business processes of an organization.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125485001","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
Assessing the effect of requirements traceability for software maintenance 评估需求可追溯性对软件维护的影响
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405269
Patrick Mäder, Alexander Egyed
{"title":"Assessing the effect of requirements traceability for software maintenance","authors":"Patrick Mäder, Alexander Egyed","doi":"10.1109/ICSM.2012.6405269","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405269","url":null,"abstract":"Advocates of requirements traceability regularly cite advantages like easier program comprehension and support for software maintenance (i.e., software change). However, despite its growing popularity, there exists no published evaluation about the usefulness of requirements traceability. It is important, if not crucial, to investigate whether the use of requirements traceability can significantly support development tasks to eventually justify its costs. We thus conducted a controlled experiment with 52 subjects performing real maintenance tasks on two third-party development projects: half of the tasks with and the other half without traceability. Our findings show that subjects with traceability performed on average 21% faster on a task and created on average 60% more correct solutions - suggesting that traceability not only saves downstream cost but can profoundly improve software maintenance quality. Furthermore, we aimed for an initial cost-benefit estimation and set the measured time reductions by using traceability in relation to the initial costs for setting-up traceability in the evaluated systems.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129592514","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}
引用次数: 52
MOTCP: A tool for the prioritization of test cases based on a sorting genetic algorithm and Latent Semantic Indexing MOTCP:基于排序遗传算法和潜在语义索引的测试用例优先级排序工具
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405346
Md. Mahfuzul Islam, A. Marchetto, A. Susi, G. Scanniello
{"title":"MOTCP: A tool for the prioritization of test cases based on a sorting genetic algorithm and Latent Semantic Indexing","authors":"Md. Mahfuzul Islam, A. Marchetto, A. Susi, G. Scanniello","doi":"10.1109/ICSM.2012.6405346","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405346","url":null,"abstract":"Test prioritization techniques can be used to determine test case ordering and early discover faults in source code. Several of these techniques exploit a single objective function, e.g., code or requirements coverage. In this tool demo paper, we present MOTCP, a software tool that implements a multi-objective test prioritization technique based on the information related to the code and requirements coverage, as well as the execution cost of each test case. To establish users' and system requirements coverage, the MOTCP uses Latent Semantic Indexing to recover traceability links among application source code and requirements specifications. The test case ordering is then obtained by applying a non-dominated sorting genetic algorithm.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129638978","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
An empirical study of build system migrations in practice: Case studies on KDE and the Linux kernel 构建系统迁移在实践中的实证研究:KDE和Linux内核的案例研究
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405267
R. Suvorov, M. Nagappan, A. Hassan, Ying Zou, Bram Adams
{"title":"An empirical study of build system migrations in practice: Case studies on KDE and the Linux kernel","authors":"R. Suvorov, M. Nagappan, A. Hassan, Ying Zou, Bram Adams","doi":"10.1109/ICSM.2012.6405267","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405267","url":null,"abstract":"As the build system, i.e. the infrastructure that constructs executable deliverables out of source code and other resources, tries to catch up with the ever-evolving source code base, its size and already significant complexity keep on growing. Recently, this has forced some major software projects to migrate their build systems towards more powerful build system technologies. Since at all times software developers, testers and QA personnel rely on a functional build system to do their job, a build system migration is a risky and possibly costly undertaking, yet no methodology, nor best practices have been devised for it. In order to understand the build system migration process, we empirically studied two failed and two successful attempts of build system migration in two major open source projects, i.e. Linux and KDE, by mining source code repositories and tens of thousands of developer mailing list messages. The major contributions of this paper are: (a) isolating the phases of a common methodology for build system migrations, which is similar to the spiral model for source code development (multiple iterations of a waterfall process); (b) identifying four of the major challenges associated with this methodology: requirements gathering, communication issues, performance vs. complexity of build system code, and effective evaluation of build system prototypes; (c) detailed analysis of the first challenge, i.e., requirements gathering for the new build system, which revealed that the failed migrations did not gather requirements rigorously. Based on our findings, practitioners will be able to make more informed decisions about migrating their build system, potentially saving them time and money.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"48 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124321907","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}
引用次数: 30
Finding errors from reverse-engineered equality models using a constraint solver 使用约束求解器从逆向工程等式模型中查找错误
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405256
C. R. Rupakheti, Daqing Hou
{"title":"Finding errors from reverse-engineered equality models using a constraint solver","authors":"C. R. Rupakheti, Daqing Hou","doi":"10.1109/ICSM.2012.6405256","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405256","url":null,"abstract":"Java objects are required to honor an equality contract in order to participate in standard collection data structures such as List, Set, and Map. In practice, the implementation of equality can be error prone, resulting in subtle bugs. We present a checker called EQ that is designed to automatically detect such equality implementation bugs. The key to EQ is the automated extraction of a logical model of equality from Java code, which is then checked, using Alloy Analyzer, for contract conformance. We have evaluated EQ on four open-source, production code bases in terms of both scalability and usefulness. We discuss in detail the detected problems, their root causes, and the reasons for false alarms.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"74 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122574171","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}
引用次数: 6
Facilitating enterprise software developer communication with CARES 促进企业软件开发人员与CARES的沟通
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405317
Anja Guzzi, Andrew Begel, Jessica K. Miller, Krishnamohan Nareddy
{"title":"Facilitating enterprise software developer communication with CARES","authors":"Anja Guzzi, Andrew Begel, Jessica K. Miller, Krishnamohan Nareddy","doi":"10.1109/ICSM.2012.6405317","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405317","url":null,"abstract":"Enterprise software developers must regularly communicate with one another to obtain information and coordinate changes to legacy code, but find it cumbersome and complicated to determine the most relevant and expedient person to contact. This becomes especially difficult when the relevant person has transferred teams or changed their personal contact information since contributing to the project. We conducted a year-long series of surveys and interviews to help us learn how, why, and how often software developers discover and communicate with one another. In response to what we saw, we designed, deployed, and evaluated a domain-specific, IDE-embedded, photo-oriented, communication tool. We overcame a significant challenge found in long-lived projects: uniquely identifying individuals years after their contributions to the project. After deploying our tool, iteratively refining it, and deploying it again on a company-wide scale, most users reported that it simplified the process of finding and reaching out to other developers and offered them a sense of community with their colleagues, even if those colleagues did not currently work on their team. The lessons learned from our study and tool development should apply to other large, multi-team, legacy software projects.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128487674","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
Refactoring in the presence of annotations 在有注解的情况下进行重构
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405291
Carlos Noguera, Andy Kellens, Coen De Roover, V. Jonckers
{"title":"Refactoring in the presence of annotations","authors":"Carlos Noguera, Andy Kellens, Coen De Roover, V. Jonckers","doi":"10.1109/ICSM.2012.6405291","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405291","url":null,"abstract":"Current-day programming languages include constructs to embed meta-data in a program's source code in the form of annotations. More than mere documentation, these annotations are used in modern frameworks to map source-level entities to domain-specific ones. A common example being the Hibernate Object-Relational Mapping framework that relies on annotations to declare persistence configurations. While the presence of annotations extends the base semantics of the language, it also imposes restrictions on the annotated program. In this paper we consider the manner in which annotations affect automated refactorings, and in particular how they break their behavior preservation. As refactorings, during their condition checking phase, ignore the annotation's restrictions they can no longer guarantee the preservation of the domain-specific mappings. To address this problem, we propose to make the restrictions of the annotations explicit, and use them to steer the refactoring process. A prototype extension of the Eclipse IDE's refactoring engine is used to demonstrate our approach on three annotation libraries: Java Persistence API, AspectJ5 and Simple XML serialization.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"189 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115270502","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}
引用次数: 4
A cost model based on software maintainability 基于软件可维护性的成本模型
2012 28th IEEE International Conference on Software Maintenance (ICSM) Pub Date : 2012-09-23 DOI: 10.1109/ICSM.2012.6405288
Tibor Bakota, Péter Hegedüs, Gergely Ladányi, Peter Kortvelyesi, R. Ferenc, T. Gyimóthy
{"title":"A cost model based on software maintainability","authors":"Tibor Bakota, Péter Hegedüs, Gergely Ladányi, Peter Kortvelyesi, R. Ferenc, T. Gyimóthy","doi":"10.1109/ICSM.2012.6405288","DOIUrl":"https://doi.org/10.1109/ICSM.2012.6405288","url":null,"abstract":"In this paper we present a maintainability based model for estimating the costs of developing source code in its evolution phase. Our model adopts the concept of entropy in thermodynamics, which is used to measure the disorder of a system. In our model, we use maintainability for measuring disorder (i.e. entropy) of the source code of a software system. We evaluated our model on three proprietary and two open source real world software systems implemented in Java, and found that the maintainability of these evolving software is decreasing over time. Furthermore, maintainability and development costs are in exponential relationship with each other. We also found that our model is able to predict future development costs with high accuracy in these systems.","PeriodicalId":348790,"journal":{"name":"2012 28th IEEE International Conference on Software Maintenance (ICSM)","volume":"1990 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125504207","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}
引用次数: 52
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信
小红书