Changjing Wang, Fan Xu, Haimei Luo, Qing Huang, Z. Zuo
{"title":"Development Method of Three Kinds of Typical Tree Structure Algorithms and Isabelle-based Machine Assisted Verification","authors":"Changjing Wang, Fan Xu, Haimei Luo, Qing Huang, Z. Zuo","doi":"10.1109/QRS51102.2020.00043","DOIUrl":"https://doi.org/10.1109/QRS51102.2020.00043","url":null,"abstract":"The tree structure algorithms have been widely used in many computer fields. Developing efficient and reliable tree structure algorithms is a challenging problem in the field of software formalization and trusted software. In this paper, initially, the binary tree algorithms are divided into three kinds through induction of the loop invariant structures and output features. Then, PAR method can conveniently develop loop invariants and corresponding non-recursive algorithm programs. Finally, Isabelle is used to formally verify these developed algorithms. This development method not only overcomes the tediousness and error-proneness of traditional manual verification, but also greatly improves the efficiency and reliability of the developed algorithm program. To the best of our knowledge, this is the maiden attempt in the literature to verify a series of non-recursive and efficient binary tree algorithms. The above process forms a theorem proving library that include data types, data structures and lemma related binary tree algorithms, which can significantly reduce the cost of future verification.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130445404","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}
Shuaibing Lu, Xiaohui Kuang, Yuanping Nie, Zhechao Lin
{"title":"A Hybrid Interface Recovery Method for Android Kernels Fuzzing","authors":"Shuaibing Lu, Xiaohui Kuang, Yuanping Nie, Zhechao Lin","doi":"10.1109/QRS51102.2020.00052","DOIUrl":"https://doi.org/10.1109/QRS51102.2020.00052","url":null,"abstract":"Android kernel fuzzing is a research area of interest specifically for detecting kernel vulnerabilities which may allow attackers to obtain the root privilege. The number of Android mobile phones is increasing rapidly with the explosive growth of Android kernel drivers. Interface aware fuzzing is an effective technique to test the security of kernel driver. Existing researches rely on static analysis with kernel source code. However, in fact, there exist millions of Android mobile phones without public accessible source code. In this paper, we propose a hybrid interface recovery method for fuzzing kernels which can recover kernel driver interface no matter the source code is available or not. In white box condition, we employ a dynamic interface recover method that can automatically and completely identify the interface knowledge. In black box condition, we use reverse engineering to extract the key interface information and use similarity computation to infer argument types. We evaluate our hybrid algorithm on on 12 Android smartphones from 9 vendors. Empirical experimental results show that our method can effectively recover interface argument lists and find Android kernel bugs. In total, 31 vulnerabilities are reported in white and black box conditions. The vulnerabilities were responsibly disclosed to affected vendors and 9 of the reported vulnerabilities have been already assigned CVEs.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"47 43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134639445","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":"Architecture for the Automation of Live Testing of Cloud Systems","authors":"Oussama Jebbar, F. Khendek, M. Toeroe","doi":"10.1109/QRS51102.2020.00030","DOIUrl":"https://doi.org/10.1109/QRS51102.2020.00030","url":null,"abstract":"Live testing is performed in the production environment. In such environment, test activities have to be orchestrated properly to avoid interferences with normal usage traffic. Conducting live testing activities manually is error prone because of the size and the complexity of the system as well as the required complex orchestration of different tasks. Furthermore, it would be impossible to react to failures and contain them in due time without automation. Live testing requires a high level of automation. This automation comes with several challenges especially in contexts such as cloud and zero touch networks because of the diversity of the software composing them. In this paper we discuss the challenges of automating live testing for cloud systems. We propose an architecture that relies on a modeling framework to decouple the specification of testing activities from the platforms needed to conduct them. We propose a solution for conducting testing activities on a live system according to such a specification.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"92 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115672025","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}
Wenjun Ke, Chao Wu, Xiufeng Fu, Chen Gao, Yinyi Song
{"title":"Interpretable Test Case Recommendation based on Knowledge Graph","authors":"Wenjun Ke, Chao Wu, Xiufeng Fu, Chen Gao, Yinyi Song","doi":"10.1109/QRS51102.2020.00068","DOIUrl":"https://doi.org/10.1109/QRS51102.2020.00068","url":null,"abstract":"Reproducing bugs and identifying causes is essential for the debugging of complex software systems. However, existing test case selection and recommendation technique diagnose bugs but failed to provide information to understand the cause. In this paper, we present an interpretable test case recommendation technique by building up knowledge graphs based on massive test cases, bug reports, code changes, and documents stored in software repositories. Specifically, it identifies correlations between new issue reports and historical information based on the knowledge graph and thus present test cases and corresponding documents to support the bug diagnosis. We conduct an empirical study on autonomous driving systems to show our technique is capable of identifying the proper test case. Further, we validate the effectiveness of recommended interpretation. The study shows that the recommended interpretation can help testers to comprehend bug reports and diagnose bugs efficiently.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124151059","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":"Simplified Deep Forest Model based Just-In-Time Defect Prediction for Android Mobile Apps","authors":"Kunsong Zhao, Zhou Xu, Tao Zhang, Yutian Tang","doi":"10.1109/QRS51102.2020.00039","DOIUrl":"https://doi.org/10.1109/QRS51102.2020.00039","url":null,"abstract":"The popularity of mobile devices has led to an explosive growth in the number of mobile apps in which Android mobile apps are the mainstream. Android mobile apps usually undergo frequent update due to new requirements proposed by users. Just-In-Time (JIT) defect prediction is appropriate for this scenario for quality assurance because it can provide timely feedback by determining whether a new code commit will introduce defects into the apps. As defect prediction performance usually relies on the quality of the data representation and the used classification model, in this work, we modify a state-of-the-art model, called Simplified Deep Forest (SDF) to conduct JIT defect prediction for Android mobile apps. This method uses a cascade structure with ensemble forests for representation learning and classification. We conduct experiments on 10 Android mobile apps and experimental results show that SDF performs significantly better than comparative methods in terms of three performance indicators.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127120256","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":"Reliability Evaluation of FPGA with Common Cause Failure in Multi-Phase Mission","authors":"Qi Shao, Shunkun Yang, Chong Bian, Xiaodong Gou","doi":"10.1109/QRS51102.2020.00049","DOIUrl":"https://doi.org/10.1109/QRS51102.2020.00049","url":null,"abstract":"As an important part of space electronic system, static random-access memory (SRAM)-based field-programmable gate arrays (FPGAs) are inevitably affected by single-event upsets caused by space radiation. Although triple-modular redundancy, as one of the main mitigation strategies, plays an important role in improving the system reliability, the common cause failure (CCF) in redundant components is still one of the factors threatening the system reliability. In addition, CCF increases the complexity of reliability analysis when considering the implementation of phased mission. We propose an effective method to incorporate CCF into the reliability analysis of the phased-mission system (PMS). Based on the continuous-time Markov chain and multiple beta factor theory, we establish the dynamic behavior model of the system considering CCF under single-phase condition, and realize the transformation of multi-phase tasks based on the Erlang distribution. Our method can be easily implemented in PRISM, a probabilistic model checker, in which various properties of the system can be automatically verified. The analysis and discussion of this paper can provide useful insights for relevant researchers and realize automatic reliability analysis.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127475735","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":"Mutation Testing for Artificial Neural Networks: An Empirical Evaluation","authors":"Lorenz Klampfl, Nour Chetouane, F. Wotawa","doi":"10.1109/QRS51102.2020.00054","DOIUrl":"https://doi.org/10.1109/QRS51102.2020.00054","url":null,"abstract":"Testing AI-based systems and especially when they rely on machine learning is considered a challenging task. In this paper, we contribute to this challenge considering testing neural networks utilizing mutation testing. A former paper focused on applying mutation testing to the configuration of neural networks leading to the conclusion that mutation testing can be effectively used. In this paper, we discuss a substantially extended empirical evaluation where we considered different test data and the source code of neural network implementations. In particular, we discuss whether a mutated neural network can be distinguished from the original one after learning, only considering a test evaluation. Unfortunately, this is rarely the case leading to a low mutation score. As a consequence, we see that the testing method, which works well at the configuration level of a neural network, is not sufficient to test neural network libraries requiring substantially more testing effort for assuring quality.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117072067","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":"Message from the Steering Committee Chairs and General Chairs","authors":"","doi":"10.1109/qrs51102.2020.00005","DOIUrl":"https://doi.org/10.1109/qrs51102.2020.00005","url":null,"abstract":"The conference provides a platform for experts and scholars from all over the world to exchange and share their latest research and application results in the field of software quality, reliability, and security. It gives practitioners an opportunity to express their needs so that the academic community can better understand the challenges critical to the software industry and propose potential solutions.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122070836","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":"RTPDroid: Detecting Implicitly Malicious Behaviors Under Runtime Permission Model","authors":"Jie Zhang, Cong Tian, Zhenhua Duan, Liang Zhao","doi":"10.1109/QRS51102.2020.00027","DOIUrl":"https://doi.org/10.1109/QRS51102.2020.00027","url":null,"abstract":"In Android 6.0 and above, Install-time Permission Model is replaced with Runtime Permission Model (RPM) where permission requesting is performed at runtime, rather than at install-time, to protect users' privacy. RPM brings certain benefits to security, but still has drawbacks that are exploitable by malware. The permission could be attained under a reasonable context and then be freely used under another context for executing malicious behavior without notifying users. In addition, RPM may cause bugs when developers forget to add permission checking before using the permission. Motivated by these problems, we propose RTPDroid, an approach to the detection of implicitly malicious behaviors and bugs brought by RPM. In this approach, these implicitly malicious behaviors and bugs are defined formally. Then, notions of user-aware contexts as well as user-aware call graphs are utilized for the detection. Experiments on 221 real-world apps reveal 131 bugs and 174 implicitly malicious behaviors under RPM.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"170 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114492045","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":"How Well Just-In-Time Defect Prediction Techniques Enhance Software Reliability?","authors":"Yuli Tian, Ning Li, J. Tian, Wei Zheng","doi":"10.1109/QRS51102.2020.00038","DOIUrl":"https://doi.org/10.1109/QRS51102.2020.00038","url":null,"abstract":"Many Just-In-Time defect prediction (JIT) techniques, which anticipate defect-prone software changes, have been proposed in recent years. Researchers have evaluated these techniques from different perspectives and have drawn inconsistent conclusions about which JIT defect prediction techniques are the most effective and efficient. This paper evaluates JIT techniques from a reliability perspective. For short-term early evaluation, we measure JIT predictive performance on early exposed defects. While for long-term evaluation, we quantify the overall reliability improvement resulted from JIT. A case study applying 11 state-of-the-art JIT methods on 18 large open-source projects has shown: 1) Different JIT methods have their own individual strengths for different purposes, 2) in general, RandomForest is the most effective method in short-term software reliability improvement, and CBS+ performs best in long-term reliability improvement; 3) JIT prediction accuracy is highly correlated to overall reliability improvement.","PeriodicalId":301814,"journal":{"name":"2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132705336","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}