{"title":"EvoSpaces: Multi-dimensional Navigation Spaces for Software Evolution","authors":"Michele Lanza, H. Gall, P. Dugerdil","doi":"10.1109/CSMR.2009.14","DOIUrl":"https://doi.org/10.1109/CSMR.2009.14","url":null,"abstract":"EvoSpaces is a Swiss-wide research project sponsored by the Hasler foundation. It involves three partners: University of Zurich, University of Lugano and the University of Applied Sciences in Geneva. The overall goal of the project is to explore novel ways to visualize and navigate evolving software systems in a 3D environment. In this paper we briefly describe the particularities of the project and the results obtained so far.","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"105 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124725178","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":"SQuAVisiT: A Flexible Tool for Visual Software Analytics","authors":"M. Brand, S. Roubtsov, Alexander Serebrenik","doi":"10.1109/CSMR.2009.19","DOIUrl":"https://doi.org/10.1109/CSMR.2009.19","url":null,"abstract":"We present the Software Quality Assessment and Visualization Toolset (SQuAVisiT), a flexible tool for visual software analytics. Visual software analytics supports analytical reasoning about software systems facilitated by interactive visual interfaces. In particular, SQuAVisiT assists software developers, maintainers and assessors in performing quality assurance and maintenance tasks. Flexibility ofSQuAVisiT allows for integration of multiple programming languages and variety of analysis and visualization tools.SQuAVisiT has been successfully applied in a number of case studies, ranging from hundreds to thousands KLOC,from homogeneous to heterogeneous systems.","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"96 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124695340","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":"Using Existing Software Assets in SOA Design","authors":"Rainer Gimnich","doi":"10.1109/CSMR.2009.72","DOIUrl":"https://doi.org/10.1109/CSMR.2009.72","url":null,"abstract":"Service-Oriented Architecture (SOA) is a business-driven IT architecture that is based on services (repeatable business tasks). The move to SOA is performed evolutionarily in most companies and public organizations. Therefore, identifying and leveraging software assets from existing applications or packageshas become a key task in SOA design. This paper summarizes major practical requirements from SOA projects and provides an overview of methodimperatives that address the requirements. Tool functions that support these imperatives conclude this overview","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127027338","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}
U. Franke, Pontus Johnson, Robert Lagerström, Johan Ullberg, David Höök, M. Ekstedt, J. König
{"title":"A Method for Choosing Software Assessment Measures Using Bayesian Networks and Diagnosis","authors":"U. Franke, Pontus Johnson, Robert Lagerström, Johan Ullberg, David Höök, M. Ekstedt, J. König","doi":"10.1109/CSMR.2009.36","DOIUrl":"https://doi.org/10.1109/CSMR.2009.36","url":null,"abstract":"Creating accurate models of information systems is an important but challenging task. While the scientific aspects of such modeling are generally acknowledged, the monetary aspects of the modeling of software systems are not. The present paper describes a Bayesian method for optimizing modeling strategies, perceived as a trade-off between these two aspects. Specifically, an informed trade-off can be made, based on the modeler's prior knowledge of the predictive power of certain models, combined with her projection of the costs. It is argued that this method enhances modeling of large and complex software systems in two principal ways: Firstly, by enforcing rigor and making hidden assumptions explicit. Secondly, by enforcing cost awareness even in the early phases of modeling. The method should be used primarily when the choice of modeling can have great economic repercussions.","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114220514","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":"Using the ACART Process for Architecture Compliance","authors":"E. Chikofsky","doi":"10.1109/CSMR.2009.66","DOIUrl":"https://doi.org/10.1109/CSMR.2009.66","url":null,"abstract":"Architecture compliance for IT systems is difficult to assert with confidence and easier to disprove than to prove. Through the use of the ACART process to narrow and focus the scope of the assertion effort, it becomes practical for the system's management team to produce convincing evidence of compliance for examination by the system's auditors.","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122260840","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":"The ARNO Project: Challenges and Experiences in a Large-Scale Industrial Software Migration Project","authors":"Werner Teppe","doi":"10.1109/CSMR.2009.64","DOIUrl":"https://doi.org/10.1109/CSMR.2009.64","url":null,"abstract":"The following paper presents the experience gained from a large scale software migration project.It describes how the migration strategy was selected and how the project was planned. It emphasizes the importance of keeping the costs as low as possible. It then goes on to outline the methods and techniques used in the migration with special emphasis on the migration process. After that, it deals with the tools used in converting the code, migrating the data and reimplementing the job control. As with all migration projects, testing played a big role and consumed a significant part of the resources. Thus, the testing techniques and tools are given particular emphasis.The paper ends with a summary of the lessons learned from this project and how they can be applied to other similar projects.","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"20 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133080910","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":"Architectural Maintenance Using a Data Warehouse System for Availability Analysis","authors":"Günter Büren, Christian Rückert","doi":"10.1109/CSMR.2009.25","DOIUrl":"https://doi.org/10.1109/CSMR.2009.25","url":null,"abstract":"This paper describes the usage of an architecture centric quality engineering approach to improve the availability of an existing system during maintenance. In most projects existing software is extended or modified to fit new or modified requirements. A crucial subset of the requirements are non-functional requirements, also known as quality attributes. Here the quality attribute availability is in the main focus. The goal of the described approach is architectural re-design to improve the availability of the system. In order to make a profound decision on architectural changes the availability as well as the architecture of the existing system was analyzed in detail. For the availability analysis runtime data of the system was collected and analyzed using a data warehouse system. The use of the re-design process for increased availability was very effective in increasing the availability of the system. The efficiency of the process still needs to be improved.","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"33 6","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131673238","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":"Discovering Comprehension Pitfalls in Class Hierarchies","authors":"Petru Florin Mihancea, Radu Marinescu","doi":"10.1109/CSMR.2009.31","DOIUrl":"https://doi.org/10.1109/CSMR.2009.31","url":null,"abstract":"Despite many advances in program comprehension, polymorphism and inheritance are still the cause of many misunderstandings in object-oriented code. In this paper, we present a suite of such concrete, recurrent patterns where particular ways of using inheritance and polymorphism can easily mislead developers and maintainers during software understanding activities. We define these as comprehension pitfalls. Furthermore, the paper describes a metric-based approach aimed to automatically detect such situations in code. The experimental results presented in this paper, based on three medium-sized systems, indicate that the identified comprehension pitfalls and the approach used to detect them are a promising support for maintenance.","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123992505","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":"Architectural Complexity of Large-Scale Software Systems","authors":"Carola Lilienthal","doi":"10.1109/CSMR.2009.16","DOIUrl":"https://doi.org/10.1109/CSMR.2009.16","url":null,"abstract":"Today companies apply software systems with more than 14 million Lines of Code (LOC), which are still maintainable and expandable in spite of their size. On the other hand, you will find smaller software systems (≫200,000 LOC), which can either only be adapted with considerable effort, or which cannot be adapted at all. Why are some software systems fraught with maintenance problems while others remain manageable? Based on twenty-four industrial case studies on object-oriented Java projects, this paper identifies aspects of architectural complexity and describes which route should be taken to keep the architectural complexity of large-scale software systems controllable. In this context it becomes clear that in every case the architectural style is pivotal in determining whether the software system will be maintainable over a longer period and thus prevent software erosion.","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"93 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131733434","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":"Structural Complexity and Decay in FLOSS Systems: An Inter-repository Study","authors":"A. Capiluppi, Karl Beecher","doi":"10.1109/CSMR.2009.37","DOIUrl":"https://doi.org/10.1109/CSMR.2009.37","url":null,"abstract":"Past software engineering literature has firmly established that software architectures and the associated code decay over time. Architectural decay is, potentially, a major issue in Free/Libre/Open Source Software (FLOSS) projects,since developers sporadically joining FLOSS projects do not always have a clear understanding of the underlying architecture, and may break the overall conceptual structure by several small changes to the code base.This paper investigates whether the structure of a FLOSS system and its decay can also be influenced by the repository in which it is retained: specifically,two FLOSS repositories are studied to understand whether the complexity of the software structure in the sampled projects is comparable, or one repository hosts more complex systems than the other. It is also studied whether the effort to counteract this complexity is dependent on the repository, and the governance it gives to the hosted projects.The results of the paper are two-fold: on one side, it is shown that the repository hosting larger and more active projects presents more complex structures. On the other side, these larger and more complex systems benefit from more anti-regressive work to reduce this complexity.","PeriodicalId":226902,"journal":{"name":"2009 13th European Conference on Software Maintenance and Reengineering","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122577176","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}