У вас почти каждое состояние является однозначным результатом предшествующего действия. Поскольку сценарий линейный, никакой дополнительной информации эти состояния не несут, и если диаграмма не предназначена для автоматизации или для дальнейшего анализа, я бы их смело выкинул.
Если между состояниями возможны другие пути перехода, то имеет смысл сделать из них отдельную диаграмму состояний.
А ещё создаётся впечатление, что это приложение всегда работает с одними и теми же данными: после запуска читает их из одних и тех же источников, строит из них одни и те же графические модели, и только после этого появляется человек, которому предоставляется единственная возможность: настроить фильтры и посмотреть, что получится.
Если не получилось то, что нужно, - запускай приложение по новой, считывай данные, строй модели, и так по кругу.
А вообще, ваш случай прекрасно ложится на область применения
VISIC Сценарий взаимодействия можно изобразить
схемой "бассейн", состояния и переходы -
схемой "гирлянда".