Главная страница
Навигация по странице:

  • 1 Анализ информационных потоков данных

  • Разработка модели DFD автоматизации исследуемого процесса

  • Выбор и обоснование технологии проектирования базы данных

  • 3 Техническое проектирование

  • 3.1 Описание объектов БД

  • 3.2 Инфологическая модель БД

  • 3.3 Обоснование СУБД. Даталогическая модель БД

  • 3.4 Физическая модель данных.

  • 3.6 Разработка процедур по защите данных (обеспечение целостности БД)

  • 4 Интерфейсы взаимодействия с БД

  • БД курсовая. 1 Анализ информационных потоков данных


    Скачать 0.93 Mb.
    Название1 Анализ информационных потоков данных
    Дата23.05.2023
    Размер0.93 Mb.
    Формат файлаdocx
    Имя файлаБД курсовая.docx
    ТипДокументы
    #1154856
    страница1 из 2
      1   2



    Введение



    База данных – представленная в объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины (ЭВМ).

    Microsoft SQL Server – система управления реляционными базами данных (РСУБД), разработанная корпорацией Microsoft. Основной используемый язык запросов — Transact-SQL, создан совместно Microsoft и Sybase. Transact-SQL является реализацией стандарта ANSI/ISO по структурированному языку запросов (SQL) с расширениями. Используется для работы с базами данных размером от персональных до крупных баз данных масштаба предприятия; конкурирует с другими СУБД в этом сегменте рынка.

    Целью данной курсовой работы являются проектирование и разработка базы данных и приложения для работы с ней. База данных и приложение должны обеспечить возможность учета заявок центра службы занятости. Для достижения поставленной цели должны быть решены следующие задачи:

    1 Изучение предметной области, с целью анализа информационных потоков.

    2 Построение диаграмм IDEF0, IDEF3, DFD с целью систематизации данных, полученных в процессе анализа предметной области.

    3 Проектирование базы данных средствами SQL Server.

    4 Создание графического приложения средствами MS Visual Studio и установление связей с базой данных для обеспечения комфортной работы.
    1 Анализ информационных потоков данных

    Рисунок 1 – Контекстная диаграмма методологии IDEF0.


    Рисунок 2 – IDEF0 – диаграмма первого уровня декомпозиции

      1. Разработка модели DFD автоматизации исследуемого процесса


    Диаграммы потоков данных применяются для документирования механизма передачи и обработки информации в проектируемой системе, они удобны для наглядного изображения текущей работы системы документооборота организации. Обычно DFD служит в качестве дополнения IDEF0-модели. Наличие в диаграммах DFD элементов для описания источников, приемников и хранилищ данных позволяет более эффективно и наглядно описать процесс документооборота.



    Рисунок 4 – диаграмма потоков данных

    В базе данных хранятся следующие данные: организация (Код, Название, Краткое название Адрес, Контактные телефоны, электронный адрес) предоставляет услуги по трудоустройству. Организацией ведется банк данных о существующих вакансиях. По каждой вакансии поддерживается следующая информация:

    - предприятие (Код, Название, Краткое название Адрес, Контактные телефоны, электронный адрес);

    - название вакансии (должность);

    - требования к соискателю: пол, возраст (Верхняя граница, Нижняя граница), образование (высшее, среднее, не имеет значение и т.п.), знание определенных видов деятельности (выбор из перечня - знание электронного документооборота, определенных прикладных программ и т.п.), коммуникабельность (да, нет);

    - обязанности (выбор из перечня – заключение договоров, распространение агитационного материала, работа с клиентами и т.п.);

    - предполагаемая оплата (Нижняя граница, Верхняя граница), единицы измерения оплаты - рубли;

    - оформление трудовой книжки (да, нет);

    - наличие социального пакета (да, нет);

    - срок начала открытия вакансии;

    - срок закрытия вакансии (вакансия занята).



    1. Выбор и обоснование технологии проектирования базы данных

    Основными подходами к проектированию систем БД являются восходящий метод и нисходящий метод проектирования. Суть первого способа заключается в структурном проектировании снизу—вверх. В данном процессе на основе описания частей осуществляется попытка получения целого, адекватно отображающего предметную область.

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

    Восходящий метод проектирования применяют в распределенных БД при интеграции спроектированных локальных баз данных.

    Для проектирования сложных БД преимущественно применяется нисходящий подход. При таком подходе работа начинается с подготовки моделей данных, содержащих несколько высокоуровневых сущностей и связей.  После этого производятся нисходящие уточнения низкоуровневых сущностей, связей и атрибутов, относящихся к ним.
    Нисходящий подход используется в концепции метода проектирования «сущность-связь».  В основе метода лежат три элемента: сущность, атрибут, связь.  Работа начинается с выявления сущностей и связей между ними.

    Процесс построения баз данных методом «сущность-связь» включает в себя три этапа: концептуальное, логическое и физическое проектирование [1].

    Концептуальное проектирование БД – это процесс, результатом которого является создание модели имеющейся информации. Модель строится вне зависимости от любых физических аспектов ее представления. Такая модель данных формируется на основе информации, определенной в перечне требований пользователей. Особенности физической реализации (тип СУБД, язык программирования, тип вычислительной платформы и т.д.) на данном этапе не учитываются.

    На этапе логического проектирования БД происходит выбор модели организации данных, на основе которой создается модель используемой информации. Далее в концептуальную модель вносятся изменения и дополнения, и происходит преобразование в логическую модель данных. Созданная модель должна учитывать особенности организации данных в целевой СУБД (например, реляционная модель).

    На данном этапе должна быть определена целевая СУБД (реляционная, сетевая, иерархическая или объектно-ориентированная), так как построение логической модели происходит с учетом выбранной модели организации данных. С помощью метода нормализации происходит проверка правильности модели. Нормализация исключает избыточность данных, которая может привести к различным аномалиям в процессе обновления данных. Поддержка всех транзакций, которые необходимы пользователям, также должна обеспечиваться логической моделью.

    Физическое проектирование БД – это процесс, включающий в себя определение способов реализации и разработку описания конкретной реализации БД. В ходе данной стадии проектирования создается набор реляционных таблиц, определяется организация файлов и способы доступа к ним, а также анализируются ограничения целостности и разрабатываются средства защиты проектируемой БД.

    В данной работе применяется нисходящий подход.



    3 Техническое проектирование

    База данных предназначена для компании, занимающейся трудоустройством.

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

    Деятельность бюро организована следующим образом: компания готова искать работников для различных работодателей и вакансии для ищущих работу специалистов различного профиля. При обращении клиента-работодателя его стандартные данные (название, вид деятельности, адрес, телефон) фиксируются в базе данных. При обращении клиента-соискателя его стандартные данные (фамилия, имя, отчество, квалификация, профессия, иные данные) также фиксируются в базе данных. По каждому факту удовлетворения интересов обоих сторон составляется документ. В документе указывается соискатель, работодатель, должность и комиссионные.

    В базе фиксируется не только сделка, но и хранится информация по открытым вакансиям. Кроме того, для автоматического поиска вариантов необходимо вести справочник «Виды деятельности».

    По смыслу задачи к базе данных возможны следующие запросы:

    Какую вакансию получил соискатель с заданной фамилией;

    Какой вид деятельности предлагает работодатель;

    Какую квалификацию имеет соискатель;

    Какие должности включают в себя открытые вакансии;

    Исходя из поставленных задач, разработана концептуальная модель данных, которая включает в себя следующие объекты:

     Работодатели;

     Соискатели;

     Сделки;

     Открытые вакансии;

     Вид деятельности;

    Объект Соискатели связан с объектом Сделки соотношением один ко многим, объект Сделки связан с объектом Открытые вакансии соотношением один ко одному, объект Открытые вакансии связан с объектом Работодатели соотношением многие к одному, объект работодатели связан с объектом Вид деятельности соотношением многие к одному.




    Рисунок 5 - Схема БД «По трудоустройству»

    3.1 Описание объектов БД

    Исходя из концептуальной модели была создана реляционная модель.

    В неё входят следующие объекты:

     Виды деятельности;

     Открытые вакансии;

     Работодатели;

     Сделки;

     Соискатели.

    CREATE TABLE Вид деятельности (

    Код вид деятельности INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,

    Вид деятельности VARCHAR (20) NOT NULL,(Код вид деятельности)

    ); TABLE Соискатели (

    Код соискателя INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,

    Код вид деятельности INTEGER UNSIGNED NOT NULL,

    Фамилия VARCHAR (20) NULL,

    Имя VARCHAR (20) NULL,

    Отчество VARCHAR (20) NULL,

    Квалификация VARCHAR (45) NULL,

    Иные данные VARCHAR (255) NULL,

    Предполагаемый размер заработной платы NUMERIC NULL, KEY (Код соискателя),Соискатели_FKIndex1(Код вид деятельности),KEY(Код вид деятельности)Вид деятельности(Код вид деятельности)

    ON DELETE NO ACTIONUPDATE NO ACTION

    ); TABLE Работодатели (

    Код работодателя INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,

    Код вид деятельности INTEGER UNSIGNED NOT NULL,

    Название VARCHAR (45) NULL,

    Адрес VARCHAR (45) NULL,

    Телефон VARCHAR (20) NULL,KEY(Код работодателя), Работодатели_FKIndex1(Код вид деятельности),KEY(Код вид деятельности)Вид деятельности(Код вид деятельности)

    ON DELETE NO ACTIONUPDATE NO ACTION

    ); TABLE Открытые вакансии (

    Код вакансий INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,

    Код работодателя INTEGER UNSIGNED NOT NULL,

    Должность VARCHAR (20) NULL, KEY (Код вакансий), Открытые вакансии_FKIndex1(Код работодателя),

    FOREIGN KEY (Код работодателя)

    REFERENCES Работодатели (Код работодателя)

    ON DELETE NO ACTIONUPDATE NO ACTION

    ); TABLE Сделки (

    Код сделки INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,

    Код вакансий INTEGER UNSIGNED NOT NULL,

    Код соискателя INTEGER UNSIGNED NOT NULL,

    Комиссионные NUMERIC NULL, KEY (Код сделки), Сделки_FKIndex1(Код соискателя),

    INDEX Сделки_FKIndex 2(Код вакансий),

    FOREIGN KEY (Код соискателя)

    REFERENCES Соискатели (Код соискателя)

    ON DELETE NO ACTIONUPDATE NO ACTION, KEY (Код вакансий) Открытые вакансии (Код вакансий) DELETE NO ACTIONUPDATE NO ACTION);

    3.2 Инфологическая модель БД
    Информационно-логическая модель предметной области отражает предметную область в виде совокупности информационных объектов и их структурных связей. В данном проекте инфологическая модель отражает совокупность объектов центра службы занятости и их структурных связей.



    Рисунок 5 – инфологическая модель БД.
    3.3 Обоснование СУБД. Даталогическая модель БД
    СУБД представляет собой комплекс инструментальных средств, программных и языковых, реализующих централизованное управление БД и обеспечивающих доступ к данным (изменения, добавления, удаления, резервного копирования и т.д.), роль которых как единого средства хранения, обработки и доступа к большим объемам информации постоянно возрастает. Быстрое развитие потребностей применений БД выдвигает новые требования к СУБД: естественные и эффективные представления в БД разнообразных отношений между объектами предметных областей (например, пространственно-временных с обеспечением визуализации данных.

    В данном курсовом проекте для разработки СУБД применяется MS SQL Server. Характеристика данной СУБД представлена в таблице 13.

    Таблица 13 – сравнение СУБД



    В данном курсовом проекте для разработки СУБД применяется MS SQL Server. Характеристика данной СУБД представлена в таблице 14.

    Таблица 14 – характеристика СУБД

    Параметры

    СУБД

    Название, версия, фирма производитель

    MS SQL Server 2014, Microsoft и Sybase

    Поддерживаемые ОС

    UNIX,OS/2,Windows

    Требования к аппаратному обеспечению

    6 Гб свободного пространства, Память: 1 ГБ,быстродействие процессора 1,4 ГГц, процессор x64: AMD Opteron, AMD Athlon 64, Intel Xeon с поддержкой Intel EM64T, Intel Pentium IV с поддержкой EM64T

    Направление разработки

    Проектирование БД

    Поддерживаемая модель данный

    Реляционная

    Оптимальный размер БД

    Не важен

    Реализация прав доступа

    Да

    Наличие встроенных средств создания резервной копии БД и восстановления БД

    Есть в наличии

    Наличие средств формирования отчетов из БД

    Есть в наличии

    Возможность создания локальной БД

    Да

    Технология создания БД и объектов БД

    При помощи средств программы или же программным способом

    Поддержка сервера БД

    Да

    Поддержка языковых сред

    Да

    Средства поддержки ограничения целостности БД

    Да

    Удобство разработки и администрирования

    В данной СУБД удобно работать, она понятна и не требует от пользователя углубленных навыков.

    Поддержка многопроцессорности

    Да

    Поддержка экспорта и импорта данных других форматов

    Поддерживается

    Поддержка работы в кластере

    да

    Сложность или простота работы с СУБД

    Простота работы


    Даталогическая модель данных - это описание, создаваемое проектировщиком по инфологической модели данных на языке описания данных конкретной СУБД.



    Рисунок 6 – даталогическая модель данных.

    3.4 Физическая модель данных.

    Физическая модель – логическая модель базы данных, выраженная в терминах языка описания данных конкретной СУБД. Физическая модель базы данных содержит все детали, необходимые конкретной СУБД для создания базы: наименования таблиц и столбцов, типы данных, определения первичных и внешних ключей и т.п. Физическая модель строится на основе логической с учетом ограничений, накладываемых возможностями выбранной СУБД.

    Таблица является базовой структурой реляционной базы данных, которая состоит из строк и столбцов с данными. Представление – это поименованная динамически поддерживаемая СУБД выборка данных из одной или нескольких таблиц. Описание проектируемых таблиц представлено далее (Таблицы 1-13).

    Таблица 1 – Реляционная таблица Адрес

    Имя поля

    Ключ

    Физические характеристики

    Логические операции

    Обязательное поле

    Пример данных

    Номер_адреса

    PK

    integer

    Check(Номер>0)

    Notnull

    1,2,3…

    Номер_НП

    FK

    integer




    Notnull

    201

    Номер_улицы

    FK

    integer




    Notnull

    2101

    дом




    Integer




    Notnull

    63

    корпус




    Integer




    null

    2

    офис




    integer




    Notnull

    18

    Таблица 2 – Реляционная таблица Организация

    Имя поля

    Ключ

    Физ. характеристики

    Лог

    операции

    Обязательные поля

    Пример

    Код_организации

    PK

    int

    Check(Номер>0)

    Notnull

    303

    Название_организации




    Char(100)




    Notnull

    ООО «Эвалар»

    Сокращенное_название




    Char(100)




    null

    ООО_Э

    Телефон




    int




    notnull

    225-336

    Электронный_адрес




    Char(100)




    null

    evalar@mail.ru

    Номер_адреса

    FK

    int

    Check(Номер>0)

    Notnull

    9009

    Код_документа

    FK

    int

    Check(Номер>0)

    Notnull

    6818

    Таблица 3 – Реляционная таблица Образование

    Имя поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Код_

    образования

    PK

    int

    Check(Номер>0)

    Notnull

    1111

    Название_

    образования




    Char(100)




    Notnull

    Высшее


    Таблица 4 – Реляционная таблица Абитуриент

    Имя поля

    Ключ

    Физ. характеристики

    Лог.

    операции

    Обязательные поля

    Пример

    Номер_абитуриента

    PK

    int

    Check(Номер>0)

    Notnull

    818

    Фамилия




    Char(100)




    Notnull

    Петров

    Имя_Отчество




    Char(100)




    Notnull

    Петр Петрович

    Пол




    Char(10)




    Notnull

    м

    Возраст




    int




    Notnull

    25

    Номер_

    образования

    FK

    int

    Check(Номер>0)

    Notnull

    11111

    Номер_

    адреса

    FK

    int

    Check(Номер>0)

    Notnull

    14234

    Таблица 5 – Реляционная таблица Список курсов абитуриентов

    Имя поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Номер_списка

    PK

    int

    Check(Номер>0)

    Notnull

    1,3

    Номер_курса

    FK

    int

    Check(Номер>0)

    Notnull

    1,3

    Номер_абитуриента

    FK

    int

    Check(Номер>0)

    Notnull

    1,3

    Код_организации

    FK

    int

    Check(Номер>0)

    Notnull

    1,3

    Код_образования

    FK

    int

    Check(Номер>0)

    Notnull

    1,3

    Код_срок_обучения

    FK

    int

    Check(Номер>0)

    Notnull

    1,3

    Таблица 6 – Реляционная таблица Курсы

    Имя поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Номер_курса

    PK

    int

    Check(Номер>0)

    Notnull

    331

    Название_курса




    Char(100)







    Администратор БД

    Номер_организации

    FK

    int

    Check(Номер>0)

    Notnull

    102

    Номер_образования

    FK

    Char(10)

    Check(Номер>0)

    Notnull

    220

    Номер_темы

    FK

    int

    Check(Номер>0)

    Notnull

    895

    Номер_контроля

    FK

    int

    Check(Номер>0)

    Notnull

    823

    Цена_курса




    int

    Check(Номер>0)

    Notnull

    120000,00

    Таблица 7 – Реляционная таблица Документ

    Имя поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Код_документа

    PK

    int

    Check(Номер>0)

    Notnull

    1,3

    Тип_документа




    Char(100)

    Check(Номер>0)

    Notnull

    Аккредитация

    Серия_документа




    int

    Check(Номер>0)

    Notnull

    1,3

    Номер_документа




    int

    Check(Номер>0)

    Notnull

    1,3

    Дата_выдачи




    int

    Check(Номер>0)

    Notnull

    20.12.18

    Дата_окончания_действия




    int

    Check(Номер>0)

    null

    20.12.18

    Таблица 8 – Реляционная таблица Контроль

    Имя поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Номер_контроля

    PK

    int

    Check(Номер>0)

    Notnull

    331

    Тип_контроля




    Char(100)

    Check(Номер>0)

    Notnull

    зачёт

    Название_контроля




    Char(100)







    Выпускная квалификационная работа

    Краткое_название













    ВКР

    Дата_проведения




    int

    Check(Номер>0)

    Notnull

    20.18.19

    Код_документа

    FK

    int

    Check(Номер>0)

    Notnull

    102


    Таблица 9 – Реляционная таблица Темы

    Имя поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Номер_темы

    PK

    Int

    Check(Номер>0)

    Notnull

    02

    Название_темы




    Char(100)




    Notnull

    Экономическое развитие

    Методический_материал




    Char(100)




    Notnull

    Китчев ”Экономика”

    Количество_часов




    Int




    Notnull

    45

    Номер_контроля

    FK

    Int




    Notnull

    05



    Таблица 10 – Реляционная таблица тип_НП

    Имя поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Номер_типа_НП

    PK

    Int

    Check(Номер>0)

    Notnull

    02

    Название_типа_НП




    Char(100)




    Notnull

    Село


    Таблица 11 - Реляционная таблица тип_улицы

    Им8я поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Номер_

    типа_

    улицы

    PK

    Int

    Check(Номер>0)

    Notnull

    002

    Название_

    типа_улицы




    Char(100)




    Notnull

    Бульвар


    Таблица 12 - Реляционная таблица улица

    Имя поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Номер_

    улицы

    PK

    int

    Check(Номер>0)

    Notnull

    110

    Номер_типа_

    улицы

    FK

    Int

    Check(Номер>0)

    Notnull

    002

    Название_

    улицы




    Char(100)




    Notnull

    Ул.Мира


    Таблица 13 - Реляционная таблица НП

    Продолжение таблицы 8.

    Имя поля

    Ключ

    Физ. характеристики

    Логические операции

    Обязательные поля

    Пример

    Номер_НП

    PK

    int

    Check(Номер>0)

    Notnull

    2002

    Номер_типа_НП

    FK

    Int

    Check(Номер>0)

    Notnull

    02

    Название_НП




    Char(100)




    Notnull

    Орск

    3.5 Разработка запросов

    В данном проекте были реализованы следующие запросы:

      1. на заданную дату список предприятий, имеющих вакансии по заданной должности



    Рисунок 8 – SQL запрос на вывод вакансий.



    Рисунок 9 – результат выполнения запроса

      1. название должности, на которую за заданный период было предложено максимальное количество вакансий;



    Рисунок 10 – SQL запрос на вывод должности



    Рисунок 11 – результат выполнения запроса

      1. на заданную дату список предприятий, предлагающих вакансии, не требующих образования.



    Рисунок 12 – SQL запрос на вывод вакансий без образования.



    Рисунок 13 – результат выполнения запроса

    3.6 Разработка процедур по защите данных (обеспечение целостности БД)

    Це́лостность ба́зы да́нных (database integrity) — соответствие имеющейся в базе данных информации её внутренней логике, структуре и всем явно заданным правилам. Каждое правило, налагающее некоторое ограничение на возможное состояние базы данных, называется ограничением целостности (integrity constraint).

    Главное средство обеспечение доменной целостности в SQL Server - это ограничение CHECK. Оно может быть определено при создании таблицы или добавлено позднее при помощи команды ALTER TABLE.

    В данной базе данных целостность обеспечивается путем добавления в таблицы таких ограничений, как внешний ключ. Ограничения FOREIGN KEY был добавлены в следующие таблицы: Вакансии, соискатель, список вакансий соискателей и организация. Помимо ограничений, защита данных осуществляется при помощи ролей бд.

    Роль представляет собой именованных набор прав и привилегий на объект БД, в системе имеется два типа ролей: Администратор БД и Пользователь, настройки ролей представлены на рисунках 14 и 15 соответственно.


    Рисунок 14 - Роль Администратор БД


    Рисунок 15 - Роль Пользователь

    4 Интерфейсы взаимодействия с БД

    Для взаимодействия с БД было разработано приложение в среде MS Visual studio 2017. В приложении возможно просматривать таблицы БД, а также реализовывать запросы, описанные выше.



    Рисунок 16 – Главная форма



    Рисунок 17 – выбор таблицы для просмотра



    Рисунок 18 – просмотр выбранной таблицы.

    Для реализации запросов необходимо нажать на кнопку «Запросы», расположенную на этой же форме. В результате появится новое окно с полями для условий отбора.



    Рисунок 19 – форма «Запросы»

    Результат выполнения запросов представлен выше. Код программы см. Приложение А.

      1   2


    написать администратору сайта