Автор работы: Пользователь скрыл имя, 09 Сентября 2011 в 09:15, курсовая работа
Приложение «Providers» было разработано по заказу ставропольского филиала организации «StavropololoProvider», которое предоставляет услуги связи. Данное приложение разработано для мониторинга конкуренции на рынке интернет-провайдеров. База данных занимает одно из главенствующих мест в системе учета и контроля данного предприятия и требует особо внимания к своей работоспособности, при ее разработке учитывались мнение, как начальников данной организации, так и простых операторов ПК, непосредственно работающих с базой данных.
ВВЕДЕНИЕ 4
2 Описание предметной области 5
3 ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ 7
4 Организация выборки информации из базы данных 13
5 Разработка представлений для отображения результатов выборки 18
6 Проектирование хранимых процедур 20
7 Разработка механизмов управления данными в базе при помощи триггеров 22
7.1 Триггер для добавления данных 22
7.2 Триггер для удаления данных 24
8 Разработка технологий доступа к базе данных 27
8.1 Выбор пользователей базы данных 27
8.2 Выбор пользователей базы данных 27
9 Организация обмена данными между серверной частью и клиентским приложением 27
10 Организация обмена данными между серверной частью и клиентским приложением 28
11 Экономическое обоснование результатов внедрения программного продукта 28
12 Требования к техническому обеспечению 30
13 Инструкция по эксплуатации базы данных и клиентского приложения 31
ЗАКЛЮЧЕНИЕ 32
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ 33
ПРИЛОЖЕНИЕ 1 Экранные формы приложения 34
ПРИЛОЖЕНИЕ 2 Листинг программы 37
Содержание
Приложение «Providers» было разработано по заказу ставропольского филиала организации «StavropololoProvider», которое предоставляет услуги связи. Данное приложение разработано для мониторинга конкуренции на рынке интернет-провайдеров. База данных занимает одно из главенствующих мест в системе учета и контроля данного предприятия и требует особо внимания к своей работоспособности, при ее разработке учитывались мнение, как начальников данной организации, так и простых операторов ПК, непосредственно работающих с базой данных. Данное приложение использует технологии .Net Framework 2.0 в алгоритмически-логическом аспекте приложения. В качестве хранилища данных была использована реляционная база, управляемая языком SQL, из наличия использованных средств следует, что данное приложение будет использовано на операционных системах семейства Windows.
2.1
Общее описание предметной области
Существует множество предприятий, предоставляющих провайдерские услуги. У каждого из них могут быть филиалы в различных регионах.
Доступ в интернет предоставляется по различным технологиям, которым соответствуют разные тарифы. Тариф имеет следующие характеристики: наименование тарифа, скорость, размер абонентской платы, стоимость 1 минуты пользования интернета, стоимость 1 мегабайта скачанной или отправленной информации.
Кроме доступа в интернет, провайдеры могут предоставля дополнительные услуги, такие как IP-телевидение, электронная почта и т.д.
Для
анализа рынка интернет-провайдеров требуется
следующая статистическая информация:
коэффициент интернетификации региона,
количество провайдеров, работающих в
регионе, количество филиалов провайдера,
доля клиентов данного провайдера среди
всех пользователей. В результате проектирования
были разработаны методы расчета этих
показателей с использованием запросов
и хранимых процедур.
2.2
Описание входных документов и сообщений
Входными документами являются таблицы с данными о структуре филиалов интернет-провайдеров, демографическими данными о регионах, данными о тарифах и услугах. Входными сообщениями являются действия пользователя по выбору показателей, которые требуется рассчитать или запросов, которые необходимо исполнить, а так же значения переменных, необходимых для рассчетов.
2.3 Описание выходных документов и сообщений
Выходными
документами и сообщения будут
являться результаты выполнения запросов,
а так же модифицированные поля таблиц.
2.4
Список ограничений
В
данном курсовом проекте была разработана
реляционная база данных для описания
предметной области «Рынок интернет провайдеров».
Разработанная база данных предназначена
для ввода, накопления и долговременного
хранения информации о провайдерах, их
филиалах в различных регионах, тарифах
и технологиях доступа, также в ней формируется
статистическая информация о провайдерах.
3.1 Инфологическая модель базы данных
При концептуальном проектировании были выбраны основные сущности:
1) «провайдер»;
2) «филиал»;
3) «услуга»;
4) «тариф»;
5) «технология»;
6)
«регион».
3.1.1
Описание сущностей
В результате изучения предметной области и проектирования базы данных, был составлен следующий список атрибутов:
1) сущность «провайдер»
Id
Название
Адрес
Телефон
Веб-сайт
2) сущность «филиал»
Id
Название
Количество пользователей
Адрес
Телефон
Веб-сайт
Провайдер
Регион
Дата открытия
3) сущность «услуга»
Id
Название
4) сущность «тариф»
Id
Название
Скорость
Месячная плата
Цена за мегабайт
Цена за час
Технология
Филиал
5) сущность «технология»
Id
Название
Максимальная скорость
Признак беспроводности
6) сущность «регион»
Id
Название
Население
3.1.2
Описание связей
Классификация связей приведена в таблице 2.1
Таблица 2.1 «Классификация связей»
Номер связи | Родительская сущность | Дочерняя сущность | Тип связи |
1 | Провайдер | Филиал | 1:М |
2 | Филиал | Тариф | 1:М |
3 | Филиал | Услуги Филиалов | 1:М |
4 | Регион | Филиал | 1:М |
5 | Услуги | Услуги Филиалов | 1:М |
6 | Технология | Тариф | 1:М |
Выбор связи один ко многим обусловлен предметной областью. Так, например один провайдер может иметь несколько филиалов в разных регионах, а один филиал - множество тарифов.
3.1.3 ER-диаграмма
Рисунок
3.1 – ER-диаграмма
3.2 Даталогическая модель
3.2.1
Диаграмма связи по полям
В процессе проектирования базы данных были выявлены следующие функциональные зависимости:
Таблица 2.2– состав таблицы Providers
Имя | Функциональные зависимости |
id | |
Name | |
Address | |
Phone | |
Website | |
Таблица 2.3– состав таблицы Affiliates
Имя | Функциональные зависимости |
id | |
Name | |
Users | |
Address | |
Phone | |
Website | |
| |
| |
|
Таблица 2.4 – состав таблицы Tariffs
Имя | Функциональные зависимости |
id | |
Name | |
Speed | |
MonthFee | |
TrafficPrice | |
HourPrice | |
| |
|
Таблица 2.5 – состав таблицы Technology
Имя | Функциональные зависимости |
id | |
Name | |
MaxSpeed | |
Wire |
Таблица 2.5 – состав таблицы Services
Имя | Функциональные зависимости |
id | |
Name |
Таблица 2.5 – состав таблицы AffiliateServices
Имя | Функциональные зависимости |
id | |
Affiliate_id | |
Service_id |
Таблица 2.5 – состав таблицы Regions
Имя | Функциональные зависимости |
id | |
Name | |
Population |
В данной работе используются следующие запросы:
SELECT DISTINCT dbo.Regions.Name, dbo.Providers.Name AS Expr1, dbo.Tariffs.Name AS Expr2
FROM dbo.Regions INNER JOIN
dbo.Affiliates INNER JOIN
dbo.Providers ON dbo.Affiliates.Provider_id = dbo.Providers.id INNER JOIN
dbo.Tariffs ON dbo.Affiliates.id = dbo.Tariffs.Affiliate_id INNER JOIN
dbo.Technology ON dbo.Tariffs.Technology_id = dbo.Technology.id ON dbo.Regions.id = dbo.Affiliates.Region_id
WHERE (dbo.Technology.Name LIKE '%DSL')
SELECT DISTINCT
dbo.Regions.Name AS Регион, dbo.Providers.Name AS Провайдер, dbo.Tariffs.Name AS Тариф, dbo.Tariffs.MonthFee,
dbo.Technology.Name AS Технология, dbo.Tariffs.Speed
FROM dbo.Regions INNER JOIN
dbo.Affiliates INNER JOIN
dbo.Providers ON dbo.Affiliates.Provider_id = dbo.Providers.id INNER JOIN