Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Report.docx
Скачиваний:
7
Добавлен:
25.11.2018
Размер:
408.34 Кб
Скачать
  1. Проектирование серверной части по

  1. Выбор субд

Для реализации курсового проекта была выбрана СУБД MS SQL Server 2008 R2. Эта база данных обладает рядом преимуществом, среди них наиболее важным является «родная» поддержка .NET Framework, с использованием которого написано веб-приложение.

  1. Выделение сущностей и атрибутов из предметной области

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

  • Проект

    • Заказчик

    • Менеджер проекта

    • Статус

    • Задачи

    • Дата старта

    • Дата окончания

  • Задача

    • Описание

    • Ответственный разработчик

    • Предварительная оценка времени

    • Затраченное время

    • Статус

    • Дата создания

  • Пользователь

    • Имя

    • Пароль

    • Адрес эл.почты

    • Роль

    • Статус

  • Роль

    • Название роли

    • Описание роли

  1. Выделение связей между сущностями

По результатам анализа предметной области было установлено, что в БД будут существовать следующие связи:

  • 1:n

    • Роль – пользователи

    • Пользователь – задачи (для программиста)

    • Пользователь – проекты (проекты клиента)

    • Проект – задачи

  • 1:1

Связей нет

  • m:n

    • Проекты – программисты (команда проекта)

  1. Построение er-диаграммы

ER-диаграмма представляет собой концептуальную модель отношений сущностей без учета их атрибутов в базе данных.

Рис. 1 ER-диаграмма предметной области

  1. Описание таблиц и полей

Таблица “Projects” – хранит информацию обо всех проектах в системе.

Таблица 1. Описание полей таблицы "Projects"

Название поля

Тип

Ограничения

Примечания

Id

Int

PK

Номер проекта

Name

nvarchar(255)

Название

TotalCost

money

Общая стоимость

PriceDiscount

int

К-ф скидки

Progress

float

Прогресс хода работ

CreationDate

datetime

Дата создания

StartDate

datetime

Дата начала работ

DeliveryDate

datetime

Дата доставки

Status_Id

int

FK – “ProjectStatus”

Код статуса проекта

Customer_Id

int

FK – “Users”

Код заказчика проекта

Таблица "Users" – хранит информацию о пользователях системы, их ролях, и дополнительной информации.

Таблица 2. Описание полей таблицы "Users"

Название поля

Тип

Ограничения

Примечания

Id

int

PK

Номер пользователя

UserName

nvarchar(50)

Имя учетной записи

Hash

nvarchar(100)

Хеш пароля

Email

nvarchar(100)

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

HouseRate

float

Ставка почасовой оплаты

Role_Id

int

FK – “Roles”

Код роли пользователя

Таблица “Roles” – хранит информацию о пользовательских ролях в системе.

Таблица 3. Описание полей таблицы "Roles"

Название поля

Тип

Ограничения

Примечания

Id

int

PK

Номер роли

Name

nvarchar(30)

Название

Description

nvarchar(255)

Описание

IsBaseRole

bit

Флаг «Системная роль»

BaseLocation

nvarchar(100)

Базовый адрес

Таблица “ProjectStatuses” – хранит информацию о статусах проектов в системе.

Таблица 4. Описание полей таблицы "PojectStatuses"

Название поля

Тип

Ограничения

Примечания

Id

int

PK

Номер статуса

Name

nvarchar(30)

Название

IsBaseStatus

bit

Флаг «Системный статус»

Таблица “Tasks” – хранит информацию о проектных заданиях в системе.

Таблица 5. Описание полей таблицы "Tasks"

Название поля

Тип

Ограничения

Примечания

Id

int

PK

Номер

Title

nvarchar(MAX)

Название

Description

nvarchar(MAX)

Описание

CreationDate

datetime

Дата создания

BeginDate

datetime

Дата начала

EndDate

datetime

Дата завершения

EstimatedTime

datetime

Оцененное время

SpentTime

int

Затраченное время

Status_Id

int

FK – “ProjectStatuses”

Код статуса

Project_Id

int

FK – “Projects”

Код проекта

Responsible_Id

int

FK – “Users”

Код разработчика

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]