Разработка базы данных в сфере строительства

Автор работы: Пользователь скрыл имя, 19 Июня 2013 в 10:50, курсовая работа

Описание работы

Предметной областью для курсовой работы является организация, занимающаяся продажей программного обеспечения в сфере строительства. Целью курсовой работы стало разработка базы данных средствами MS SQL Server 2005.
Для организации, занимающейся таким видом деятельности, крайне важно иметь строгий учет наличия конкретных экземпляров программ, так как чаще всего они берутся у разработчиков на реализацию, и неожиданная пропажа единицы товара может привести к большим непредвиденным затратам. Так же решится проблема учета клиентов, сотрудников, выписанных накладных и ведение базы всего программного обеспечения.

Содержание работы

ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ 2
ПОСТРОЕНИЕ ER-ДИАГРАММЫ И ОБОСНОВАНИЕ ПРИНЯТЫХ РЕШЕНИЙ 3
ТЕХНИЧЕСКОЕ ЗАДАНИЕ 5
Назначение и цели создания БД 5
Характеристика объектов автоматизации 5
Требования к системе 5
Процедуры БД должны обеспечивать следующие изменения объектов хранения: 7
Процедуры БД должны обеспечивать поиск следующей информации: 7
РАСПРЕДЕЛЕНИЕ РОЛЕЙ И ПРАВ. 8
ПОЛЕЗНЫЕ ЗАПРОСЫ. 10

Файлы: 1 файл

Техническое задание.doc

— 210.50 Кб (Скачать файл)

Оглавление

 

 

ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ

Предметной областью для курсовой работы является организация, занимающаяся продажей программного обеспечения  в сфере строительства. Целью  курсовой работы стало  разработка базы данных средствами MS SQL Server 2005.

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

В базе данных созданы  таблицы, которые позволят:

  1. Ведение клиентской базы (справочник реквизитов) и базы сотрудников.
  2. Вести базу реквизитов, клиентов, контактных лиц, сотрудников.
  3. Вести базу доступного программного обеспечения с описанием
  4. Вести базу программ, которые есть в наличии
  5. Вести базу накладных, по тем наименованиям, которые выбрал клиент.

 

ПОСТРОЕНИЕ ER-ДИАГРАММЫ  И ОБОСНОВАНИЕ ПРИНЯТЫХ РЕШЕНИЙ

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

 

ТЕХНИЧЕСКОЕ ЗАДАНИЕ

Назначение и цели создания БД

БД предназначена для  хранения и обработки информации, относящейся к основной деятельности предприятия

Целью создания БД является:

  • Упорядочивание системы учета документооборота с контрагентами (договор, накладная);
  • Ускорение получения информации имеющихся в наличии программных продуктах;
  • Ускорение поиска информации о контрагентах;
  • Ускорение поиска информации об изменении цен на программные продукты;

 

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

Под средствами технического обслуживания подразумеваются средства оптимизации физического и логического состояния базы и ее резервное копирование.

Характеристика объектов автоматизации

Основной деятельностью  предприятия является продажа и  обслуживание программного обеспечения. На предприятии имеется 150 экземпляров программ. Клиентами компании являются порядка 350 юридических лиц. 12 сотрудников числятся в штате предприятия, из них 4 менеджера по продажам и 4 специалиста по сопровождению ПО.

Требования к системе

БД должна обеспечивать хранение информации o:

  1. Имеющихся на предприятии экземплярах ПО. Для каждого экземпляра должны быть следующие атрибуты:
    1. Инвентаризационный номер
    2. Дата поступления на склад

 

  1. Списке программного обеспечения. По каждой программе должны храниться следующие атрибуты:
    1. Название
    2. Описание
  2. Классификаторе программного обеспечения:
    1. Сфера применения
    2. Описание
    1. Разработчиках ПО:
    1. Название

 

    1. Клиентах компании (юр. лица). Для них должны быть указаны следующий атрибуты:
    1. Название

 

    1. Реквизитах клиентов и разработчиков ПО:

1. ИНН

2. Банк

3. Номер счета

 

    1. Контактных лицах:

1. Имя

2. Отчество

3. Фамилия

4. Телефон

 

8. Сотрудниках компании  – менеджерах и специалистах  по сопровождению ПО:

1. Имя

2. Отчество

3. Фамилия

4. Телефон

 

9. Договорах, заключенных  с клиентами:

1. Дата

2. Номер

3. Доставка

4. Установка

5. Сопровождение

 

10. Накладных, выписываемых  на конкретные экземпляры программ:

1. Дата

2. Сумма

 

11. Изменениях цен на  программы:

1.Стартовое количество

2. Финальное количество

3. Стартовая дата

4. Финальная дата

5. Цена

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

  1. Введение и изменение атрибутов контрагентов
  2. Введение и изменение атрибутов документов (договоров, накладных)
  3. Введение и изменение информации о изменении цены на программы.
  4. Введение и изменение данных о программах и экземплярах программ

Процедуры БД должны обеспечивать поиск следующей информации:

  1. Поиск клиентов по названию, части названия, ИНН и прочим реквизитам. В результатах поиска должны быть отражены все реквизиты клиента, контактные лица.
  2. Поиск всех программ по сфере применения. В результате поиска может быть больше одного результата.
  3. Поиск всех экземпляров программ по названию программы.
  4. Поиск всех накладных за выбранный период по номеру накладной или дате.
  5. Поиск всех экземпляров программ, когда-либо купленных клиентов, с указанием даты продажи, номерами договоров.

 

РАСПРЕДЕЛЕНИЕ РОЛЕЙ И  ПРАВ.

Для упрощения управления правами доступа в БД применяется  механизм ролей — наборов прав доступа к объектам базы данных, присваиваемых некоторой совокупности пользователей. Для реализации поставленной задачи было создано две серверные роли – sales_profi и support_profi, содержащие в себе права доступа для менеджеров и консультантов компании соответственно.

 

Sales_profi

Таблица

Доступ

Действие

Таблица

Доступ

Действие

classifier

Deny     

Delete

Developers

Deny     

Delete

classifier

Deny     

Insert

Developers

Deny     

Insert

classifier

Grant    

Select

Developers

Grant    

Select

classifier

Grant    

Update

Developers

Grant    

Update

Consultants

Deny     

Delete

exemplars

Grant    

Delete

Consultants

Deny     

Insert

exemplars

Grant    

Insert

Consultants

Deny     

Update

exemplars

Grant    

Select

Consultants

Grant    

Select

exemplars

Grant    

Update

contact names

Grant    

Delete

requisites

Grant    

Delete

contact names

Grant    

Insert

requisites

Grant    

Insert

contact names

Grant    

Select

requisites

Grant    

Select

contact names

Grant    

Update

requisites

Grant    

Update

contract

Grant    

Delete

Software

Grant    

Delete

contract

Grant    

Insert

Software

Grant    

Insert

contract

Grant    

Select

Software

Grant    

Select

contract

Grant    

Update

Software

Grant    

Update

contractor

Grant    

Delete

waybill

Grant    

Insert

contractor

Grant    

Insert

waybill

Grant    

Select

contractor

Grant    

Select

waybill

Grant    

Update

contractor

Grant    

Update

Dev-soft

Grant    

Select

     

SelectPrice

Grant    

Execute


 

 

 

 

support_profi

Таблица

Доступ

Действие

Таблица

Доступ

Действие

classifier

Deny     

Delete

contractor

Grant    

Select

classifier

Deny     

Insert

contractor

Grant    

Update

classifier

Deny     

Update

Developers

Deny     

Delete

classifier

Grant    

Select

Developers

Deny     

Insert

Class-soft

Deny     

Delete

Developers

Grant    

Select

Class-soft

Deny     

Insert

Developers

Grant    

Update

Class-soft

Deny     

Update

Dev-soft

Deny     

Delete

Class-soft

Grant    

Select

Dev-soft

Deny     

Insert

Consultants

Deny     

Delete

Dev-soft

Deny     

Update

Consultants

Deny     

Insert

Dev-soft

Grant    

Select

Consultants

Deny     

Update

requisites

Deny     

Delete

Consultants

Grant    

Select

requisites

Deny     

Insert

contact names

Deny     

Delete

requisites

Grant    

Select

contact names

Grant    

Insert

requisites

Grant    

Update

contact names

Grant    

Select

Software

Deny     

Delete

contact names

Grant    

Update

Software

Grant    

Insert

contractor

Deny     

Delete

Software

Grant    

Select

contractor

Grant    

Insert

Software

Grant    

Update


 

ПОЛЕЗНЫЕ ЗАПРОСЫ.

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

Select * from Exemlars where (Inv_number is NULL)

  1. В таблице Waybills, для отслеживания изменений выписанных накладных, при каждом изменении записи в таблицу записывается информация о времени и пользователе, который изменил запись.

    ALTER TRIGGER [KeepTrack] ON [dbo].[waybill]

    FOR INSERT, UPDATE

    AS

    UPDATE waybill

    SET waybill.UpdatedBy = USER_NAME(),

    waybill.UpdatedWhen = GETDATE()

    FROM inserted, waybill

    WHERE inserted.ID = waybill.ID

 


Информация о работе Разработка базы данных в сфере строительства