Class: ChurnAnalyzer
Constant Summary
collapse
- COLUMNS =
%w{times_changed}
Instance Method Summary
collapse
#average, #identity, #percentile, #present, #sum
Instance Method Details
#columns ⇒ Object
6
7
8
|
# File 'lib/base/churn_analyzer.rb', line 6
def columns
COLUMNS
end
|
#generate_records(data, table) ⇒ Object
27
28
29
30
31
32
33
34
35
36
|
# File 'lib/base/churn_analyzer.rb', line 27
def generate_records(data, table)
return if data==nil
Array(data[:changes]).each do |change|
table << {
"metric" => :churn,
"times_changed" => change[:times_changed],
"file_path" => change[:file_path]
}
end
end
|
#name ⇒ Object
10
11
12
|
# File 'lib/base/churn_analyzer.rb', line 10
def name
:churn
end
|
#reduce(scores) ⇒ Object
18
19
20
|
# File 'lib/base/churn_analyzer.rb', line 18
def reduce(scores)
ScoringStrategies.sum(scores)
end
|
#score(metric_ranking, item) ⇒ Object
22
23
24
25
|
# File 'lib/base/churn_analyzer.rb', line 22
def score(metric_ranking, item)
flat_churn_score = 0.50
metric_ranking.scored?(item) ? flat_churn_score : 0
end
|