Моделирование функционирования программной системы

Вариант 1. Диаграмма классов

Отражает статические связи между основными сущностями системы с учетом наследования средств отображения.

classDiagram
    class AbstractDataViewer {
        <<abstract>>
        +viewData()
    }
    class TabularViewer {
        +viewData()
    }
    class GraphicalViewer {
        +viewData()
    }
    class Table {
        +data
        +insertData()
        +updateData()
    }
    class Operator {
        +inputData(Table)
        +fixData(Table)
    }
    class Controller {
        +monitorOperator(Operator)
        +viewTabularData(TabularViewer)
        +issueCorrectionCommand(Operator)
    }
    class Analyst {
        +analyzeData(Table)
        +viewGraphicalData(GraphicalViewer)
        +makeManagementDecision()
    }

    AbstractDataViewer <|-- TabularViewer
    AbstractDataViewer <|-- GraphicalViewer
    Operator --> Table : Вводит данные
    Controller --> Operator : Контролирует/Командует
    Controller --> TabularViewer : Просматривает
    Analyst --> Table : Анализирует
    Analyst --> GraphicalViewer : Просматривает

Вариант 2. Диаграмма состояний оператора

Отражает жизненный цикл работы оператора с данными.

stateDiagram-v2
    [*] --> Ожидание
    Ожидание --> Ввод_данных : Поступление задачи
    Ввод_данных --> Ожидание_проверки : Данные введены
    Ожидание_проверки --> Исправление_данных : Получена команда от контролера
    Исправление_данных --> Ожидание_проверки : Ошибки устранены
    Ожидание_проверки --> [*] : Данные подтверждены

Вариант 3. Диаграмма состояний контролера

Отражает реакцию контролера на вводимые данные.

stateDiagram-v2
    [*] --> Ожидание
    Ожидание --> Мониторинг_оператора : Старт сессии
    Мониторинг_оператора --> Просмотр_таблиц : Данные обновлены
    Просмотр_таблиц --> Выдача_команды : Обнаружены некорректные данные
    Выдача_команды --> Мониторинг_оператора : Ожидание исправления
    Просмотр_таблиц --> [*] : Данные корректны

Вариант 4. Диаграмма состояний аналитика

Отражает переход аналитика в специфическое состояние при обнаружении аномалий.

stateDiagram-v2
    [*] --> Ожидание
    Ожидание --> Анализ_данных : Инициация анализа
    Анализ_данных --> Просмотр_графиков : Запрос визуализации
    Просмотр_графиков --> Выработка_управленческих_решений : Обнаружены нештатные данные
    Выработка_управленческих_решений --> [*] : Решение принято
    Просмотр_графиков --> [*] : Данные в норме

Вариант 5. Диаграмма деятельности оператора

Отражает алгоритм действий оператора.

flowchart TD
    Start((Начало)) --> Input[Ввод табличных данных]
    Input --> Wait[Ожидание проверки контролером]
    Wait --> Check{Данные корректны?}
    Check -- Нет --> Fix[Исправление данных]
    Fix --> Wait
    Check -- Да --> End(((Конец)))

Вариант 6. Диаграмма деятельности контролера

Отражает алгоритм проверки и возврата данных.

flowchart TD
    Start((Начало)) --> Monitor[Контроль работы оператора]
    Monitor --> View[Просмотр данных в табличном виде]
    View --> Check{Есть некорректные данные?}
    Check -- Да --> Command[Выдача команды на исправление]
    Command --> Monitor
    Check -- Нет --> Accept[Утверждение данных]
    Accept --> End(((Конец)))

Вариант 7. Диаграмма деятельности аналитика

Отражает алгоритм аналитики и принятия решений.

flowchart TD
    Start((Начало)) --> Analyze[Анализ данных]
    Analyze --> View[Просмотр данных в графическом виде]
    View --> Check{Есть нештатные данные?}
    Check -- Да --> Decide[Выработка управленческих решений]
    Decide --> End(((Конец)))
    Check -- Нет --> End

Вариант 8. Диаграмма сотрудничества (Кооперации)

Отражает граф взаимодействия экземпляров объектов и порядок передачи сообщений.

flowchart LR
    OP((1: Оператор))
    CO((2: Контролер))
    AN((3: Аналитик))
    TB[4: Таблица]
    TV[5: Табличное отображение]
    GV[6: Графическое отображение]

    OP -->|"1: Ввод данных"| TB
    CO -->|"2: Контроль работы"| OP
    CO -->|"3: Просмотр"| TV
    CO -->|"4: Команда на исправление"| OP
    AN -->|"5: Анализ"| TB
    AN -->|"6: Просмотр графики"| GV
    AN -->|"7: Выработка решений"| AN

Вариант 9. Диаграмма последовательности

Отражает временную шкалу вызовов методов и процессов между сущностями.

sequenceDiagram
    actor OP as Оператор
    participant TB as Таблица
    actor CO as Контролер
    participant TV as Табличное отображение
    actor AN as Аналитик
    participant GV as Графическое отображение

    OP->>TB: Ввод табличных данных
    CO->>OP: Контроль работы оператора
    CO->>TV: Запрос просмотра данных
    TV-->>CO: Данные в табличном виде
    
    alt Данные некорректны
        CO->>OP: Команда исправить данные
        OP->>TB: Исправление данных
    end

    AN->>TB: Анализ данных
    AN->>GV: Запрос графического просмотра
    GV-->>AN: Данные в графическом виде
    
    alt Нештатные данные
        AN->>AN: Переход в состояние выработки управленческих решений
    end