Class: DailyWipByParentChart

Inherits:
DailyWipChart show all
Defined in:
lib/jirametrics/daily_wip_by_parent_chart.rb

Constant Summary

Constants inherited from ChartBase

ChartBase::LABEL_POSITIONS

Instance Attribute Summary

Attributes inherited from DailyWipChart

#possible_statuses

Attributes inherited from ChartBase

#aggregated_project, #all_boards, #atlassian_document_format, #board_id, #canvas_height, #canvas_width, #data_quality, #date_range, #file_system, #fix_versions, #holiday_dates, #issues, #settings, #time_range, #timezone_offset, #x_axis_title, #y_axis_title

Instance Method Summary collapse

Methods inherited from DailyWipChart

#add_trend_line, #configure_rule, #group_issues_by_active_dates, #grouping_rules, #initialize, #make_data_set, #run, #select_possible_rules, #trend_line_data_set

Methods inherited from ChartBase

#aggregated_project?, #before_run, #call_before_run, #canvas, #canvas_responsive?, #chart_format, #collapsible_issues_panel, #color_block, #color_for, #completed_issues_in_range, #current_board, #cycletime, #cycletime_for_issue, #daily_chart_dataset, #date_annotation, #describe_non_working_days, #description_text, #format_integer, #format_status, #header_text, #holidays, #html_directory, #icon_span, #initialize, #label_days, #label_hours, #label_issues, #label_minutes, #link_to_issue, #next_id, #normalize_annotation_datetime, #not_visible_text, #random_color, #render, #render_axis_title, #render_top_text, #seam_end, #seam_start, #stagger_label_positions, #status_category_color, #to_human_readable, #working_days_annotation, #wrap_and_render

Constructor Details

This class inherits a constructor from DailyWipChart

Instance Method Details

#default_description_textObject



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/jirametrics/daily_wip_by_parent_chart.rb', line 10

def default_description_text
  <<-HTML
    <div class="p">
      How much work is in progress, grouped by the parent of the issue. This will give us an
      indication of how focused we are on higher level objectives. If there are many parent
      tickets in progress at the same time, either this team has their focus scattered or we
      aren't doing a good job of
      <a href="https://improvingflow.com/2024/02/21/slicing-epics.html">splitting those parent
      tickets</a>. Neither of those is desirable.
    </div>
    <div class="p">
      The #{color_block '--body-background'} shading at the top shows items that don't have a parent
      at all.
    </div>
    #{describe_non_working_days}
  HTML
end

#default_grouping_rules(issue:, rules:) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/jirametrics/daily_wip_by_parent_chart.rb', line 28

def default_grouping_rules issue:, rules:
  parent = issue.parent
  if parent
    rules.label = parent.key
    rules.label_hint = "#{parent.key} : #{parent.summary}"
  else
    rules.label = 'No parent'
    rules.label_hint = 'No parent'
    rules.group_priority = 1000
    rules.color = '--body-background'
  end
end

#default_header_textObject



6
7
8
# File 'lib/jirametrics/daily_wip_by_parent_chart.rb', line 6

def default_header_text
  'Daily WIP, grouped by the parent ticket (Epic, Feature, etc)'
end