{"title":"Measuring the quality of issue tracking data","authors":"Feifei Tu, Feixue Zhang","doi":"10.1145/2677832.2677844","DOIUrl":"https://doi.org/10.1145/2677832.2677844","url":null,"abstract":"Source code and its development history can represent the output and process of developing software. [1] But little attention has been devoted to the data quality. To help researchers and practioners preliminary evaluate the software development data they used in studies, we design a tool, Data Quality Evaluator (DQE), to measure the software development data, especially the data completeness of issue reports in an open source software (OSS) project’s issue tracking system (ITS). It is judged from three metrics -- the coherence of issue reports’ ID, the existence of an issue report’s basic information and activity information, and the completeness of changes on an issue report status. DQE will analyze the data submitted by users, and show users the data quality evaluation chart from three aspects. We had DQE applied to the GNOME community’s issue-tracking data that we collected for research, and we obtained the result of data quality evaluation. Next, we will continue to apply DQE to more software development data, so that we can help researchers and practioners conveniently get an initial evaluation of data quality.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"56 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132224856","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}
Xiaodong Zhang, Ying Zhang, Xing Zhao, Gang Huang, Q. Lin
{"title":"SmartRelationship: a VM relationship detection framework for cloud management","authors":"Xiaodong Zhang, Ying Zhang, Xing Zhao, Gang Huang, Q. Lin","doi":"10.1145/2677832.2677845","DOIUrl":"https://doi.org/10.1145/2677832.2677845","url":null,"abstract":"With the rapid development of Cloud computing technologies, a large number of Cloud management systems have emerged in recent years, such as Amazon EC2, Eucalyptus, CloudStack and OpenStack. To the best of our knowledge, all of these systems treat virtual machines (VMs) independent with each other and ignore the relationships between them. However, the relationship information between VMs can greatly impact the resource utilization, application performance and so on. Therefore, in this paper, we present SmartRelationship – a relationship detection framework for Cloud management. The framework detects the relationship between VMs in Cloud, which can be used to optimize Cloud management services such as VM dynamic placement, fault detection and security inspection.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"64 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134320874","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 graph database based crowdsourcing infrastructure for modelling and searching code structure","authors":"Zeqi Lin, Junfeng Zhao, Bing Xie","doi":"10.1145/2677832.2677847","DOIUrl":"https://doi.org/10.1145/2677832.2677847","url":null,"abstract":"Software reuse offers a solution to eliminate repeated work and improve efficiency and quality in the software development. In order to reuse existing software resources, software developers usually need to understand code structure of them. However, code structure is usually too complex to figure out. Therefore, it is helpful to demonstrate software developers the code structure they want to know. This paper presents a graph database based crowdsourcing infrastructure for modelling and searching code structure. In this paper, a graph based modelling paradigm of code structure is provided, which solves the problem that how code structure should be demonstrated. Software developers' search purposes are analyzed by natural language processing technique. A crowdsourcing mechanism is provided to integrate different code structure analysis algorithms for these different search purposes. Our work improves the efficiency of software reuse, and it is validated through an industrial case study.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122106779","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":"Characterizing cache usage for mobile web applications","authors":"Yun Ma, Xuan Lu, Shuhui Zhang, Xuanzhe Liu","doi":"10.1145/2677832.2677843","DOIUrl":"https://doi.org/10.1145/2677832.2677843","url":null,"abstract":"Web application is a key app on mobile devices. However, the performance of mobile Web applications is known to be poor. Resource loading is a key factor influencing Web applications performance. Cache is an effective mechanism to accelerate resource loading by enabling to access resources directly from local storage. In this paper, we make a quantitative study to characterize how mobile Web applications leverage cache to improve its performance. The results show that mobile Web cache is not so efficient. On one hand, redundant transfers are always there to waste data traffic and energy consumption no matter the client support is perfect or not. On the other hand, changed resources are not replaced from cache in time, leading to incorrect functions.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"343 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115846061","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}
Tao Wang, Gang Yin, Huaimin Wang, Cheng Yang, Peng Zou
{"title":"Linking stack overflow to issue tracker for issue resolution","authors":"Tao Wang, Gang Yin, Huaimin Wang, Cheng Yang, Peng Zou","doi":"10.1145/2677832.2677839","DOIUrl":"https://doi.org/10.1145/2677832.2677839","url":null,"abstract":"Issue resolution is a central task for software development. The efficiency of issue fixing largely relies on the issue report quality. Stack Overflow, which hosts rich and real-time posts about programming-specific problems, is a valuable external source of knowledge for issue resolution. In this paper, we present CrossLink, an analysis framework that automatically introduce related posts in Stack Overflow to issues in Android Issue Tracker. This helps developers to leverage the abundant and professional knowledge from massive programmers in Stack Overflow for issue resolution. CrossLink explores the semantic similarities as well as the temporal associations between the two types of repositories to recommend Stack Overflow posts to Android issues. The internal links in Stack Overflow are also employed to improve the linking accuracy. The experiments prove the effectiveness of CrossLink with precision of 62.51% for top-10 recommendations, which is significantly higher than the state-of-art method.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121518940","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}
Qiliang Yang, Xianping Tao, Hongwei Xie, Jianchun Xing, Wei Song
{"title":"FuAET: a tool for developing fuzzy self-adaptive software systems","authors":"Qiliang Yang, Xianping Tao, Hongwei Xie, Jianchun Xing, Wei Song","doi":"10.1145/2677832.2677840","DOIUrl":"https://doi.org/10.1145/2677832.2677840","url":null,"abstract":"Handling uncertainty in software self-adaptation has become an important and challenging issue. In our previous work, we proposed a fuzzy control based approach named Software Fuzzy Self-Adaptation (SFSA) to address fuzziness, a kind of uncertainty in software self-adaptation. However, our SFSA approach still lacks a tool to efficiently support the implementation process of SFSA. Existing tools for realizing self-adaptive applications does not directly deal with fuzziness in self-adaption loops. In this paper, we present the FuAET, a tool designed for building fuzzy self-adaptive software systems. The novelty of the tool is that it can not only provide a friendly GUI for editing and testing fuzzy self-adaptation strategies in intelligible domain specific language (DSL), but also automatically convert DSL-based fuzzy selfadaptation strategies into aspect-based programming code in native-language (NL), e.g., C++. This paper describes the design framework and implementation principles of FuAET, and then proposes a general development process using FuAET for reference to developers. Finally, we conduct an empirical study for evaluation of FuAET using an industrial control application. The results show that FuAET can automate the development of SFSA and ease the burden of the software engineers.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"84 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130441956","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":"Towards realisation of evolvable runtime variability in internet-based service systems via dynamical software update","authors":"Jiwei Liu, Xinjun Mao","doi":"10.1145/2677832.2677838","DOIUrl":"https://doi.org/10.1145/2677832.2677838","url":null,"abstract":"Today’s Internet-based service systems tend to run in open environments and try to satisfy varying requirements. In the context, the changes of requirements and environments can emerge at any point of their life cycle, and their runtime variability is supposed to be evolvable to deal with the changes. In other words, the number, type or attribute of variability elements (variation points and their associated variants) in the systems is regarded to be changeable, especially at runtime. How to realise evolvable runtime variability in software systems is a challenge in the community of software engineering. Software architecture is supposed to support updating software without interrupting service if runtime variability is to be changed. Besides, the relevant mechanisms have to be provided to achieve dynamic update. Thus, we propose a dynamically reconfigurable reference architecture to construct the systems with evolvable software variability. The resultant system established using our approach consists of variability units and their containers. Variability units embody the variability elements that can be changed through local relay, i.e., starting a new version of variability unit to take place of older ones. Containers are mainly used to carry out the dynamic updating for variability units and realise the functionality invocation among different variability units. They can also be added, removed or replaced without shutting down the entire system. We analyse the requirements and scenarios of evolvable runtime variability in the case of Personal Data Resource Network, and further show the effectiveness and applicability of our approach by constructing the system using our class library and solving the issues proposed in the case.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122534201","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}
Wei Wang, Zhaohui Liu, Yong Jiang, Xinchen Yuan, Jun Wei
{"title":"EasyCache: a transparent in-memory data caching approach for internetware","authors":"Wei Wang, Zhaohui Liu, Yong Jiang, Xinchen Yuan, Jun Wei","doi":"10.1145/2677832.2677837","DOIUrl":"https://doi.org/10.1145/2677832.2677837","url":null,"abstract":"Developers usually use in-memory data caching system like Hazelcast with the application server to offload the backend database for scaling Internetware. Unfortunately, such caches do not integrate well with the database or the application. Developers need to take a large effort to rewrite the existing data access logic and manually manage the caching data. In this paper, we present EasyCache, a novel data caching approach, which provides transparent cache pre-loading, accessing and consistency maintenance to relieve developers of the burden of cache using and management. First, EasyCache translates each row of data in the existing database table into application cached object to pre-load cache data. Second, EasyCache allows applications to access the data cache using SQL statements and translates them into key/value based cache operations. Finally, EasyCache provides asynchronous/synchronous strategies to persist the cache data changes into the backend database. We design and implement EasyCache as a JDBC driver with Hazelcast as the caching layer. To evaluate our prototype, a detailed set of experiments were performed using the TPC-W benchmark. In the experiments, the only programming effort with EasyCache is point the application to the EasyCache JDBC driver. In contrast, when using Hazelcast as a traditional application-level caching system, we need to modify the TPC-W code over 2000 lines for 15 man days. Our experiments also show that, compared to a system with no cache and with query result cache, using EasyCache leads to up to 692× and 77× performance improvement respectively.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"58 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114453400","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":"User preference based autonomic generation of self-adaptive rules","authors":"Tianqi Zhao, Haiyan Zhao, Wei Zhang, Zhi Jin","doi":"10.1145/2677832.2677835","DOIUrl":"https://doi.org/10.1145/2677832.2677835","url":null,"abstract":"The internetware system is a complex and distributed self-adaptive system, which challenges the method for making adaptation plans. Rule based approaches are very efficient to make plans in adaptive systems. To enable effective rule-based adaptation, we need to write a set of well behaved self-adaptive rules which could always lead to desirable states. This adaptive rules-set needs to be correct, com- plete, conflicts-free and well satisfy user goals, and it should updates according to user preferences. However, it is a difficult task for sys- tem users to define such a set of rules. To resolve this problem, we provide an rule generation engine, which could automatically generate well behaved self-adaptive rules according to user pref- erences. The rule generation engine is realized by a three-stage algorithm: stage 1 integrates user goals and user preferences, stage 2 establishes 1-1 tracing relationship between a context state and its desirable software configuration, stage 3 extracts self-adaptive rules from the tracing relationship between context states and software configurations. We will apply this engine to generate self-adaptive rules for a smart phone system, and evaluate the quality of generated self-adaptive rules.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"220 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116036673","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":"Extending execution plan with execution path set partitions","authors":"Mingkun Yang, Qimin Peng, Xiaohui Hu","doi":"10.1145/2677832.2677850","DOIUrl":"https://doi.org/10.1145/2677832.2677850","url":null,"abstract":"Due to the increase in web services, non-functional or QoS parameters have been widely addressed. QoS-aware service selection is commonly formulated as an optimization problem aimed at achieving the execution plan that optimize the overall QoS parameter of the composed application while satisfying all the constraints on individual QoS parameters and considering all of the possible execution scenarios. In existing work, execution plans commonly assign one service for each task. For composed applications containing exclusive branches, some tasks may appear in multiple execution scenarios. Unfortunately, since one-fit-all services for these tasks considering every execution scenario are not always available, execution plans have to make compromise. As a result, when some users have strict QoS constraints, feasible execution plans may not exist for the composed application but exist for every execution scenario. This problem becomes more important and challenging for self-adaptive systems, due to the overhead of unwanted runtime adaptations. In this paper, we breaking such one-one mapping between services and tasks. We provide methods to divide all execution scenarios a task involved into exclusive groups (i.e. execution path set partitions) and show that a distinct service can be bound to this task for each group without causing any confusion. In order to find the optimal execution plan, we modify existing MILP based approaches to cooperate with our method. We also evaluate our approach experimentally using real dataset.The results show that it is more flexible, robust to QoS constraints, and can possibly improve the overall QoS associated with the optimal execution plan.","PeriodicalId":309840,"journal":{"name":"Proceedings of the 6th Asia-Pacific Symposium on Internetware on Internetware","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131258105","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}