Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Tekfei committed May 29, 2020
1 parent 753279a commit f6beec8
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 8 deletions.
11 changes: 7 additions & 4 deletions GithubApp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,22 @@ If you want to use the githubApp service, you need to create a githubApp by your

### Configure

This server call the RevisionAnalyzer componect to initialize your repository. You need to edit the initUrl and UpdateUrl to use the RevisionAnalyzer component in file [HandleIssueServiceImpl.java](./src/main/java/com/githubApp/service/impl/HandleIssueServiceImpl.java). These parameters refer to the location your analyzer service layed out.
This server calls the RevisionAnalyzer componect to initialize your repository. You need to edit the initUrl and UpdateUrl to use the RevisionAnalyzer component in file [HandleIssueServiceImpl.java](./src/main/java/com/githubApp/service/impl/HandleIssueServiceImpl.java). These parameters refer to the location your analyzer service layed out.

Before use the Matcher and Learner component, you need to edit the resultUrl in file [HandleIssueServiceImpl](./src/main/java/com/githubApp/service/impl/HandleIssueServiceImpl.java). This url should be the same with the ip of the callback url of your githubApp.

Also you need to change the IP and Port in [LocateBugServiceImpl](./src/main/java/com/githubApp/service/impl/LocateBugServiceImpl.java). These parameters refer the location where your bug locator service layed out.


## GithubApp snapshot
Our githubApp has be implemented. If you want to use it, you can contact us.
### Initialization
You should authorize GithubApp to access the repository at first.
The past commits and bug reports will be used to train the model of BugPecker.
Depends on the size of your repository, the initialization may take several minutes.
You should authorize GithubApp to access the repository at first. The past commits and bug reports will be used to train the model of BugPecker. Depends on the size of your repository, the initialization may take several minutes.

As figure 1 shows, statistics of your repository are available after the initialization.
![avatar](https://raw.githubusercontent.com/Tekfei/test/master/init.png)
### Bug Localization
You need to assign your issue a bug label and the corresponding commitId for a new bug report by default is the latest commitId in master branch. If you want to assign a sepcific commitId, you should write in the title in the form of "&commitId:……".

BugPecker will be triggered automatically and comment the bug report with suspicious buggy code.
![avatar](https://raw.githubusercontent.com/Tekfei/test/master/result.png)
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
# BugPecker
BugPecker: Locating Faulty Methods with Deep Learning on Revision Graphs

## Github plugin

We have implemented the BugPecker tool as a Github plugin in Java. After submitting a bug report in the Github issue system, programmers could get ranked suspicious buggy methods later from BugPecker. Our github plugin is available [here](https://github.com/apps/bugpecker), which presents more detailed information and user guide about the Github plugin. You are recommended to create your own githubApp with the code we provide. If you want to use our plugin, you need to contact us before.

## Introduction
<img src="./arc.png" alt="arc.png" style="zoom:30%;" />

Expand All @@ -25,3 +21,7 @@ The revision analyzer, a component of BugPecker, builds revision graphs from com
The Semantic matcher and the Learner are both components of BugPecker. Thr former calculates the semantic similarity between a method and a bug report and passes the semantic matching score to the Learner. The Learner
combines the semantic mathing score and the other three kinds of scores(bug fixing recency score, bug fixing frequency score, collaborative filtering score) to select the possible buggy methods from repository and rank them
by supocious score. More implementation details is available [here](https://github.com/RAddRiceee/BugPecker/tree/master/MatcherAndLearner).

## Github plugin

We have implemented the BugPecker tool as a Github plugin in Java. After submitting a bug report in the Github issue system, programmers could get ranked suspicious buggy methods later from BugPecker. You are recommended to create your own githubApp with the code we provide. If you want to use our plugin, you can contact us.

0 comments on commit f6beec8

Please sign in to comment.