private void perform(DependencyAnalysisResult result, @NotNull ProgressIndicator indicator) {
    try {
      PerformanceWatcher.Snapshot snapshot = PerformanceWatcher.takeSnapshot();
      for (AnalysisScope scope : myScopes) {
        result.addBuilder(createDependenciesBuilder(scope));
      }
      for (DependenciesBuilder builder : result.getBuilders()) {
        builder.analyze();
      }
      bgtPostAnalyze(result);
      snapshot.logResponsivenessSinceCreation("Dependency analysis");
    }
    catch (IndexNotReadyException e) {
      DumbService.getInstance(myProject).showDumbModeNotificationForFunctionality(
        CodeInsightBundle.message("analyze.dependencies.not.available.notification.indexing"), DumbModeBlockedFunctionality.PackageDependencies);
      throw new ProcessCanceledException();
    }
  }
private void perform(DependencyAnalysisResult result, @NotNull ProgressIndicator indicator)