Skip to content
LsFurkat edited this page Jan 23, 2020 · 31 revisions

Тема ВКР: Разработка программного модуля перераспределения ресурсов SQL сервера.

Объект исследования: Управление ресурсами SQL Server.

Предмет исследования: Механизмы работы групп рабочей нагрузки по сортировке.

Процессы верхнего уровня:

  • А0 Сортировка и обработка данных
  • А1 Поставить задачу
  • А2 Подготовка
  • А3 Обработка и сортировка данных
  • А4 Контроль

    Точка зрения: Руководитель

    Цели моделирования: Демонстрация увеличения скорости сортировки и уменьшение рабочей нагрузки на сервер SQL.

    Контекстная диаграмма А0 "Сортировка и обработка данных":


    none

    Декомпозиция блока А0 "Сортировка и обработка данных":


    none

    Декомпозиция блока А1 "Поставить задачу":


    none


    Определение основных средств автоматизации:

  • Определение конфигурации технических средств - ПК.
  • Определение конфигурации программных средств - одноуровневая.
  • Определение допустимых видов хранилищ и их размещения - память устройства.

    Декомпозиция блока А3 "Обработка и сортировка данных" в IDEF0:


    none

    Декомпозиция блока А32 "Выполнение модуля перераспределения ресурсов sql сервера" в DFD:


    none

    Декомпозиция блока А4 "Контроль" в DFD:


    none

    Файл развёрнутой модели

    ER-Диаграмма (диаграммы классов без атрибутов) для всех потоков


    none
    UML-код диаграммы потоков

    ER-Диаграмма (диаграммы классов без атрибутов) для всех ролей


    none
    UML-код диаграммы ролей

    ER-Диаграмма (диаграммы классов без атрибутов) для всех модулей


    none
    UML-код диаграммы модулей

    Расчетная часть

    Определение числовых показателей для цели потенциального проекта автоматизации

    Данный модуль предназначен для сотрудников компании. Модуль позволит снизить нагрузку на SQL сервер и за те же затраты получить машину, способную намного быстрее сортировать данные по различным входным параметрам, которые вводит сотрудник.

    Без системы:

    Предположим что SQL сервер сейчас на максимальной нагрузке, но при этом руководитель попросил выгрузить 400 тысяч заявок из истории компании с сортировкой по двум полям (напомню иногда сортировка занимает 60% времени всего запроса). Тогда SQL сервер будет перегружен и выполнять свою основную задачу (проверять и пропускать заявки) будет с большей задержкой, из-за чего они будут накапливаться и ухудшать работу системы. Тогда выгрузка с 400 тысячами заявок выполнится скажем за 8 часов. В год руководитель просит 30 таких выгрузок, получаем 8*30 = 240 часов при том, что мы так же тормозим основную работу.

    С системой:

    При расчёте с данным модулем, мы получаем машину с железом намного сильнее, не надо тратиться на SQL лицензию каждого ядра процессора, тогда мы уменьшим нагрузку на SQL Сервер и при этом сортировку будем выполнять в нашем модуле на железе, намного мощнее, чем SQL Сервер, тогда те же 30 выгрузок будут проходить скажем за 5 часа (в зависимости от сортировки и выбранного модулем методом сортировки).

    Вывод:

    Потенциальный эффект от данного модуля может составить порядка 90 часов в год, так как 5*30=150, 240-150 =90. При этом имея огромный плюс в том, что не тормозим главную работу SQL Сервера.

    Определение числовых показателей для трудозатрат на разработку программных средств


    Расчет невыровненных функциональных точек:
    none
    Определение числовых показателей для трудозатрат на разработку программных средств:

    Методом FPA/IFPUG
    none Расчеты, выполненные первым методом FPA IFPUG, позволяют оценить сложность требуемых для создания информационной системы программных средств в 60 выровненных функциональных точек, а объем программного кода на языках программирования высокого уровня – 3300 строк кода.

    Методом COCOMO II
    none Расчеты, выполненные вторым методом COCOMO II, позволяют оценить общие трудозатраты проекта разработки программных средств в 10 человеко-месяцев, а ожидаемую продолжительность проекта, создаваемого с нуля – в 7 месяцев. Решением этого ограничения является то, что проект находится в разработке с сентября этого года, а значит будет выполнен вовремя.