GerritCodeReview / egit-github
Conditional Complexity

The distribution of complexity of units (measured with McCabe index).

Intro
  • Conditional complexity (also called cyclomatic complexity) is a term used to measure the complexity of software. The term refers to the number of possible paths through a program function. A higher value ofter means higher maintenance and testing costs (infosecinstitute.com).
  • Conditional complexity is calculated by counting all conditions in the program that can affect the execution path (e.g. if statement, loops, switches, and/or operators, try and catch blocks...).
  • Conditional complexity is measured at the unit level (methods, functions...).
  • Units are classified in four categories based on the measured McCabe index: 1-5 (simple units), 6-10 (medium complex units), 11-25 (complex units), 26+ (very complex units).
Learn more...
Conditional Complexity Overall
  • There are 2,027 units with 13,171 lines of code in units (71.4% of code).
    • 0 very complex units (0 lines of code)
    • 2 complex units (119 lines of code)
    • 10 medium complex units (460 lines of code)
    • 52 simple units (1,616 lines of code)
    • 1,963 very simple units (10,976 lines of code)
0% | <1% | 3% | 12% | 83%
Legend:
51+
26-50
11-25
6-10
1-5
Alternative Visuals
Conditional Complexity per Extension
51+
26-50
11-25
6-10
1-5
java0% | <1% | 3% | 12% | 83%
Conditional Complexity per Logical Component
primary logical decomposition
51+
26-50
11-25
6-10
1-5
org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/client0% | 7% | 4% | 24% | 64%
org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui0% | 1% | 6% | 22% | 70%
org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core0% | 0% | 11% | 19% | 69%
org.eclipse.egit.github.core/src/org/eclipse/egit/github/core0% | 0% | <1% | <1% | 99%
org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/service0% | 0% | 0% | 6% | 93%
org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/util0% | 0% | 0% | 18% | 81%
org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/event0% | 0% | 0% | 0% | 100%
Most Complex Units
Top 20 most complex units
Unit# linesMcCabe index# params
public Event deserialize()
in org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/client/EventFormatter.java
60 27 3
public Object execute()
in org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/gist/CreateGistHandler.java
59 26 1
public PageLinks()
in org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/client/PageLinks.java
34 15 1
public void setVisible()
in org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/RepositorySelectionWizardPage.java
68 13 1
public RepositoryResponse postTaskData()
in org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueTaskDataHandler.java
47 12 4
public String getColumnText()
in org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/gist/GistAttachmentTableLabelProvider.java
30 12 2
public void taskActivated()
in org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/pr/PullRequestContextSynchronizer.java
47 12 1
public Object execute()
in org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/pr/CheckoutPullRequestHandler.java
82 12 1
public static RepositoryId createFromId()
in org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/RepositoryId.java
16 11 1
public IStatus performQuery()
in org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueConnector.java
57 11 5
protected void updateLabels()
in org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueTaskDataHandler.java
34 11 7
public RepositoryResponse postTaskData()
in org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/pr/PullRequestTaskDataHandler.java
45 11 4
public Collection next()
in org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/client/PageIterator.java
36 10 0
private Map createParams()
in org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/service/MilestoneService.java
33 10 2
private String generateSummary()
in org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/gist/GistTaskDataHandler.java
37 10 3
protected boolean isError()
in org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/client/GitHubClient.java
15 9 1
public void createControl()
in org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/gist/GistRepositoryQueryPage.java
42 9 1
public Object execute()
in org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/pr/MergePullRequestHandler.java
55 9 1
public Object execute()
in org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/pr/RebasePullRequestHandler.java
56 9 1
protected String format()
in org.eclipse.egit.github.core/src/org/eclipse/egit/github/core/client/RequestException.java
22 8 1