Разработка базы данных для учета деятельности службы технической поддержки
Системный анализ и анализ требований к базе данных. Особенности создания отчетов, запросов и форм в Visual Studio 2012. Программная реализация ER-диаграммы. Создание инфологической, логической и физической модели базы данных. Генерация ее в SQL Server.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 22.11.2012 |
Размер файла | 1,0 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Оглавление
- Введение
- 1 Системный анализ и анализ требований к базе данных
- 2 ERD - Диаграмма
- 3 Программная реализация ER - диаграммы
- 4 Создание форм в Visual Studio 2012
- Заключение
- Список использованных источников
- Введение
- Эффективность работы любого предприятия зависит от систем обработки информации. Такая система должна:
- · обеспечивать получение общих и/или детализированных отчетов по итогам работы;
- · позволять легко определять тенденции изменения важнейших показателей;
- · обеспечивать получение информации, критической по времени, без
- существенных задержек;
- · выполнять точный и полный анализ данных.
- База данных - это информационная модель, позволяющая упорядоченно хранить данные о группе объектов, обладающих одинаковым набором свойств. Большинство современных баз данных, независимо от того, реализованы ли они на компьютере или нет, для хранения данных используют таблицы. В последнее время наибольшее распространение получили реляционные базы данных. В реляционной базе данных информация хранится в одной или нескольких таблицах. Связь между таблицами осуществляется посредством значений одного или нескольких совпадающих полей.
Для взаимодействия с пользователями используются системы управления базами данных (СУБД). Одной из таких СУБД является Microsoft SQL Server.
В настоящем отчете разработано теоретическое обоснование базы данных для её дальнейшей практической реализации.
Задачей отчета является системный анализ и анализ требований к базе данных, создание инфологической, логической и физической модели базы данных, генерация ее в SQL Server 2012, создание отчетов, запросов и форм в Visual Studio 2012.
1. Системный анализ и анализ требований к базе данных
Вы работаете в некоторой средней или крупной организации. Организация имеет собственную ИТ-инфраструктуру, включающую различное аппаратное обеспечение (рабочие станции, серверы, принтеры, копировальная техника и т.д.), программное обеспечение, сеть. При возникновении проблем, связанных с любым из компонентов ИТ-инфраструктуры, сотрудники организации обращаются в call-центр, где операторы регистрируют заявки от сотрудников. Также имеется отдел - служба технической поддержки - сотрудники которого устраняют проблемы по всем сформированным заявкам - т.н. исполнители.
Все сотрудники организации зарегистрированы в справочнике сотрудников. О каждом сотруднике хранится: ФИО, паспортные данные, адрес регистрации, ИНН, номер пенсионного страхования, отдел, должность, адрес электронной почты, рабочий телефон.
При регистрации заявки фиксируется:
- дата (с указанием часов и минут) регистрации заявки;
- дата планового времени исполнения заявки (назначается оператором по согласованию с сотрудником, подающим заявку);
- сотрудник, от которого она поступила;
- тема заявки (формирует оператор со слов сотрудника);
- рубрика (заполняется из справочника - например, программная ошибка, неисправность оборудования и т.п.);
- текст заявки (формирует оператор со слов сотрудника).
Для реализации функции регистрации заявок необходимо разработать интерфейс оператора отдела приема заявок.
Для сотрудников службы технической поддержки требуется разработать отдельный интерфейс.
Все зарегистрированные заявки видны исполнителям в общем списке. Исполнитель может открыть любую заявку, прочитать ее и взять на исполнение. При этом фиксируется дата и время взятия заявки на исполнение, исполнитель. После выполнения заявки исполнитель фиксирует этот факт, и в заявке регистрируется дата и время выполнения заявки.
На основе данных, зарегистрированных в системе, можно впоследствии сформировать различные отчеты, которые характеризуют деятельность службы технической поддержки.
1) динамка поступления заявок по дням за период, определенный пользователем:
- дата,
- количество заявок.
Итого - отдельной строкой - общее количество за период.
2) динамка поступления заявок по месяцам в разрезе рубрик за период, определенный пользователем:
- месяц, год,
- рубрика,
- количество заявок,
- среднее время исполнения заявки в данной рубрике.
Итого - отдельной строкой - общее количество за период.
3) динамка выполнения заявок по дням за период, определенный пользователем:
- дата,
количество заявок.
Итого - отдельной строкой - общее количество за период.
1) динамка выполнения заявок месяца в разрезе исполнителей за период, определенный пользователем,:
- исполнитель,
- месяц, год,
количество заявок.
Итого - отдельной строкой - общее количество за период.
2. ERD - диаграмма
ERD-диаграмма позволяет рассмотреть систему целиком и выяснить требования, необходимые для ее разработки, касающиеся хранения информации.
ERD-диаграммы можно подразделить на отдельные куски, соответствующие отдельным задачам, решаемым проектируемой системой. Это позволяет рассматривать систему с точки зрения функциональных возможностей, делая процесс проектирования управляемым.
Логическая модель
При создании концептуальной модели были определены сущности и атрибуты сущностей. Была выделена одна основная сущность. Из этих данных составлена логическая модель базы данных представленная на рисунке 1.
Рис. 1 - Логическая модель БД.
В логической модели базы данных использованы связи один ко многим. Это означает, что один экземпляр первой сущности взаимодействует с несколькими экземплярами другой сущности. Взаимосвязи отображаются линиями, соединяющими две сущности с точкой на одном конце и глаголом, располагаемым над линией. Каждая сущность делится на 2 группы. В первой группе находятся атрибуты, называемые первичным ключом. Первичный ключ -- это набор атрибутов, выбранных для идентификации уникальных экземпляров сущности. Первичный ключ нужен для того, чтобы от него создавать связи между другими таблицами.
При создании сущности необходимо выделить атрибуты, которые могут стать первичным ключом (потенциальные ключи), затем произвести отбор атрибутов, следуя следующим рекомендациям:
1. Первичный ключ должен быть подобран таким образом, чтобы по значениям атрибутов, в него включенных, можно было точно идентифицировать экземпляр сущности;
2. Никакой из атрибутов первичного ключа не должен иметь нулевое значение.
3. Значения атрибутов первичного ключа не должны меняться. Если значение изменилось, значит, это уже другой экземпляр сущности.
В моей базе данных первичный ключ это «Номер», так как он не допускает ввода пустых значений, с его помощью можно идентифицировать экземпляр сущности, и его значение не меняется.
Как следует из названия, не ключевой атрибут -- это атрибут, который не был выбран ключевым. Не ключевые атрибуты располагаются под чертой, в области данных.
Потенциальный ключ, который не стал первичным называется альтернативным ключом (Alternate key). Erwin может выделять атрибуты альтернативных ключей. В дальнейшем, по умолчанию генерируется уникальный индекс. Когда создается альтернативный ключ, на диаграмме рядом с атрибутом появляется символ (АК). В моей базе данных альтернативных ключей не было.
На диаграмме рядом со связью отражается ее имя, показывающее отношение между сущностями. При проведении связи между сущностями первичный ключ передается или мигрирует в дочернюю сущность.
Физическая модель.
Рис. 2 - Физическая модель базы данных
Целью создания физической модели является обеспечение администратора соответствующей информацией для переноса логической модели данных в СУБД.
Erwin поддерживает автоматическую генерацию физической модели данных для конкретной СУБД. При этом логическая модель трансформируется в физическую по следующему принципу: сущности становятся таблицами, атрибуты становятся столбцами, а ключи становятся индексами (таблица 8).
Таблица 8 - Сопоставление компонентов логической и физической модели
Логическая модель |
Физическая модель |
|
Сущность |
Таблица |
|
Атрибут |
Столбец |
|
Логический тип |
Физический тип |
|
Первичный ключ |
Первичный ключ, индекс PK |
|
Внешний ключ |
Внешний ключ, индекс FK |
|
Альтернативный ключ |
Индекс AK |
|
Правило бизнес - логики |
Триггер или сохраненная процедура |
|
Взаимосвязи |
Взаимосвязи, определяемые FK атрибутами |
3. Программная реализация ER-диаграммы
Создаваться БД будет в MS SQL Server 2012, используя sql запросы.
Для удаления таблиц используем DROP TABLE <название таблицы>.
DROP TABLE zayvka;
DROP TABLE sotrudnoki;
DROP TABLE rubrika;
DROP TABLE otdely;
DROP TABLE doljnosty;
Для создания таблиц используются CREATE TABLE <название табл.>, в скобках указываем атрибуты с его свойствами (тип, ключ. поля, уникальность и т.д.). Для полей которые будут уникальны указываем свойство PRIMARY KEY.
CREATE TABLE [doljnosty](
[name] [varchar](40) PRIMARY KEY NOT NULL);
// создаем табл. otdely
CREATE TABLE [dbo].[otdely](
[name] [varchar](40) PRIMARY KEY NOT NULL);
// создаем табл. rubrika
CREATE TABLE [dbo].[rubrika](
[name] [varchar](40) PRIMARY KEY NOT NULL);
// создаем табл. sotrudnoki
CREATE TABLE [dbo].[sotrudnoki](
[inn] [int] PRIMARY KEY NOT NULL,
[familia] [varchar](40) NOT NULL,
[name] [varchar](40) NOT NULL,
[otchestvo] [varchar](40) NOT NULL,
[pasport_nomer] [varchar](10) NOT NULL,
[pasport_seria] [varchar](10) NOT NULL,
[addres_gorod] [varchar](100) NULL,
[addres_ulica] [varchar](100) NULL,
[addres_dom] [varchar](10) NULL,
[addres_kvartira] [varchar](10) NULL,
[nomer_pensionnogo] [varchar](30) NULL,
[otdel] [varchar](40) NOT NULL,
[dolgnost] [varchar](40) NOT NULL,
[email] [varchar](50) NULL,
[phone] [varchar](20) NULL);
Если необходимо указать, что поле заполняется автоматически, то ставим свойство IDENTITY(<начало>,<шаг>)
// создаем табл. zayvka
CREATE TABLE [dbo].[zayvka](
[id] [int] IDENTITY(1,1) PRIMARY KEY NOT NULL,
[date_create] [datetime] NOT NULL,
[date_poplanu] [datetime] NULL,
[zakazchik] [int] NOT NULL,
[tema] [varchar](120) NOT NULL,
[rubrika] [varchar](40) NOT NULL,
[text_zayvki] [varchar](250) NOT NULL,
[date_start] [datetime] NULL,
[date_end] [datetime] NULL,
[ispolnitel] [int] NULL);
Отредактируем таблицы, добавив внешние ключи.
ALTER TABLE [dbo].[sotrudnoki] WITH CHECK ADD CONSTRAINT [R_6] FOREIGN KEY([dolgnost]) REFERENCES [dbo].[doljnosty] ([name]);
ALTER TABLE [dbo].[sotrudnoki] CHECK CONSTRAINT [R_6];
ALTER TABLE [dbo].[sotrudnoki] WITH CHECK ADD CONSTRAINT [R_7] FOREIGN KEY([otdel]) REFERENCES [dbo].[otdely] ([name]);
ALTER TABLE [dbo].[sotrudnoki] CHECK CONSTRAINT [R_7];
ALTER TABLE [dbo].[zayvka] WITH CHECK ADD CONSTRAINT [R_4] FOREIGN KEY([ispolnitel]) REFERENCES [dbo].[sotrudnoki] ([inn]);
ALTER TABLE [dbo].[zayvka] CHECK CONSTRAINT [R_4];
ALTER TABLE [dbo].[zayvka] WITH CHECK ADD CONSTRAINT [R_5] FOREIGN KEY([zakazchik]) REFERENCES [dbo].[sotrudnoki] ([inn])
ON UPDATE CASCADE
ON DELETE CASCADE;
ALTER TABLE [dbo].[zayvka] CHECK CONSTRAINT [R_5];
ALTER TABLE [dbo].[zayvka] WITH CHECK ADD CONSTRAINT [R_8] FOREIGN KEY([rubrika])
REFERENCES [dbo].[rubrika] ([name]);
ALTER TABLE [dbo].[zayvka] CHECK CONSTRAINT [R_8];
Так же добавим ограничения, что бы дата исполнения не была меньше даты заказа.
ALTER TABLE [dbo].[zayvka] WITH CHECK ADD CONSTRAINT [zayvkacheck] CHECK (([date_create]<=[date_start] AND [date_start]<=[date_end]));
ALTER TABLE [dbo].[zayvka] CHECK CONSTRAINT [zayvkacheck];
4. Создание форм в среде Visual Studio 2012
Для начала создадим новый источник данных, для связи ПО с созданной БД. база данные visual studio
Для этого заходим в закладку «Источники данных» и нажимаем кнопку новый. В результате выбора БД мы увидим наши таблицы, т.к. они все нам нужны выделяем их и нажимаем кнопку Готово.
Рисунок 3. Подключение БД
После подключения БД, создаем формы через обозреватель решений.
Рисунок 4. Создание форм
Добавляем элементы на форму DataSet, DataGridView для просмотра и BridingSource для связи с источником.
Также создаем кнопки для сохранения, добавления и удаления записей.
И создаем элементы для создания и редактирования записей (рис.5).
Рисунок 5.
И по ТЗ к ПО создаем меню, с полями: Файл, Справочники и Помощь.
Для закладки Сотрудники (рис.6) добавим просмотр его заявок и фильтрации по отделам.
Рисунок 6.
Отчеты
Для отчетов создадим дополнительные поля с типом datetime. А отчеты сделаем через конструктор элемента ReportViewer.
Рисунок 7. Макет
Для вычисления среднего времени используем следующую формулу
(Sum(Fields!date_end.Value-Fields!date_start.Value)/(36000000000)*60)/count(Fields!date_end.Value)
Рисунок 8. Отчет 1
Программирование элементов:
Создание новых элементов в БД.
this.Validate();
this.sotrudnokiBindingSource.AddNew();
Удаление выбранных строк.
this.Validate();
this.sotrudnokiBindingSource.RemoveCurrent();
Сохранение данных
this.Validate();
this.sotrudnokiBindingSource.EndEdit();
this.sotrudnokiTableAdapter.Update(this.bd_kursovayDataSet.sotrudnoki);
Фильтрация сотрудников
int bb = sotrudnokiDataGridView.CurrentCell.RowIndex;
int bbb = this.comboBox5.SelectedIndex;
if (bbb == 0) sotrudnokiBindingSource.Filter = "otdel = '" + sotrudnokiDataGridView[4, bb].Value + "'";
if (bbb == 1) sotrudnokiBindingSource.Filter = "dolgnost = '" + sotrudnokiDataGridView[5, bb].Value + "'";
Открытие форм.
Form3 form22 = new Form3(); form22.Show();
Связь отчетов с формами
reportViewer1.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("d1", date1.Value.ToString()));
reportViewer1.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("d2", date2.Value.ToString())); this.reportViewer1.RefreshReport();
reportViewer2.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("d1", date1.Value.ToString()));
reportViewer2.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("d2", date2.Value.ToString())); this.reportViewer2.RefreshReport();
reportViewer3.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("d1", date1.Value.ToString()));
reportViewer3.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("d2", date2.Value.ToString())); this.reportViewer3.RefreshReport();
reportViewer4.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("d1", date1.Value.ToString()));
reportViewer4.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("d2", date2.Value.ToString())); this.reportViewer4.RefreshReport();
Заключение
В курсовом проекте была разработана база данных для учета деятельности службы технической поддержки.
Были разработаны БД, таблицы, формы, отчеты благодаря которым можно организовать работу персонала.
Были рассмотрены приемы проектирования и реализации реляционных баз данных и таблиц в СУБД MS SQL Server 2012 и Visual Studio 2012. Создана инфологическая модель, логическая и физическая модель в Erwin, спроектирована структура реляционной базы данных.
База данных имеет удобный интерфейс. Для нее необходим персональный компьютер на рабочем месте сотрудника с установленной программой MS SQL Server 2012 и старше.
Дальнейшее совершенствование базы данных позволит расширить возможности БД и облегчить работу персонала (к примеру, можно добавить новые отчеты и запросы).
Список использованных источников
1. Крёнке Д. Теория и практика построения баз данных: пер. с англ. / Д. Крёнке. - 9-е изд.. - СПб.: Питер, 2005. - 859 с.
2. Швецов, В. И. Базы данных: учебное пособие / В. И. Швецов; Нижегород. гос. ун-т [Электронный ресурс]. Режим доступа: http://window.edu.ru/window_catalog/redir?id=61460&file=shvetsov-lectures.pdf
3. Подвальный С.Л. Базы данных: учебное пособие для вузов / С.Л. Подвальный, Т.И. Сергеева, Д.А. Ризванов; УГАТУ, Воронеж. гос. техн. ун-т. - Уфа: УГАТУ, 2004.- 219 с.
4. Дейт К. Дж. Введение в системы баз данных: учебник / К. Дж. Дейт; пер. с англ. и ред. К. А. Птицына.-8-е изд.- М.: Вильямс, 2005.-1328 с.
5. Дейт К. Дж. Основы будущих систем баз данных. Третий манифест / К. Дж. Дейт, Хью Дарвен; под ред. С. Д. Кузнецова; перевод с англ. С. Д. Кузнецова, Т. А. Кузнецовой.-2-е изд..- М.: Янус-К, 2004.-656 с.
6. Мамаев Е.В. Microsoft SQL Server 2000: Наиболее полное руководство.-СПб.: БХВ-Петербург, 2001.-1280с.
7. Хомоненко А.Д. Базы данных: учебник для вузов / А.Д. Хомоненко, В.М. Цыганков, М.Г. Мальцев; под ред. А.Д. Хомоненко.-4-е изд., доп. и перераб. - СПб.: КОРОНА принт, 2004.-736 с.
8. Кузнецов С.Д. SQL: Язык реляционных баз данных: Справ. руководство / С.Д. Кузнецов.- М.: Майор, 2001.-192 с.
9. Хомоненко, А. Д. Работа с базами данных в C++ Builder : практическое руководство разработчика / А. Д. Хомоненко, С. Е. Ададуров .-- Санкт-Петербург : БХВ-Петербург, 2006
Размещено на Allbest.ru
Подобные документы
Системный анализ и оценка требований к базе данных. Концептуальная (инфологическая) модель предметной области. Построение ERD-диаграммы и физической модели в методологии IDEF1X. Составление форм, запросов и отчетов в среде СУБД Visual FoxPro 8.0.
курсовая работа [1,3 M], добавлен 24.06.2013Построение инфологической концептуальной модели предметной области. Структура базы данных Microsoft Office Access. Формы, запросы и отчеты. Создание форм, запросов и отчетов в базах данных. Схема данных физической и логической сущности в Erwin 4.0.
курсовая работа [5,1 M], добавлен 13.12.2011Анализ требований к базе данных. Концептуальная (инфологическая) модель предметной области. Сопоставление компонентов логической и физической модели. Создание форм, запросов и отчетов в среде СУБД Visual FoxPro 8.0. Расчеты по аккредитивам и чекам.
курсовая работа [1,7 M], добавлен 24.06.2013Освоение сервисной системы управления базами данных Microsoft SQL. Разработка базы данных "Служба АТС" в среде Microsoft SQL Server Management Studio и создание запросов на языке SQL. Апробация инфологической модели "сущность - связь" базы данных.
курсовая работа [2,9 M], добавлен 29.06.2015Методы проектирования базы данных по заданной предметной области с использованием CASE-средств ER/Studio и СУБД MS Access. Формирование и связывание таблиц, ввод данных. Создание экранных форм, запросов, отчетов, меню приложения. Генерация приложения.
курсовая работа [884,0 K], добавлен 08.09.2010Установка "Microsoft SQL SERVER 2012". Создание файла данных, журнала транзакций, таблиц, запросов и фильтров, диаграмм и триггеров, табличных форм и отчетов. Подключение файла данных к проекту. Создание простых и сложных ленточных форм для работы с ними.
курсовая работа [1,9 M], добавлен 13.12.2013Информационные задачи и круг пользователей системы. Выработка требований и ограничений. Разработка проекта базы данных. Программная реализация проекта базы данных. Разработка хранимых процедур для поддержки сложных ограничений целостности в базе данных.
курсовая работа [706,2 K], добавлен 17.06.2012Особенности разработки инфологической модели и создание структуры реляционной базы данных. Основы проектирования базы данных. Разработка таблиц, форм, запросов для вывода информации о соответствующей модели. Работа с базами данных и их объектами.
курсовая работа [981,4 K], добавлен 05.11.2011Построение инфологической, логической и физической модели предметной области. Ограничения целостности базы данных. Организация ввода и корректировки данных. Описание информационных потребностей пользователей. Реализация запросов, построение отчетов.
курсовая работа [2,9 M], добавлен 22.01.2015Сущности и функциональные зависимости базы данных. Атрибуты и связи. Таблицы базы данных. Построение ER-диаграммы. Организация ввода и корректировки данных. Реляционная схема базы данных. Реализация запросов, получение отчетов. Защита базы данных.
курсовая работа [2,4 M], добавлен 06.02.2016