{"title":"Regression Testing Goals - View of Practitioners and Researchers","authors":"N. Minhas, K. Petersen, N. Ali, K. Wnuk","doi":"10.1109/APSECW.2017.23","DOIUrl":"https://doi.org/10.1109/APSECW.2017.23","url":null,"abstract":"Context: Regression testing is a well-researched area. However,the majority regression testing techniques proposed by theresearchers are not getting the attention of the practitioners. Communicationgaps between industry and academia and disparity in theregression testing goals are the main reasons. Close collaboration canhelp in bridging the communication gaps and resolving the disparities.Objective: The study aims at exploring the views of academicsand practitioners about the goals of regression testing. The purpose isto investigate the commonalities and differences in their viewpointsand defining some common goals for the success of regression testing.Method: We conducted a focus group study, with 7 testingexperts from industry and academia. 4 testing practitioners from 2companies and 3 researchers from 2 universities participated in thestudy. We followed GQM approach, to elicit the regression testinggoals, information needs, and measures.Results: 43 regression testing goals were identified by theparticipants, which were reduced to 10 on the basis of similarityamong the identified goals. Later during the priority assignmentprocess, 5 goals were discarded, because the priority assigned tothese goals was very low. Participants identified 47 informationneeds/questions required to evaluate the success of regression testingwith reference to goal G5 (confidence). Which were then reduced to10 on the basis of similarity. Finally, we identified measures to gaugethose information needs/questions, which were corresponding to thegoal (G5).Conclusions: We observed that participation level ofpractitioners and researchers during the elicitation of goals andquestions was same. We found a certain level of agreement betweenthe participants regarding the regression testing definitions and goals.But there was some level of disagreement regarding the prioritiesof the goals. We also identified the need to implement a regressiontesting evaluation framework in the participating companies.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126933752","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":"Entropy-Based Dynamic Complexity Metrics for Service-Oriented Systems","authors":"Chengying Mao, Changfu Xu","doi":"10.1109/APSECW.2017.14","DOIUrl":"https://doi.org/10.1109/APSECW.2017.14","url":null,"abstract":"The complexity analysis of service systems is mainly from the static aspect, and the dynamic complexity measurement has not attracted enough attention yet. In this paper, we attempt to provide some dynamic complexity metrics for service systems through measuring their execution behaviors. At first, two models, i.e., service unit vector and service pair matrix, are presented to represent the execution traces. Meanwhile, distance entropy is adapted in our work for analyzing execution traces. Based on the modeling representation of execution traces, the basic Shannon entropy and the adapted distance entropy are used to measure the dynamic complexity of a service system. In addition, the effectiveness of our proposed entropy-based metrics of dynamic complexity is validated by several examples of service systems and a real application. Particularly, the metric of combining the adapted distance entropy and service pair matrix has the strongest ability to depict the dynamic complexity.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"215 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114595673","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}
H. Suwa, Akinori Ihara, R. Kula, Daiki Fujibayashi, Ken-ichi Matsumoto
{"title":"An Analysis of Library Rollbacks: A Case Study of Java Libraries","authors":"H. Suwa, Akinori Ihara, R. Kula, Daiki Fujibayashi, Ken-ichi Matsumoto","doi":"10.1109/APSECW.2017.25","DOIUrl":"https://doi.org/10.1109/APSECW.2017.25","url":null,"abstract":"To take full advantage of third-party library functionality, developers of a software are encouraged to constantly migrate their library dependencies. When developers migrate a library, a library rollback may occur during a migration. The library rollback is a process of restoring the software to the previously defined library state, typically to recover because a library that could not integrate with that software based on any reasons. To ensure a quick successful migration of a new library or version, developers should avoid the time and resource costs of such rollbacks. In this paper, we investigate factors leading to a rollback during library migration. We propose an empirical method to detect rollbacks and apply it to 9,357 projects from GitHub that have been adopted by around 50 Maven libraries. The results indicate that dependencies with shorter release cycles are more likely to have a rollback.Furthermore, a project that responds more quickly to a newer library is more likely to have a rollback. We recommend that developers consider project version type, latency time and the release cycle of a library during library migration.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130795589","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":"Time Distribution of Software Stage Effort","authors":"Yong Wang, Lili Wang, Yi Li, Xiaoyan Zhu","doi":"10.1109/APSECW.2017.9","DOIUrl":"https://doi.org/10.1109/APSECW.2017.9","url":null,"abstract":"In the 1950s, Norden first employed the Rayleigh Curve to describe the time distribution rule of software project effort. However, to date, there is no new curve proposed for the later software projects. This research explores a new distribution rule which leads further to estimate software stage effort. We conducted a study on the basis of 4,516 actual projects, and derived general monthly effort distribution curves from them. The new curve has some features similar with Norden's curve, but there also exist some obvious differences. Benefit from a large number of projects, we also found the monthly effort statistical distribution and the typical value of each month. The research results give a new facet about software projects within the dataset, and can be helpful for software project management.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116170732","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":"What is the Further Evidence about UML? - A Systematic Literature Review","authors":"Min Guo, Cheng Zhang, Futian Wang","doi":"10.1109/APSECW.2017.28","DOIUrl":"https://doi.org/10.1109/APSECW.2017.28","url":null,"abstract":"Context: Unified Modeling Language (UML) is a modeling language in software engineering. It has become the industrial standard for software development. Although the Unified Modeling Language has been widely studied, it still has little further empirical knowledge about the notations of the UML. Objectives: To determine the further development trend of the notations of the UML, as well as their benefits, in different aspects of UML, and to identify which diagrams of the UML have been studied in most frequently. Method: Based on a systematic review in 2008 and several related works we performed an extended systematic literature review, and classified them according to the identified categories-comprehension, model quality, adoption, metrics, methods and tools. Results: We found 420 candidate papers, and 33 empirical papers of them had been identified, the results were expressed in the article. Conclusions: Compared the original study, the larger group of empirical studies of the UML through our analysis concentrates on comprehension, model quality and adoption, but adoption of UML is being studied by researchers and will be more and more interested in industry practitioners.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123746452","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":"Systematic Review of Success Factors for Scaling Agile Methods in Global Software Development Environment: A Client-Vendor Perspective","authors":"Mohammad Shameem, C. Kumar, B. Chandra, A. Khan","doi":"10.1109/APSECW.2017.22","DOIUrl":"https://doi.org/10.1109/APSECW.2017.22","url":null,"abstract":"Presently, global software development(GSD) is gaining a much attention from the softwaredevelopment organizations. In GSD, the agile developmentbecomes more challenging due to the geographically,socio-cultural and temporal boundaries.Several frameworks have been developed to managethe agile development programs in large scale softwaredevelopment organizations e.g. scaled agile framework(SAFe), large-scale scrum (LeSS) and disciplined agiledelivery (DAD). However, these frameworks arelacking to provide the detail information about theagile development programs in GSD environment. Inthis study, the mentioned research gap has been triedto fill by conducting a systematic literature review(SLR) study to identify the key factors that couldpositively impact the agile development activities inGSD environment. Using SLR approach, a total of 15success factors were identified that could positivelyaffect the agile development in GSD environment.The identified success factors were further categorizedinto two broad categories of client and vendor GSDorganizations. Client-vendor classification was used toprovide a broad picture of agile programs, and theirrespective success factors. Moreover, the identifiedfactors were also mapped into six different categoriesbased on a model of process improvement.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115970303","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":"Exploring the Relationships between Software Architecture and Source Code","authors":"Fangchao Tian, Peng Liang","doi":"10.1109/APSECW.2017.17","DOIUrl":"https://doi.org/10.1109/APSECW.2017.17","url":null,"abstract":"Software Architecture (SA) is introduced as highlevel structures and the blueprint of a software system. Over the last decades, SA was broadly researched in academia and adopted in industry. SA design and code implementation are two essential and integral parts of the software development lifecycle. In recent years, there has been a research trend on investigating the relationships between SA and source code. Exploring such relationships is conducive to software system maintenance and evolution. The recent researches on the relationships between SA and code are mainly focused on the following questions: How to recover SA from code? How to automatically generate code from SA? How to detect architectural problems from code? But little research has been conducted on systematically analyzing, synthesizing, and using the relationships between SA and code. This PhD research* proposes systematic methods with the purpose of summarizing, classifying, analyzing, identifying, and using the relationships between SA and code to effectively maintain and evolve software systems.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126424486","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}
Elvira-Maria Arvanitou, Apostolos Ampatzoglou, Konstantinos Tzouvalidis, A. Chatzigeorgiou, P. Avgeriou, Ignatios S. Deligiannis
{"title":"Assessing Change Proneness at the Architecture Level: An Empirical Validation","authors":"Elvira-Maria Arvanitou, Apostolos Ampatzoglou, Konstantinos Tzouvalidis, A. Chatzigeorgiou, P. Avgeriou, Ignatios S. Deligiannis","doi":"10.1109/APSECW.2017.21","DOIUrl":"https://doi.org/10.1109/APSECW.2017.21","url":null,"abstract":"Change proneness is a characteristic of software artifacts that represents their probability to change in future. Change proneness can be assessed at different levels of granularity, ranging from classes to modules. Although change proneness can be successfully assessed at the source code level (i.e., methods and classes), it remains rather unexplored for architectures. Additionally, the methods that have been introduced at the source code level are not directly transferable to the architecture level. In this paper, we propose and empirically validate a method for assessing the change proneness of architectural modules. Assessing change proneness at the level of architectural modules requires information from two sources: (a) the history of changes in the module, as a proxy of how frequently the module itself undergoes changes; and (b) the dependencies with other modules that affect the probability of a change being propagated from one module to the other. To validate the proposed approach, we performed a case study on five open-source projects. Specifically, we compared the accuracy of the proposed approach to the use of software package metrics as assessors of modules change proneness, based on the 1061-1998 IEEE Standard. The results suggest that compared to examined metrics, the proposed method is a better assessor of change proneness. Therefore, we believe that the method and accompanying tool can effectively aid architects during software maintenance and evolution.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133720768","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":"Including Pervasive Web Content in Evidence-Based Software Engineering: A Case Study","authors":"Jinyu Ma, Zheng Li, Yan Liu","doi":"10.1109/APSECW.2017.12","DOIUrl":"https://doi.org/10.1109/APSECW.2017.12","url":null,"abstract":"Context: Both scientific publications and grey literature have widely been employed as sources of empirical evidence in evidence-based software engineering (EBSE). However, there is still a fierce debate about whether or not the pervasive Web content can act as an alternative means to gather evidence for EBSE. Aim: To help ourselves enter this debate, this work aims to obtain some pre-evidence of reviewing Web documents for verifying the value and reliability of online materials. Method: Given the unique characteristics of Web content, we adapted the traditional Systematic Literature Review (SLR) methodology in EBSE, and conducted a review case study in the deep learning domain. Results: Our study selected four different search sources and captured 5082 \"deep learning\"-relevant Web documents. After a set of thematic synthesis steps ranging from keyword identification to brainstorming, the collected raw data were eventually evolved into a mind map of six semantic topics. Conclusions: We confirm that Web content can provide valuable information as supplementary evidence in EBSE. However, reviewing Web content introduces more search source bias rather than academic publications' location bias that is due to factors like ease of access or indexing levels in digital libraries.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"193 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122790945","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":"AHWCI: A Prototype Tool for Identifying High-Level Workflow Changes","authors":"Fangfei Chen, Wei Song, Chengzhen Zhang, Xuansong Li, Pengcheng Zhang","doi":"10.1109/APSECW.2017.20","DOIUrl":"https://doi.org/10.1109/APSECW.2017.20","url":null,"abstract":"Identifying a minimum sequence of high-level workflowchanges is required in many application scenarios suchas workflow retrieval, comparison, and merging, etc. However, this problem has been proved to be NP-hard. In this paper, we utilize an A* like algorithm and a set of pruning rules to address this problem. The performance evaluation demonstrates the advantages of our approach over the state-of-the-art approach.","PeriodicalId":172357,"journal":{"name":"2017 24th Asia-Pacific Software Engineering Conference Workshops (APSECW)","volume":"121 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132054089","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}