Программная реализация проекта 'Агентство недвижимости'

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    451,08 Кб
  • Опубликовано:
    2012-11-16
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Программная реализация проекта 'Агентство недвижимости'

Реферат

Программный комплекс содержит 29 хранимых процедур.

Среда разработки и эксплуатации базы данных - MS SQL Server 2008 RC2 Express.

Разработанная система предназначена для учета информации о сдающихся, продающихся, покупаемых, арендуемых объектах недвижимости. Цель разработки: снижение трудоемкости и повышение быстродействия сотрудников. Основная учебная цель выполнения проекта - повышение уровня квалификации разработчика в области проектирования, программной реализации и администрирования баз данных.


Введение

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

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

Целью данного курсового проекта является создание автоматизированной системы учета объектов недвижимости и действий с этими объектами.


1.       Описание внешней модели проектируемой системы

Система выполняет следующие функции:

)        Клиент может запросить определенный тип услуги без регистрации новой заявки;

)        Клиент может оставить заявку на продажу объекта недвижимости;

)        Клиент может оставить заявку на сдачу объекта недвижимости в аренду;

)        Клиент может оставить заявку на покупку объекта недвижимости;

)        Клиент может оставить заявку на аренду объекта недвижимости;

)        Для зарегистрированной заявки ищется объект удовлетворяющий характеристикам, указанным в этой заявке;

)        Выполнение заявки.


2.       Проектирование базы данных

 

.1       Разработка концептуальной модели


Концептуальная модель предназначена для формального описания объектной структуры предметной области. Составляющие этой модели - объекты («типы сущностей»), их свойства («атрибуты сущностей») и связи между объектами. Этап разработки информационной модели соответствует стадии «Эскизный проект». Результаты информационного моделирования представляются в виде простой и удобной для понимания и анализа графической диаграмме «сущность - связь».

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

На основании первичного анализа внешней модели выделим следующие типы сущностей:

1.       Клиент

2.       Владелец

.        Покупатель

.        Объект владельца

.        Объект покупателя

.        Заявка владельца

.        Заявка покупателя

.        Реальный адрес

.        Желаемый адрес

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

.        Услуга

.        Операция с объектом

.        Категория

.        Свойства

.        Субъект

.        Населенный пункт

.        Район

.        Улица

Определим атрибуты этих сущностей.

Сущность «Клиент» (Код Клиента, ФИО, Телефон)

Код Клиента - является уникальным номером клиента и является идентифицирующим(ключевым) атрибутом.

ФИО - содержит фамилию, имя и отчество клиента.

Телефон - содержит номер клиента.

Сущность «Владелец» (Код Владельца, Код Клиента)

Код Владельца - является уникальным номером владельца и является идентифицирующим(ключевым) атрибутом.

Код Клиента - является уникальным номером клиента.

Сущность «Покупатель» (Код Покупателя, Код Клиента)

Код Покупателя - является уникальным номером покупателя и является идентифицирующим (ключевым) атрибутом.

Код Клиента - является уникальным номером клиента.

Сущность «Объект владельца» (Код Категории, Название, Код Адреса)

Код Категории - является уникальным номером категории.

Название - название объекта.

Код Адреса - является уникальным номером адреса.

Сущность «Объект покупателя» (Код Категории, Код Адреса)

Код Категории - является уникальным номером категории.

Код Адреса - является уникальным номером адреса.

Сущность «Заявка владельца» (Код Владельца, Код Объекта, Код Операции, Цена, Исполнена, Дата)

Код Владельца - является уникальным номером владельца.

Код Объекта - является уникальным номером объекта.

Сущность «Реальный адрес» (Код Адреса, Код Субъекта,

Код Населенного Пункта, Код Района, Код Улицы, Дом, Квартира)

Код Адреса - является уникальным номером адреса и является идентифицирующим(ключевым) атрибутом.

Код Субъекта - является уникальным номером субъекта.

Код Населенного Пункта - является уникальным номером населенного пункта.

Код Района - является уникальным номером района.

Код Улицы - является уникальным номером улица.

Дом - номер дома.

Квартира - номер квартиры.

Сущность «Желаемый адрес» (Код Адреса, Код Субъекта, Код Населенного Пункта)

Код Адреса - является уникальным номером адреса и является идентифицирующим(ключевым) атрибутом.

Код Субъекта - является уникальным номером субъекта.

Код Населенного Пункта - название этапа.

Сущность «Логические операции»(Код Логической Операции, Операция)

Код Логической Операции - является уникальным номером логической операции и является идентифицирующим(ключевым) атрибутом.

Операция - название операции.

Сущность «Услуга» (Код Услуги, Название, Стоимость)

Код Услуги - является уникальным номером услуги и является идентифицирующим(ключевым) атрибутом.

Название - название услуги.

Стоимость - стоимость услуги.

Сущность «Операция с объектом» (Код Операции, Название)

Код Операции - является уникальным номером операции и является идентифицирующим(ключевым) атрибутом.

Название - название операции.

Сущность «Категория» (Код Категории, Название)

Код Категории - является уникальным номером категории и является идентифицирующим(ключевым) атрибутом.

Название - название операции.

Сущность «Свойства» (Код Свойства, Название, Единица измерения)

Код Свойства - является уникальным номером свойства и является идентифицирующим(ключевым) атрибутом.

Название - наименование свойства.

Единица измерения - единица измерения свойства.

Сущность «Субъект» (Код Субъекта, Название)

Код Субъекта - является уникальным номером субъекта и является идентифицирующим(ключевым) атрибутом.

Название - название субъекта.

Сущность «Населенный пункт» (Код Населенного пункта, Название)

Код Населенного пункта - является уникальным номером населенного пункта и является идентифицирующим(ключевым) атрибутом.

Название - название населенного пункта.

Сущность «Район» (Код Района, Название)

Код Района - является уникальным номером района и является идентифицирующим(ключевым) атрибутом.

Название - название района.

Сущность «Улица» (Код Улицы, Название)

Код Улицы - является уникальным номером улицы и является идентифицирующим(ключевым) атрибутом.

Название - название улицы.

Связь характеризует отношение между типами сущностей и отображает взаимосвязи между реальными объектами. Каждой связи присваивается содержательное имя. Существует понятие «арности» связи, определяющее количество участвующих в ней типов сущностей. Бинарные связи устанавливают отношение между парой сущностей, k-арные - между k сущностями. По аналогии с сущностями различают типы и экземпляры связей. Каждый экземпляр связи устанавливает определенное отношение между экземплярами сущностей. Определим связи между сущностями.

Таблица 1

Связь

Описание

Тип связи

1

Клиент - Владелец

Все владельцы являются клиентами.

Один ко многим

2

Клиент - Покупатель

Все покупатели являются клиентами.

Один ко многим

3

Владелец - Заявка Владельца

Один владелец может оставлять несколько заявок.

Один ко многим

4

Покупатель - Заявка Покупателя

Один владелец может оставлять несколько заявок.

Один ко многим

5

Операция с объектом - Заявка Владельца

С заявкой сопоставляется одна операция.

Один ко многим

6

Операция с объектом - Заявка Покупателя

С заявкой сопоставляется одна операция.

Один ко многим

7

Объект Владельца - Заявка Владельца

Заявка описывает операцию с одним объектом.

Один ко многим

8

Объект Покупателя - Заявка Покупателя

Заявка описывает операцию с одним объектом.

Один ко многим

9

Категория - Объект Владельца

Объект соответствует определенной категории.

Один ко многим

10

Категория - Объект Покупателя

Объект соответствует определенной категории.

Один ко многим

11

Адрес - Объект Владельца

Одному адресу соответствует один объект.

Один ко многим

12

Желаемый Адрес - Объект Покупателя

Одному адресу соответствует один объект.

Один ко многим

13

Логическая операция - Заявка Покупателя

В заявке может присутствовать одна логическая операция.

Один ко многим

14

Субъект - Адрес

В адресе может находиться один субъект.

Один ко многим

15

Населенный Пункт - Адрес

В адресе может находиться один населенный пункт.

Один ко многим

16

Район - Адрес

В адресе может находиться один район.

Один ко многим

17

Улица - Адрес

В адресе может находиться одна улица.

Один ко многим

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

.        Запрос услуги (КодКлиента, КодУслуги)

.        Свойства объекта владельца (КодОбъекта, КодСвойства,ЗначениеСвойства)

.        Свойства Категории (КодКатегории, КодСвойства)

.        Свойства объекта покупателя(КодОбъекта, КодСвойства,КодЛогическойОперации,ЗначениеСвойства)

.        Список улиц (КодАдреса, КодУлицы)

.        Список районов(КодАдреса, КодРайона)

Определим атрибуты этих ассоциативных объектов.

«Запрос услуги» (КодКлиента, КодУслуги)

КодКлиента - код запрашиваемого услугу клиента.

КодУслуги - код запрашиваемой услуги.

«Свойства объекта владельца» (КодОбъекта, КодСвойства,ЗначениеСвойства)

КодОбъекта - код объекта.

КодСвойства - код свойства.

ЗначениеСвойства - значение свойства, принадлежащего объекту.

«Свойства Категории» (КодКатегории, КодСвойства)

КодКатегории - код категории.

КодСвойства - код свойства определенного для данной категории.

«Свойства объекта покупателя» (КодОбъекта, КодСвойства,КодЛогическойОперации,ЗначениеСвойства)

КодОбъекта - код объекта.

КодСвойства - код свойства.

КодЛогическойОперации - код логической операции по отношению к значению свойства.

ЗначениеСвойства - значение свойства, принадлежащего объекту.

«Список улиц» (КодАдреса, КодУлицы)

КодАдреса - код адреса.

КодУлицы - код улицы, соответствующей данному адресу.

«Список районов» (КодАдреса, КодРайона)

КодАдреса - код адреса.

КодРайона - код района, соответствующий данному адресу.

Для представления (документирования) модели «Сущность-Связь» используются графические диаграммы и табличные спецификации, информационно дополняющие друг друга.

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

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


Рисунок 1 - ER-модель БД

.2 Разработка реляционной модели данных

От ER-модели перейдем к реляционной модели данных.

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

Символом (*) отмечены первичные ключи, а символом («) - внешние ключи, введенные в состав атрибутов сущностей, участвующих в связях вида 1:N со стороны «N». Для ассоциативных объектов, описывающих связи вида M:N между сущностями, первичный ключ образуется парой (или более) внешних ключей - первичных ключей связанных сущностей.

Тип сущности «Клиенты»

Имя атрибута

Описание

Тип

*КодКлиента

Условный код

Числовой

Фамилия

Фамилия клиента

Текстовый

Имя

Имя клиента

Текстовый

Отчество

Отчество клиента

Текстовый

Телефон

Телефон клиента

Текстовый


Тип сущности «Владелец»

Имя атрибута

Описание

Тип

*КодВладелеца

Условный код

Числовой

«КодКлиента


Числовой


Тип сущности «Покупатель»

Имя атрибута

Описание

Тип

*КодПокупателя

Условный код

Числовой

«КодКлиента


Числовой


Тип сущности «ОперацияСОбъектом»

Имя атрибута

Описание

Тип

*КодОперации

Условный код

Числовой

Операция

Название операции

Текстовый


Тип сущности «ТипУслуги»

Имя атрибута

Описание

Тип

*КодУслуги

Условный код

Числовой

Услуга

Вид услуги

Текстовый

Стоимость

Стоимость услуги

Денежный


Тип сущности «ЗапросУслуги»

Имя атрибутаОписание Тип



«КодКлиента


Числовой

«КодУслуги


Числовой


Тип сущности «Адрес»

Имя атрибутаОписание Тип



*КодАдреса

Условный код

Числовой

«КодСубъекта


Числовой

«КодНасПункта


Числовой

«КодРайона


Числовой

«КодУлицы


Числовой

Дом

Номер дома

Текстовый

Квартира

Номер квартиры

Числовой


Тип сущности «ОбъектВладельца»

Имя атрибута

Описание

Тип

*КодОбъекта

Условный код

Числовой

Название

Название объекта

Текстовый

«КодКатегории


Числовой

«КодАдреса


Числовой


Тип сущности «СвойстваОбъектаВладельца»

Имя атрибута

Описание

Тип

«КодОбъекта


Числовой

«КодСвойства


Числовой

ЗначениеСвойства

Значение свойства объекта

Текстовый


Тип сущности «Категория»

Имя атрибута

Описание

Тип

*КодКатегории

Условный код

Числовой

Название

Название категории

Текстовый


Тип сущности «ЗаявкаВладельца»

Имя атрибутаОписание Тип



*КодЗаявкиВладельца

Условный код

Числовой

«КодВладелеца


Числовой

«КодОбъекта


Числовой

«КодОперации


Числовой

Цена

Цена за объект

Денежный

Исполнена

Выполнена ли заявка

Дата

Дата регистрации заявки

Дата-временной


Тип сущности «ОбъектПокупателя»

Имя атрибутаОписание Тип



*КодОбъекта

Условный код

Числовой

«КодАдреса


Числовой

«КодКатегории


Числовой


Тип сущности «ЗаявкаПокупателя»

Имя атрибутаОписание Тип



*КодЗаявкиПокупателя

Условный код

Числовой

«КодПокупателя


Числовой

«КодОбъекта


Числовой

«КодОперации


Числовой

«КодЛогичОперации


Числовой

Цена

Цена за объект

Денежный

Исполнена

Выполнена ли заявка

Логический

Дата

Дата регистрации заявки

Дата-временной


Ассоциативный объект «ЛогическиеОперации»

Имя атрибута

Описание

Тип

*КодОперации

Условный код

Числовой

Операция

Тип логической операции

Текстовый


Ассоциативный объект «СвойстваКатегории»

Имя атрибутаОписание Тип



«КодКатегории


Числовой

«КодСвойства


Числовой


Ассоциативный объект «Улица»

Имя атрибутаОписание Тип



*КодУлицы


Числовой

Название

Название улицы

Текстовый


Ассоциативный объект «Субъект»

Имя атрибутаОписание Тип



*КодСубъекта


Числовой

Название

Название субъекта

Текстовый


Ассоциативный объект «Район»

Имя атрибутаОписание Тип



*КодРайон


Числовой

Название

Название района

Текстовый


Ассоциативный объект «НаселенныйПункт»

Имя атрибутаОписание Тип



*КодНасПункта


Числовой

Название

Название населенного пункта

Текстовый


Ассоциативный объект «Свойства»

Имя атрибутаОписание Тип



*КодСвойства


Числовой

Название

Название свойства

Текстовый

ЕдИзмерения

Единица измерения значения свойства

Текстовый


Ассоциативный объект «СвойстваОбъектаПокупателя»

Имя атрибутаОписание Тип



«КодОбъекта


Числовой

«КодСвойства


Числовой

«КодЛогОперации


Числовой

Значение

Значение свойства объекта

Текстовый




Ассоциативный объект «СписокУлиц»

Имя атрибутаОписание Тип



«КодАдреса


Числовой

«КодУлицы


Числовой


Ассоциативный объект «СписокРайонов»

Имя атрибутаОписание Тип



«КодАдреса


Числовой

«КодРайона


Числовой


Ассоциативный объект «ЖелаемыйАдрес»

Имя атрибутаОписание Тип



*КодЖелаемогоАдреса


Числовой

«КодСубъекта


Числовой

«КодНасПункта


Числовой






Рисунок 2 - Реляционная модель БД

Нормализация БД. Следующим шагом в проектировании реляционной БД является нормализация отношений. Должны отсутствовать нежелательные функциональные зависимости между атрибутами. Нормализированный набор таблиц обладает лучшими свойствами при включении, модификации и удалении данных, чем любой другой набор таблиц представляющий те же данные. Проектирование выполняется путем декомпозиции. При проектировании с использованием декомпозиции переходят от одной нормальной формы к другой нормальной форме более высокого уровня, сохраняя эквивалентность схем базы данных. Выделяют несколько нормальных форм (НФ): 1НФ, 2НФ, 3НФ, 4НФ, 5НФ. Каждая следующая НФ улучшает свойство схемы, сохраняя свойства предыдущей НФ.

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

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

Функциональная зависимость A ® B называется полной, если атрибут В функционально не зависит от любого подмножества атрибута А.

3) Все отношения находятся в третьей нормальной форме, так как они находятся во второй нормальной форме, и каждый не ключевой атрибут не транзитивно зависит от всех возможных ключей отношения.

В отношении R{A,B,C} существует транзитивная функциональная зависимость вида A ® B в том и только в том случае, если имеются функциональные зависимости (ФЗ) вида A ® С и С ® В и при этом отсутствует ФЗ вида С ® А.

Для примера рассмотрим таблицу “ЗаявкаВладельца”.

Все атрибуты таблицы атомарные. Ключевой атрибут “КодЗаявки” исключает появление картежей-дубликатов.

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

Ключевой атрибут “ КодЗаявки ” не имеет транзитивной зависимости с не ключевыми атрибутами. Аналогичный вывод можно сделать, рассмотрев остальные таблицы. Это доказывает, что все отношения находятся в третьей нормальной форме.

Процесс нормализации можно прекратить, так как третья нормальная форма является достаточной в данной ситуации.


3.       Администрирование базы данных

.1 Разработка подсистемы информационной безопасности БД и анализ результатов тестирования системы разграничения доступа

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

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

·              SELECT - право выбирать данные из таблицы;

·              INSERT - право вставлять в таблицу новые строки;

·              UPDATE - право изменять данные в таблице;

Таблица 2. Назначенные права на выборку и изменение данных в таблицах

Таблица

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

Директор

Сотрудник

Адрес

Разрешено (select,insert,update)

Запрещено

 Запрещено

Владелец

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЖелаемыйАдрес

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЗапросУслуги

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЗаявкаВладельца

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЗаявкаПокупателя

Разрешено (select,insert,update)

Запрещено

 Запрещено

Категория

Разрешено (select,insert,update)

Запрещено

 Запрещено

Клиенты

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЛогОперации

Разрешено (select,insert,update)

Запрещено

 Запрещено

НаселенныйПункт

Разрешено (select,insert,update)

Запрещено

 Запрещено

ОбъектВладельца

Разрешено (select,insert,update)

Запрещено

 Запрещено

ОбъектПокупателя

Разрешено (select,insert,update)

Запрещено

 Запрещено

ОперацииСОбъектом

Разрешено (select,insert,update)

 Запрещено

Запрещено

Покупатель

Разрешено (select,insert,update)

 Запрещено

Запрещено

Район

Разрешено (select,insert,update)

 Запрещено

Запрещено

Свойства

Разрешено (select,insert,update)

 Запрещено

Запрещено

СвойстваКатегории

Разрешено (select,insert,update)

 Запрещено

Запрещено

СвойстваОбПокупателя

Разрешено (select,insert,update)

 Запрещено

Запрещено

СвойстваОбъектаВладельца

Разрешено (select,insert,update)

 Запрещено

Запрещено

СписокРайонов

Разрешено (select,insert,update)

 Запрещено

Запрещено

СписокУлиц

Разрешено (select,insert,update)

 Запрещено

Запрещено

Субъект

Разрешено (select,insert,update)

 Запрещено

Запрещено

ТипУслуги

Разрешено (select,insert,update)

 Запрещено

Запрещено

Улица

Разрешено (select,insert,update)

 Запрещено

Запрещено


Таблица 3. Назначенные права на выполнение хранимых процедур

Таблица

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

Директор

Сотрудник

agency_add_address

Запрещено

Запрещено

Разрешено

agency_add_address_desired

Запрещено

Запрещено

Разрешено

agency_add_category

Запрещено

Запрещено

Разрешено

agency_add_category_propety

Запрещено

Запрещено

Разрешено

agency_add_client

Запрещено

Запрещено

Разрешено

agency_add_community

Запрещено

Запрещено

Разрешено

agency_add_district

Запрещено

Запрещено

Разрешено

agency_add_district_list

Запрещено

Запрещено

Разрешено

agency_add_logic_operation

Запрещено

Запрещено

Запрещено

agency_add_object_operation

Запрещено

Запрещено

Разрешено

agency_add_owner

Запрещено

Запрещено

Разрешено

agency_add_owner_object

Запрещено

Запрещено

Разрешено

agency_add_owner_object_propety

Запрещено

Запрещено

Разрешено

agency_add_owner_request

Запрещено

Запрещено

Разрешено

agency_add_propety

Запрещено

Запрещено

Разрешено

agency_add_service_request

Запрещено

Запрещено

Разрешено

agency_add_service_type

Запрещено

Разрешено

Разрешено

agency_add_street

Запрещено

Запрещено

Разрешено

agency_add_street_list

Запрещено

Запрещено

Разрешено

agency_add_subject

Запрещено

Запрещено

Разрешено

agency_add_taker

Запрещено

Запрещено

Разрешено

agency_add_taker_object

Запрещено

Запрещено

Разрешено

программа автоматизированная недвижимость

Приложение

Руководство пользователя

.        НАЗНАЧЕНИЕ СИСТЕМЫ

Система обеспечивает выполнение следующих основных функций:

)        Предоставление определенного тип услуги без регистрации новой заявки;

)        Регистрацию новой заявки на продажу объекта недвижимости;

)        Регистрацию новой заявки на сдачу объекта недвижимости в аренду;

)        Регистрацию новой заявки на покупку объекта недвижимости;

)        Регистрацию новой заявки на аренду объекта недвижимости;

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

)        Выполнение заявки.

Система является многопользовательской и может обеспечить безопасность хранящихся в ней данных. Для разработки использовались средства MS SQL Server 2008 RC2 Express. Внедрение системы позволяет осуществить удобный доступ к данным предметной области различным видам пользователей, а также система может быть использована для извлечения необходимой информации и проведения дальнейшего анализа.

Виды пользователей:

) «Администратор»

) «Сотрудник»

Для каждого пользователя реализованы отдельные процедуры для работы с базой.

2. УСЛОВИЯ ПРИМЕНЕНИЯ

.1 Программное обеспечение

Программа требует установки дополнительного программного обеспечения:

) Microsoft.NET Framework 3.5;

) Microsoft SQL Server 2008 RC2 Express.

) Microsoft SQL Server Management Studio

Программа не требует инсталляции.

.2 Требования к аппаратуре

Данный программный продукт выполняется под управлением операционной системы Windows 2000/2003/XP/ Vista/7.

Требования к аппаратуре определяются требованиями Microsoft SQL Server 2008 RC2 Express.

. ВЫПОЛНЕНИЕ ПРОГРАММЫ

.1. Запуск программы

Для начала работы необходимо запустить SQL Server Management Studio. При соединении необходимо ввести тип сервера, имя сервера, вид проверки подлинности, а так же имя входа и пароль. После соединения нужно открыть базу данных «Agency».

Рисунок 1. Аутентификация пользователя


3.2. Работа с программой

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

Пользователь «Администратор»

Имеет все права доступа без ограничений, а также имеет право назначать (забирать) права доступа другим пользователям системы.

Пользователь «Директор»

o   Добавление типа услуги

o   Изменение стоимости типа услуги

Пользователь «Сотрудник»

·        Регистрация клиента(владельца, покупателя)

·        Регистрация объекта клиента(владельца, покупателя)

·        Регистрация заявки клиента(владельца, покупателя)

·        Добавление типа услуги

·        Изменение стоимости типа услуги

·        Регистрация адреса объекта клиента(владельца)

·        Регистрация субъекта, населенного пункта, района, улицы

·        Регистрация операций с объектом

·        Регистрация желаемого адреса клиента(покупателя)

Вызов процедуры осуществляется командой Имя процедуры ‘Входные параметры’.

Таблица 1.

Название процедуры

Вызов

Описание

Добавление адреса

Exec agency_add_address ‘КодСубъекта’,’ КодНасПункта’,’ КодРайона’,’ КодУлицы’,’Дом’,’Квартира’

Регистрация нового адреса объекта владельца

Добавление желаемого адреса

Exec agency_add_address_desired ‘КодСубъекта’, ’ КодНасПункта’

Регистрация нового адреса объекта покупателя

Добавление категории

Exec agency_add_category ‘Название’

Регистрация новой категории объекта недвижимости

Добавление категории свойств

Exec agency_add_category_propety ‘КодКатегории’, ’ КодСвойства’

Сопоставление данной категории нового свойства

Добавление клиента

Exec agency_add_client  ‘Фамилия’, ’Имя’,’ Отчество’,’ Телефон’

Регистрация нового клиента агентства

Добавление населенного пункта

Exec agency_add_community ‘НазваниеПункта’

Регистрация населенного пункта

Добавление района

Exec agency_add_district ‘НазваниеРайона’

Регистрация нового района

Добавление адресу района

Exec agency_add_district_list  ‘КодАдреса’, ’ КодРайона’

Сопоставление адресу района

Добавление логической операции

Exec agency_add_logic_operation  ‘Операция’

Регистрация новой логической операции

Добавление новой операции

Exec agency_add_object_operation  ‘Операция’

Регистрация новой операции с объектом

Добавление владельца

Exec agency_add_owner ‘КодКлиента’

Регистрация владельца

Добавление объекта владельца

Exec agency_add_owner_object ‘НазваниеОб’, ’ КодКатегории’,’ КодАдреса’

Регистрация объекта владельца

Добавление свойств объекту

Exec agency_add_owner_object_propety ‘КодОбъекта’, ’ КодСвойства’, ’ ЗначениеСвойства’

Сопоставление объекту владельца свойств

Добавление заявки владельца

Exec agency_add_owner_request ‘КодВладельца’,’ КодОбъекта’,’ КодОперации’,’ Цена’,’ Исполнена’,’ Дата’

Регистрация заявки владельца

Добавление свойства

Exec agency_add_propety ‘НазваниеСвойства’,’ ЕдИзмерения’

Регистрация нового свойства объекта

Добавление запроса услуги

Exec agency_add_service_request ‘КодКлиента’,’ КодУслуги’

Сопоставление клиенту услуги

Добавление типа услуги

Exec agency_add_service_type ‘Услуга’,’ Стоимость’

Регистрация новой услуги

Добавление улицы

Exec agency_add_street ‘НазваниеУлицы’

Регистрация новой улицы

Добавление списка улиц

Exec agency_add_street_list ‘КодАдреса’,’ КодУлицы’

Сопоставление адресу улицы

Добавление субъекта

Exec agency_add_subject ‘НазваниеСубъекта’

Регистрация нового субъекта

Добавление покупателя

Exec agency_add_taker ‘КодКлиента’

Регистрация нового покупателя

Добавление объекта покупателя

Exec agency_add_taker_object ‘КодКатегории’,’ КодАдреса’

Регистрация абстрактного объекта покупателя

Добавление свойств объекту

Exec agency_add_taker_object_propety ‘КодОбъекта’,’ КодСвойства’,’ КодЛогОперац’,’ Значение’

Сопоставление абстрактному объекту свойств

Добавление заявки покупателя

Exec agency_add_taker_request ‘КодПокупателя’,’ КодОбъекта’,’ КодОперации’,’ КодЛогичОп’,’ Цена’,’ Исполнена’,’ Дата’

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

Выполнение заявки

Exec agency_perform_request ‘КодЗаявкиВлад’,’ КодЗаявкиПокуп’

Регистрация выполнения заявки

Регистрация абстрактного объекта покупателя

Exec agency_registration_abstract_object ‘КодКатегории’,’ Субъект’,’ НасПункт’

Процедура, объединяющая другие процедуры для добавления объекта

Универсальная регистрация клиента

Exec agency_registration_client ‘Фамилия’,’ Имя’,’ Отчество’,’ Телефон’,’ Группа’

Регистрация клиента и определение его в нужную группу

Регистрация реального объекта

Exec agency_registration_real_object ‘Название’,’КодКатегории’,’Субъект’,’ НасПункт’,’Район’,’ Улица’,’ Дом’,’ Квартира’

Процедура, объединяющая другие процедуры для добавления объекта

Добавление заявки покупателя

Exec agency_select_on_request ‘КодАбстрОбъекта’

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


Руководство администратора БД

1.       НАЗНАЧЕНИЕ СИСТЕМЫ

Система обеспечивает выполнение следующих основных функций:

)        Предоставление определенного тип услуги без регистрации новой заявки;

)        Регистрацию новой заявки на продажу объекта недвижимости;

)        Регистрацию новой заявки на сдачу объекта недвижимости в аренду;

)        Регистрацию новой заявки на покупку объекта недвижимости;

)        Регистрацию новой заявки на аренду объекта недвижимости;

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

)        Выполнение заявки.

Система является многопользовательской и может обеспечить безопасность хранящихся в ней данных. Для разработки использовались средства MS SQL Server 2008 RC2 Express. Внедрение системы позволяет осуществить удобный доступ к данным предметной области различным видам пользователей, а так же система может быть использована для извлечения необходимой информации и проведения дальнейшего анализа.

Виды пользователей:

) «Администратор»

) «Директор»

) «Сотрудник»

Для каждого пользователя реализованы отдельные процедуры для работы с базой.

.        ОБЯЗАННОСТИ И ЗАДАЧИ АДМИНИСТРАТОРА

Обычно администратор считается пользователем системы, однако, при этом он наделен как особыми обязанностями, так и необходимыми для их выполнения привилегиями.

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

Кроме того, администратор может заниматься ведением нормативно-справочной информации, загрузкой и выгрузкой данных, открытием и закрытием расчетных периодов и тому подобное.

.        ТРЕБОВАНИЕ К ОБЕСПЕЧЕНИЮ РАБОЧЕГО МЕСТА АДМИНИСТРАТОРА

Данный программный продукт выполняется под управлением операционной системы Windows 2000/2003/XP/ Vista/7.

Требования к аппаратуре определяются требованиями Microsoft SQL Server 2008 RC2 Express.

Программа требует установки дополнительного программного обеспечения:

) Microsoft.NET Framework 3.5;

) Microsoft SQL Server 2008 RC2 Express.

) Microsoft SQL Server Management Studio

.        ИНСТАЛЛЯЦИЯ

Для инсталляции базы данных необходимо:

1) Установить пакет Microsoft SQL Server 2008 RC2 Express и запустить Microsoft SQL Service Manager

) Пройти процедуру идентификации и аутентификации.

) Подключить к MS SQL Server базу данных, которая находится в файле «Agency.mdf»

.        ПОДСИСТЕМА ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ БД

Учетная запись «Администратор» будет обладать полными правами доступа ко всем объектам и возможность передавать эти права учетным записям.

Созданы три основные роли Admin, db_director, agent.

При помощи процедуры exec sp_addrolemember <role>,<user> имеется возможность добавлять новых пользователей к роли, там самым ограничивать их права соответствующим образом.

Таблица 1. Назначенные права на выборку и изменение данных в таблицах

Таблица

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

Директор

Сотрудник

Адрес

Разрешено (select,insert,update)

Запрещено

 Запрещено

Владелец

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЖелаемыйАдрес

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЗапросУслуги

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЗаявкаВладельца

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЗаявкаПокупателя

Разрешено (select,insert,update)

Запрещено

 Запрещено

Категория

Разрешено (select,insert,update)

Запрещено

 Запрещено

Клиенты

Разрешено (select,insert,update)

Запрещено

 Запрещено

ЛогОперации

Разрешено (select,insert,update)

Запрещено

 Запрещено

НаселенныйПункт

Разрешено (select,insert,update)

Запрещено

 Запрещено

ОбъектВладельца

Разрешено (select,insert,update)

Запрещено

 Запрещено

ОбъектПокупателя

Разрешено (select,insert,update)

Запрещено

 Запрещено

ОперацииСОбъектом

Разрешено (select,insert,update)

 Запрещено

Запрещено

Покупатель

Разрешено (select,insert,update)

 Запрещено

Запрещено

Район

Разрешено (select,insert,update)

 Запрещено

Запрещено

Свойства

Разрешено (select,insert,update)

 Запрещено

Запрещено

СвойстваКатегории

Разрешено (select,insert,update)

 Запрещено

Запрещено

СвойстваОбПокупателя

Разрешено (select,insert,update)

 Запрещено

Запрещено

СвойстваОбъектаВладельца

Разрешено (select,insert,update)

 Запрещено

Запрещено

СписокРайонов

Разрешено (select,insert,update)

 Запрещено

Запрещено

СписокУлиц

Разрешено (select,insert,update)

 Запрещено

Запрещено

Субъект

Разрешено (select,insert,update)

 Запрещено

Запрещено

ТипУслуги

Разрешено (select,insert,update)

 Запрещено

Запрещено

Улица

Разрешено (select,insert,update)

 Запрещено

Запрещено


Таблица 2. Назначенные права на выполнение хранимых процедур

Таблица

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

Директор

Сотрудник

agency_add_address

Запрещено

Запрещено

Разрешено

agency_add_address_desired

Запрещено

Запрещено

Разрешено

agency_add_category

Запрещено

Запрещено

Разрешено

agency_add_category_propety

Запрещено

Запрещено

Разрешено

agency_add_client

Запрещено

Запрещено

Разрешено

agency_add_community

Запрещено

Запрещено

Разрешено

agency_add_district

Запрещено

Запрещено

Разрешено

agency_add_district_list

Запрещено

Запрещено

Разрешено

agency_add_logic_operation

Запрещено

Запрещено

Запрещено

agency_add_object_operation

Запрещено

Запрещено

Разрешено

agency_add_owner

Запрещено

Запрещено

Разрешено

agency_add_owner_object

Запрещено

Запрещено

Разрешено

agency_add_owner_object_propety

Запрещено

Запрещено

Разрешено

agency_add_owner_request

Запрещено

Запрещено

Разрешено

agency_add_propety

Запрещено

Запрещено

Разрешено

agency_add_service_request

Запрещено

Запрещено

Разрешено

agency_add_service_type

Запрещено

Разрешено

Разрешено

agency_add_street

Запрещено

Запрещено

Разрешено

agency_add_street_list

Запрещено

Запрещено

Разрешено

agency_add_subject

Запрещено

Запрещено

Разрешено

agency_add_taker

Запрещено

Запрещено

Разрешено

agency_add_taker_object

Запрещено

Разрешено


.        СТРУКТУРА ТАБЛИЦ И СХЕМА ДАННЫХ

Структура таблиц

Таблица 1. Структура таблиц БД

Название таблицы

Имена столбцов

Тип данных

Адрес

КодАдресаАдр

PK,int, Не NULL


КодСубъектаАдр

FK,int, Не NULL


КодНасПунктаАдр

FK,int, Не NULL


КодРайонаАдр

FK,int, Не NULL


КодУлицыАдр

FK,int, Не NULL


Дом

nvarchar(50), Не NULL


Квартира

int, NULL

Владелец

КодВладельца

PK,int, Не NULL


КодКлиента

FK,int, Не NULL

ЖелаемыйАдрес

КодЖелАдреса

PK,int, Не NULL


КодСубъектаЖел

FK,int, Не NULL


КодНасПунктаЖел

FK,int, Не NULL

ЗапросУслуги

КодКлиента

FK,int, Не NULL


КодУслуги

FK,int, Не NULL

ЗаявкаВладельца

КодЗаявкиВлад

PK,int, Не NULL


КодВладельца

FK,int, Не NULL


КодОбъекта

FK,int, Не NULL


КодОперации

FK,int, Не NULL


Цена

money, Не NULL


Исполнена

bit, Не NULL


Дата

datatime, Не NULL

ЗаявкаПокупателя

КодЗаявкиПокуп

PK,int, Не NULL


КодПокупателя

FK,int, Не NULL


КодОбъекта

FK,int, Не NULL


КодОперации

FK,int, Не NULL


КодЛогичОп

FK,int, Не NULL


Цена

money, Не NULL


Исполнена

bit, Не NULL


Дата

datatime, Не NULL

Категория

КодКатегории

PK,int, Не NULL


НазваниеКатегории

nvarchar(225), Не NULL

Клиенты

КодКлиента

PK,int, Не NULL


Фамилия

nvarchar(225), Не NULL


Имя

nvarchar(225), Не NULL


Отчество

nvarchar(225), Не NULL


Телефон

nvarchar(225), Не NULL

ЛогОперации

КодЛогОп

PK,int, Не NULL


Операция

nvarchar(225), Не NULL

НаселенныйПункт

КодНасПункта

PK,int, Не NULL


НазваниеПункта

nvarchar(225), Не NULL

ОбъектВладельца

КодОбъектаВлад

PK,int, Не NULL


НазваниеОбВлад

nvarchar(225), Не NULL


КодКатегории

FK,int, Не NULL


КодАдреса

FK,int, Не NULL

ОбъектПокупателя

КодОбъектаПокуп

PK,int, Не NULL


КодКатегории

FK,int, Не NULL


КодАдреса

FK,int, Не NULL

ОперацииСОбъектом

КодОперСОб

PK,int, Не NULL


Операция

nvarchar(225), Не NULL

Покупатель

КодПокупателя

PK,int, Не NULL


КодКлиента

FK,int, Не NULL

Район

КодРайона

PK,int, Не NULL


НазваниеРайона

nvarchar(225), Не NULL

Свойства

КодСвойства

PK,int, Не NULL


НазваниеСвойства

nvarchar(225), Не NULL


ЕдИзмерения

nvarchar(50), Не NULL

СвойстваКатегории

КодКатегории

FK,int, Не NULL


КодСвойства

FK,int, Не NULL

СвойстваОбПокупателя

КодОбъекта

FK,int, Не NULL


КодСвойства

FK,int, Не NULL


КодЛогОперац

FK,int, Не NULL


Значение

nvarchar(225), Не NULL

СвойстваОбъектаВладельца

КодОбъекта

FK,int, Не NULL


КодСвойства

FK,int, Не NULL


ЗначениеСвойства

nvarchar(225), Не NULL

СписокРайонов

КодАдреса

FK,int, Не NULL


КодРайона

FK,int, Не NULL

СписокУлиц

КодАдреса

FK,int, Не NULL


КодУлицы

FK,int, Не NULL

Субъект

КодСубъекта

PK,int, Не NULL


НазваниеСубъекта

nvarchar(225), Не NULL

ТипУслуги

КодТипаУслуги

PK,int, Не NULL


Услуга

nvarchar(225), Не NULL


Стоимость

money, Не NULL

Улица

КодУлицы

PK,int, Не NULL


НазваниеУлицы

nvarchar(225), Не NULL




Схема данных

Похожие работы на - Программная реализация проекта 'Агентство недвижимости'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!