public static CycleTimeColumn buildCycleTimeColumnFromWorkItem(WorkItem workItem) {
    List<String> phases = workItem.getType().getPhases();
    List<String> phasesAfterInitialPhase = phases.subList(1, phases.size());

    CycleTimeColumn column = new CycleTimeColumn(Integer.toString(workItem.getId()));

    LocalDate previousDate = null;
    String previousPhase = null;
    for (String phase : phasesAfterInitialPhase) {
      LocalDate date = dateWhenPhaseWasCompleted(workItem, phase);
      if (previousDate != null && previousPhase != null) {
        int diffInDays = WorkingDayUtils.getWorkingDaysBetween(previousDate, date);
        column.addFragment(previousPhase, diffInDays);
      }
      previousDate = date;
      previousPhase = phase;
    }
    return column;
  }