diff --git a/404.html b/404.html index b4a34b7..4af23f9 100644 --- a/404.html +++ b/404.html @@ -459,6 +459,8 @@
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + +@@ -831,7 +884,7 @@
@@ -899,7 +952,7 @@
diff --git a/index.json b/index.json
index 2970881..b43af45 100644
--- a/index.json
+++ b/index.json
@@ -1 +1 @@
-[{"authors":["admin"],"categories":null,"content":"I am a PhD Student at Zhejiang University, China, under the supervision of my incredible advisor Prof. Dr. Zhipeng Gao and Prof. Dr. Shanping Li. I did my master studies at National University of Defense Technology under the supervision of Prof. Dr. Shanshan Li.\nMy research interests include static analysis, code understanding and mining software repositories.\n","date":1654041600,"expirydate":-62135596800,"kind":"taxonomy","lang":"en","lastmod":1654041600,"objectID":"2525497d367e79493fd32b198b28f040","permalink":"https://zhipengxue97.github.io/authors/admin/","publishdate":"0001-01-01T00:00:00Z","relpermalink":"/authors/admin/","section":"authors","summary":"I am a PhD Student at Zhejiang University, China, under the supervision of my incredible advisor Prof. Dr. Zhipeng Gao and Prof. Dr. Shanping Li. I did my master studies at National University of Defense Technology under the supervision of Prof.","tags":null,"title":"Zhipeng Xue","type":"authors"},{"authors":["Zhipeng Xue","Zhijie Jiang","Chenlin Huang","Rulin Xu","Xiangbing Huang","Liumin Hu"],"categories":null,"content":"","date":1654041600,"expirydate":-62135596800,"kind":"page","lang":"en","lastmod":1654041600,"objectID":"7c90ad6b354615f1cad50153cf0bc97d","permalink":"https://zhipengxue97.github.io/publication/seed-semantic-graph-based-deep-detection-for-type-4-clone/","publishdate":"2022-06-01T00:00:00Z","relpermalink":"/publication/seed-semantic-graph-based-deep-detection-for-type-4-clone/","section":"publication","summary":"Type-4 clones refer to a pair of code snippets with similar semantics but written in different syntax, which challenges the existing code clone detection techniques. Previous studies, however, highly rely on syntactic structures and textual tokens, which cannot precisely represent the semantic information of code and might introduce non-negligible noise into the detection models. To overcome these limitations, we design a novel semantic graph-based deep detection approach, called SEED. For a pair of code snippets, SEED constructs a semantic graph of each code snippet based on intermediate representation to represent the code semantic more precisely compared to the representations based on lexical and syntactic analysis. To accommodate the characteristics of Type-4 clones, a semantic graph is constructed focusing on the operators and API calls instead of all tokens. Then, SEED generates the feature vectors by using the graph match network and performs clone detection based on the similarity among the vectors. Extensive experiments show that our approach significantly outperforms two baseline approaches over two public datasets and one customized dataset. Especially, SEED outperforms other baseline methods by an average of 25.2% in the form of F1-Score. Our experiments demonstrate that SEED can reach state-of-the-art and be useful for Type-4 clone detection in practice.","tags":["Code Clone","Code Understanding","Deep Learning"],"title":"SEED: Semantic Graph Based Deep Detection for Type-4 Clone","type":"publication"},{"authors":["Zhipeng Xue","Yuanliang Zhang","Rulin Xu"],"categories":null,"content":"","date":1652659200,"expirydate":-62135596800,"kind":"page","lang":"en","lastmod":1652659200,"objectID":"6a3d4207439854507b58e3b461ed8629","permalink":"https://zhipengxue97.github.io/publication/clone-based-usage-pattern-mining/","publishdate":"2022-05-16T00:00:00Z","relpermalink":"/publication/clone-based-usage-pattern-mining/","section":"publication","summary":"When programmers retrieve a code method and want to reuse it, they need to understand the usage patterns of the retrieved method. However, it is difficult to obtain usage information of the retrieved method since this method may only have a brief comment and few available usage examples. In this paper, we propose an approach, called LUPIN (cLone-based Usage Pattern mIniNg), to mine the usage patterns of these methods, which do not widely appeared in the code repository. The key idea of LUPIN is that the cloned code of the target method may have a similar usage pattern, and we can collect more usage information of the target method from cloned code usage examples. From the amplified usage examples, we mine the usage pattern of the target method by frequent subsequence mining after program slicing and code normalization. Our evaluation shows that LUPIN can mine four categories of usage patterns with an average precision of 0.65.","tags":["Code Clone","Usage Pattern Mining","Software Repositories Mining"],"title":"Clone-based Code Method Usage Pattern Mining","type":"publication"},{"authors":["Chenglong Zhou","Haoran Liu","Yuanliang Zhang","Zhipeng Xue","Qing Liao","JinJing Zhao","Ji Wang"],"categories":null,"content":"","date":1622505600,"expirydate":-62135596800,"kind":"page","lang":"en","lastmod":1622505600,"objectID":"3bd6da95770c09f71d23cc3b68402856","permalink":"https://zhipengxue97.github.io/publication/deep-understanding-of-runtime-configuration-intention/","publishdate":"2021-06-01T00:00:00Z","relpermalink":"/publication/deep-understanding-of-runtime-configuration-intention/","section":"publication","summary":"The runtime environment and workload of software are constantly changing, requiring users to make appropriate adjustments to accommodate these changes. The runtime configuration, however, as the interface for users to manipulate software behavior often requires domain-specific knowledge to understand. This usually results in users spending a considerable amount of time wading through document and user manuals trying to understand the runtime configuration. In this paper, we study the possibility of understanding the intention of runtime configuration options through their documents, even sometimes it is difficult for users to understand. Based on these studies, we classify the runtime configuration option’s intention into six categories. Accordingly, we design runtime Configuration Intention Classifier (CIC), a supervised approach based on CNN to classify the runtime configuration option’s intention according to its document. CIC integrates the features of runtime configuration names and descriptions according to different levels of granularity and predicts the intention of runtime configuration options accordingly. Extensive experiments show that our approach can achieve an accuracy of 85.6% and outperform nine comparative approaches by up to 16.6% over the dataset we customized.","tags":["Configuration","Deep Learning"],"title":"Deep Understanding of Runtime Configuration Intention","type":"publication"}]
\ No newline at end of file
+[{"authors":["admin"],"categories":null,"content":"I am a PhD Student at Zhejiang University, China, under the supervision of my incredible advisor Prof. Dr. Zhipeng Gao and Prof. Dr. Shanping Li. I did my master studies at National University of Defense Technology under the supervision of Prof. Dr. Shanshan Li.\nMy research interests include static analysis, code understanding and mining software repositories.\n","date":1694390400,"expirydate":-62135596800,"kind":"taxonomy","lang":"en","lastmod":1694390400,"objectID":"2525497d367e79493fd32b198b28f040","permalink":"https://zhipengxue97.github.io/authors/admin/","publishdate":"0001-01-01T00:00:00Z","relpermalink":"/authors/admin/","section":"authors","summary":"I am a PhD Student at Zhejiang University, China, under the supervision of my incredible advisor Prof. Dr. Zhipeng Gao and Prof. Dr. Shanping Li. I did my master studies at National University of Defense Technology under the supervision of Prof.","tags":null,"title":"Zhipeng Xue","type":"authors"},{"authors":["Zhipeng Xue","Zhipeng Gao","Xing Hu","Shanping Li"],"categories":null,"content":"","date":1694390400,"expirydate":-62135596800,"kind":"page","lang":"en","lastmod":1694390400,"objectID":"1ec56c2849da5986a1762ea151088951","permalink":"https://zhipengxue97.github.io/publication/acwrecommender-a-tool-for-validating-actionable-warnings-with-weak-supervision/","publishdate":"2023-09-11T00:00:00Z","relpermalink":"/publication/acwrecommender-a-tool-for-validating-actionable-warnings-with-weak-supervision/","section":"publication","summary":"Static analysis tools have gained popularity among developers for finding potential bugs, but their widespread adoption is hindered by the accomnpanying high false alarm rates (up to 90%). To address this challenge, previous studies proposed the concept of actionable warnings, and apply machine-learning methods to distinguish actionable warnings from false alarms. Despite these efforts, our preliminary study suggests that the current methods used to collect actionable warnings are rather shaky and unreliable, resulting in a large proportion of invalid actionable warnings. In this work, we mined 68,274 reversions from Top-500 Github C repositories to create a substantia actionable warning dataset and assigned weak labels to each warning's likelihood of being a real bug. To automatically identify actionable warnings and recommend those with a high probability of being real bugs (AWHB), we propose a two-stage framework called ACWRecommender. In the first stage, our tool use a pre-trained model, i.e., UniXcoder, to identify actionable warnings from a huge number of SA tool's reported warnings. In the second stage, we rerank valid actionable warnings to the top by using weakly supervised learning. Experimental results showed that our tool outperformed several baselines for actionable warning detection (in terms of F1-score) and performed better for AWHB recommendation (in terms of nDCG and MRR). Additionaly, we also performed an in-the-wild evaluation, we manually validated 24 warnings out of 2,197 reported warnings on 10 randomly selected projects, 22 of which were confirmed by developers as real bugs, demonstrating the practical usage of our tool.","tags":null,"title":"ACWRecommender: A Tool for Validating Actionable Warnings with Weak Supervision","type":"publication"},{"authors":["Zhipeng Xue","Zhijie Jiang","Chenlin Huang","Rulin Xu","Xiangbing Huang","Liumin Hu"],"categories":null,"content":"","date":1654041600,"expirydate":-62135596800,"kind":"page","lang":"en","lastmod":1654041600,"objectID":"7c90ad6b354615f1cad50153cf0bc97d","permalink":"https://zhipengxue97.github.io/publication/seed-semantic-graph-based-deep-detection-for-type-4-clone/","publishdate":"2022-06-01T00:00:00Z","relpermalink":"/publication/seed-semantic-graph-based-deep-detection-for-type-4-clone/","section":"publication","summary":"Type-4 clones refer to a pair of code snippets with similar semantics but written in different syntax, which challenges the existing code clone detection techniques. Previous studies, however, highly rely on syntactic structures and textual tokens, which cannot precisely represent the semantic information of code and might introduce non-negligible noise into the detection models. To overcome these limitations, we design a novel semantic graph-based deep detection approach, called SEED. For a pair of code snippets, SEED constructs a semantic graph of each code snippet based on intermediate representation to represent the code semantic more precisely compared to the representations based on lexical and syntactic analysis. To accommodate the characteristics of Type-4 clones, a semantic graph is constructed focusing on the operators and API calls instead of all tokens. Then, SEED generates the feature vectors by using the graph match network and performs clone detection based on the similarity among the vectors. Extensive experiments show that our approach significantly outperforms two baseline approaches over two public datasets and one customized dataset. Especially, SEED outperforms other baseline methods by an average of 25.2% in the form of F1-Score. Our experiments demonstrate that SEED can reach state-of-the-art and be useful for Type-4 clone detection in practice.","tags":null,"title":"SEED: Semantic Graph Based Deep Detection for Type-4 Clone","type":"publication"},{"authors":["Zhipeng Xue","Yuanliang Zhang","Rulin Xu"],"categories":null,"content":"","date":1652659200,"expirydate":-62135596800,"kind":"page","lang":"en","lastmod":1652659200,"objectID":"6a3d4207439854507b58e3b461ed8629","permalink":"https://zhipengxue97.github.io/publication/clone-based-usage-pattern-mining/","publishdate":"2022-05-16T00:00:00Z","relpermalink":"/publication/clone-based-usage-pattern-mining/","section":"publication","summary":"When programmers retrieve a code method and want to reuse it, they need to understand the usage patterns of the retrieved method. However, it is difficult to obtain usage information of the retrieved method since this method may only have a brief comment and few available usage examples. In this paper, we propose an approach, called LUPIN (cLone-based Usage Pattern mIniNg), to mine the usage patterns of these methods, which do not widely appeared in the code repository. The key idea of LUPIN is that the cloned code of the target method may have a similar usage pattern, and we can collect more usage information of the target method from cloned code usage examples. From the amplified usage examples, we mine the usage pattern of the target method by frequent subsequence mining after program slicing and code normalization. Our evaluation shows that LUPIN can mine four categories of usage patterns with an average precision of 0.65.","tags":null,"title":"Clone-based Code Method Usage Pattern Mining","type":"publication"},{"authors":["Chenglong Zhou","Haoran Liu","Yuanliang Zhang","Zhipeng Xue","Qing Liao","JinJing Zhao","Ji Wang"],"categories":null,"content":"","date":1622505600,"expirydate":-62135596800,"kind":"page","lang":"en","lastmod":1622505600,"objectID":"3bd6da95770c09f71d23cc3b68402856","permalink":"https://zhipengxue97.github.io/publication/deep-understanding-of-runtime-configuration-intention/","publishdate":"2021-06-01T00:00:00Z","relpermalink":"/publication/deep-understanding-of-runtime-configuration-intention/","section":"publication","summary":"The runtime environment and workload of software are constantly changing, requiring users to make appropriate adjustments to accommodate these changes. The runtime configuration, however, as the interface for users to manipulate software behavior often requires domain-specific knowledge to understand. This usually results in users spending a considerable amount of time wading through document and user manuals trying to understand the runtime configuration. In this paper, we study the possibility of understanding the intention of runtime configuration options through their documents, even sometimes it is difficult for users to understand. Based on these studies, we classify the runtime configuration option’s intention into six categories. Accordingly, we design runtime Configuration Intention Classifier (CIC), a supervised approach based on CNN to classify the runtime configuration option’s intention according to its document. CIC integrates the features of runtime configuration names and descriptions according to different levels of granularity and predicts the intention of runtime configuration options accordingly. Extensive experiments show that our approach can achieve an accuracy of 85.6% and outperform nine comparative approaches by up to 16.6% over the dataset we customized.","tags":null,"title":"Deep Understanding of Runtime Configuration Intention","type":"publication"}]
\ No newline at end of file
diff --git a/index.xml b/index.xml
index 3724f57..87d051a 100644
--- a/index.xml
+++ b/index.xml
@@ -5,13 +5,21 @@
https://zhipengxue97.github.io/
Static analysis tools have gained popularity among developers for finding potential bugs, but their widespread adoption is hindered by the accomnpanying high false alarm rates (up to 90%). To address this challenge, previous studies proposed the concept of actionable warnings, and apply machine-learning methods to distinguish actionable warnings from false alarms. Despite these efforts, our preliminary study suggests that the current methods used to collect actionable warnings are rather shaky and unreliable, resulting in a large proportion of invalid actionable warnings. In this work, we mined 68,274 reversions from Top-500 Github C repositories to create a substantia actionable warning dataset and assigned weak labels to each warning’s likelihood of being a real bug. To automatically identify actionable warnings and recommend those with a high probability of being real bugs (AWHB), we propose a two-stage framework called ACWRecommender. In the first stage, our tool use a pre-trained model, i.e., UniXcoder, to identify actionable warnings from a huge number of SA tool’s reported warnings. In the second stage, we rerank valid actionable warnings to the top by using weakly supervised learning. Experimental results showed that our tool outperformed several baselines for actionable warning detection (in terms of F1-score) and performed better for AWHB recommendation (in terms of nDCG and MRR). Additionaly, we also performed an in-the-wild evaluation, we manually validated 24 warnings out of 2,197 reported warnings on 10 randomly selected projects, 22 of which were confirmed by developers as real bugs, demonstrating the practical usage of our tool.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -626,7 +694,7 @@
@@ -702,7 +770,7 @@
diff --git a/publication/index.xml b/publication/index.xml
index 46650e4..94dd1db 100644
--- a/publication/index.xml
+++ b/publication/index.xml
@@ -5,13 +5,21 @@
https://zhipengxue97.github.io/publication/
ACWRecommender: A Tool for Validating Actionable Warnings with Weak Supervision
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Abstract
+ Abstract
-
-
diff --git a/publication/deep-understanding-of-runtime-configuration-intention/index.html b/publication/deep-understanding-of-runtime-configuration-intention/index.html
index d435d86..0efa9fc 100644
--- a/publication/deep-understanding-of-runtime-configuration-intention/index.html
+++ b/publication/deep-understanding-of-runtime-configuration-intention/index.html
@@ -673,14 +673,6 @@ Abstract
-
-
diff --git a/publication/index.html b/publication/index.html
index 6c52850..8c412c2 100644
--- a/publication/index.html
+++ b/publication/index.html
@@ -237,7 +237,7 @@
-
+
@@ -487,6 +487,9 @@ Publications
+
+
+
Publications
+
+
@@ -534,6 +541,67 @@ Publications
+ Publications
(2022).
SEED: Semantic Graph Based Deep Detection for Type-4 Clone.
- In ICSR 2022.
+ In ICSR 2022(CCF-C).
Publications
(2022).
Clone-based Code Method Usage Pattern Mining.
- In ICPC 2022(ERA).
+ In ICPC 2022(ERA Track, CCF-B).
Publications
(2021).
Deep Understanding of Runtime Configuration Intention.
- In IJSEKE.
+ In IJSEKE(CCF-C).
Abstract
-
-
@@ -699,17 +689,6 @@ Abstract
-
-
diff --git a/publication_types/1/index.html b/publication_types/1/index.html
index a2f042c..71faa78 100644
--- a/publication_types/1/index.html
+++ b/publication_types/1/index.html
@@ -237,7 +237,7 @@
-
+
@@ -478,6 +478,18 @@ 1
+ ACWRecommender: A Tool for Validating Actionable Warnings with Weak Supervision
+ SEED: Semantic Graph Based Deep Detection for Type-4 Clone
Tags
-
-
-
- Code Clone
- Code Understanding
- Deep Learning
- Software Repositories Mining
- Usage Pattern Mining
- Configuration
-