{"title":"Using mutation analysis to evaluate test generation strategies in a synchronous context","authors":"L. D. Bousquet, M. Delaunay","doi":"10.1109/ICSEA.2007.83","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.83","url":null,"abstract":"LUTESS is a test data generator dedicated to synchronous software validation. The tool produces test with respect to an environment description. To check if this description is really as expected, we use mutation analysis. The key point of the approach is to select a subset of mutants which characterizes some kind of \"interesting situations\" that are supposed to be often produced thanks to environment description. Intuitively, if preselected mutants are killed \"very often\" during tests, environment description is as expected (with respect to these \"interesting situations\").","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133410984","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":"Refactoring Test Code Safely","authors":"E. Guerra, C. Fernandes","doi":"10.1109/ICSEA.2007.57","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.57","url":null,"abstract":"Test driven development is a technique in which the refactoring occurs all the time, in the application code and in the test code. But there is not a method to guarantee that the test code behavior after one refactoring remains unchanged. This paper presents a representation based on the JUnit unit test structure, as well as a classification of test code refactorings that may ease the analysis to verify if the test code refactoring was carried out safely, i.e., if the observable behavior of the refactored test code has been kept unchanged. The use of this proposed technique may safely improve and speed up the production of test code refactorings.","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130957060","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 Framework and Process for Designing Inclusive Technology","authors":"K. Pitula, T. Radhakrishnan","doi":"10.1109/ICSEA.2007.2","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.2","url":null,"abstract":"First we explain the term 'inclusive technology' that was coined in the context of software projects intended for bridging the digital divide. Such projects have come to be known under the umbrella term \"ICT4D projects\" or Information and Communication Technology for Development projects. Then we argue that traditional software engineering processes are lacking in certain respects when used for ICT4D. To overcome their shortcomings, we propose augmenting traditional software processes to make them suitable for the development of software projects undertaken with a view of bridging the digital divide in a society.","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"156 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117108370","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":"Functional Classes: Cost of Recursive Method Call in Java","authors":"H. Mayra, M. Ronkko","doi":"10.1109/ICSEA.2007.35","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.35","url":null,"abstract":"In this paper, we discuss the cost of functional classes design style. Functional classes merge both object-oriented and functional programming paradigms; a functional class is a class without variables. Because of this, the methods in functional classes are true functions. Functional classes design style aims at improving reliability and program correctness. However, resulting program code is not optimal when considering the performance. As the main contribution, we analyze here the performance of functional classes in Java. We study especially the cost of recursive method calls. As the case study, we analyze an implementation of the cartesian product operation in a lightweight data mediator. The analysis confirms that functional classes design style leads to implementations that make poor use of HotSpot. However, the analysis also indicates how to restructure a functional class to improve the performance.","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115746620","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":"Beyond Total Cost of Ownership: Applying Balanced Scorecards to Open-Source Software","authors":"L. Lavazza","doi":"10.1109/ICSEA.2007.19","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.19","url":null,"abstract":"Potential users of Open Source Software (OSS) face the problem of evaluating OSS, in order to assess the convenience of adopting OSS instead of commercial software, or to choose among different OSS proposals. Different metrics were defined, addressing different OSS properties: the Total Cost of Ownership (TCO) addresses the cost of acquiring, adapting and operating OSS; the Total Account Ownership (TAO) represents the degree of freedom of the user with respect to the technology provider; indexes like the Open Business Quality Rating (Open BQR) assess the quality of the software with respect to the user's needs. However, none of the proposed methods and models addresses all the aspects of OSS in a balanced and complete way. For this purpose, the paper explores the possibility of adapting the Balanced Scorecard (BSC) technique to OSS. A preliminary definition of the BSC for OSS is given and discussed.","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132281343","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":"Software Environment for Research on Evolving User Interface Designs","authors":"J. Quiroz, A. Shankar, S. Dascalu, S. Louis","doi":"10.1109/ICSEA.2007.62","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.62","url":null,"abstract":"We investigate the trade off between investing effort in improving the features of a research environment that increases productivity and investing such effort in actually conducting the research experiments using a less elaborated, albeit sufficiently operational environment. The study case presented is an interactive genetic algorithm environment we created to evolve user interfaces designs. We present three productivity improvements integrated in our environment and examine whether on the long run the research productivity can be in fact increased by spending development time on enhancing the research tools rather than on performing the research itself. The three improvements are the integration of the entire system interface into a main wxPython window, the addition of a runs manager for setting up multiple experiments, and the creation of a data manager for effective exploration and visualization of data produced in the experiment runs. We also discuss several guidelines for transitioning a research environment such as ours from a researcher's tool to an end-user's tool.","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130556757","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":"Specification-based Testing Method Using Testing Flow Graphs","authors":"Ryan Voigt, Kareem Fazal, H. Reza","doi":"10.1109/ICSEA.2007.65","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.65","url":null,"abstract":"As the most formalizable UML diagram, statecharts make a natural basis for specification based test generation. In this paper we discuss a specification-based testing method that extends specification-based testing method known as Testing Flow Graphs (TFG). Our extended TFG method allows test sequences to be generated that also meet full predicate coverage. To show the effectiveness and efficiency of our approach relative to the original work, we carried out an empirical evaluation using mutation analysis.","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126758924","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":"Identification Of Software Performance Bottleneck Components In Reuse based Software Products With The Application Of Acquaintanceship Graphs","authors":"K. Jasmine, R. Vasantha","doi":"10.1109/ICSEA.2007.40","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.40","url":null,"abstract":"Component-based software engineering provides an opportunity for better quality and increased productivity in software development by using reusable software components [9]. Also performance is a make-or-break quality for software. The systematic application of software performance engineering techniques throughout the development process can help to identify design alternatives that preserve desirable qualities such as extensibility and reusability while meeting performance objectives [1]. Implementing the effective performance-based management of software intensive projects has proven to be challenging task now a days. This paper aims at identifying the major reasons of software performance failures in terms of the component communication path. My work focused on one of the applications of discrete mathematics namely graph theory. This study makes an attempt to predict the most used components to the least used with the help of acquaintanceship graphs and also the shortest communication path between any two components with the help of adjacency matrix. Experiments are conducted with four components and the result shows a promising approach towards component utilization and bottleneck determination that describe the major areas in the component communication to concentrate in achieving success in cost-effective development of highly performance software.","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"423 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120847237","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. Doungsa-ard, K. Dahal, Md. Alamgir Hossain, T. Suwannasart
{"title":"Test Data Generation from UML State Machine Diagrams using GAs","authors":"C. Doungsa-ard, K. Dahal, Md. Alamgir Hossain, T. Suwannasart","doi":"10.1109/ICSEA.2007.70","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.70","url":null,"abstract":"Automatic test data generation helps testers to validate software against user requirements more easily. Test data can be generated from many sources; for example, experience of testers, source program, or software specification. Selecting a proper test data set is a decision making task. Testers have to decide what test data that they should use, and a heuristic technique is needed to solve this problem automatically. In this paper, we propose a framework for generating test data from software specifications. The selected specification is Unified Modeling Language (UML) state machine diagram. UML state machine diagram describes a system in term of state which can be changed when there is an action occurring in the system. The generated test data is a sequence of these actions. These sequences of action help testers to know how they should test the system. The quality of generated test data is measured by the number of transitions which is fired using the test data. The more transitions test data can fire, the better quality of test data is. The number of coverage transitions is also used as a feedback for a heuristic search for a better test set. Genetic algorithms (GAs) are selected for searching the best test data. Our experimental results show that the proposed GA-based approach can work well for generating test data for some types of UML state machine diagrams.","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126292915","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}
Michael Geisser, T. Hildenbrand, Franz Rothlauf, C. Atkinson
{"title":"An Evaluation Method for Requirements Engineering Approaches in Distributed Software Development Projects","authors":"Michael Geisser, T. Hildenbrand, Franz Rothlauf, C. Atkinson","doi":"10.1109/ICSEA.2007.16","DOIUrl":"https://doi.org/10.1109/ICSEA.2007.16","url":null,"abstract":"The distribution of software engineering tasks is becoming ever more common. Requirements engineering, as the most critical phase, therefore requires methods and tools to support distributed teams. However, nearly all requirements engineering methods have originally been designed for collocated scenarios. Before applying these methods in distributed settings in practice and for scientific rigor, proper evaluation has to be conducted. Hence, we developed a methodologically sound and cost-effective evaluation method for distributed requirements engineering methods as well as the corresponding tool infrastructure for conducting evaluation projects.","PeriodicalId":395851,"journal":{"name":"International Conference on Software Engineering Advances (ICSEA 2007)","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122798034","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}