Сделай Сам Свою Работу на 5

Проектирование клиентского приложения





СОДЕРЖАНИЕ

 

ВВЕДЕНИЕ.. 4

1 АНАЛИЗ ТЕХНИЧЕСКОГО ЗАДАНИЯ И ИССЛЕДОВАНИЯ ПРЕДМЕТНОЙ ОБЛАСТИ 5

1.1 Характеристика требований на разработку. 5

1.2 Анализ предметной области. 5

2 ПРОЕКТИРОВАНИЕ СУБД.. 7

2.1 Проектирование БД.. 7

2.2 Проектирование клиентского приложения. 9

3 РЕАЛИЗАЦИЯ И ТЕСТИРОВАНИЕ СУБД.. 12

3.1 Разработка пользовательского интерфейса программы.. 12

3.2 Тестирование программного обеспечения. 15

ВЫВОД.. 18

СПИСОК ЛИТЕРАТУРЫ... 19

ПРИЛОЖЕНИЕ А.. 20

ПРИЛОЖЕНИЕ Б. 25

ПРИЛОЖЕНИЕ В.. 27

ПРИЛОЖЕНИЕ Г. 29

ПРИЛОЖЕНИЕ Д.. 31

 


ВВЕДЕНИЕ

 

В данном курсовом проекте требуется реализовать СУБД абонентов интернет – провайдера. В результате выполнения курсового проекта получится СУБД, к которой подключается клиентское приложение для считывания данных и их редактирования. Для выполнения работ в базе данных необходима авторизация, подразумевающая ввод login и password клиента. Так же реализована система уровней доступа, состоящая из «Пользователь», «Администратор», «Root».

Цель создания СУБД – упрощение работы администраторов по внесению новых пользователей и редактирование данных старых пользователей. СУБД – это средство управления базой данных, которая хранит электронную информацию о пользователях(в данном конкретном случае). К функциям СУБД можно отнести следующее:



- добавление информации о пользователе;

- удаление информации о пользователе;

- редактирование информации о пользователе;

- просмотр информации пользователя.

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

Для разработки используется язык программирования «JAVA» и среда разработки «eclipse».


 

АНАЛИЗ ТЕХНИЧЕСКОГО ЗАДАНИЯ И ИССЛЕДОВАНИЯ ПРЕДМЕТНОЙ ОБЛАСТИ

1.1 Характеристика требований на разработку

 

Целью данного курсового является написание приложение системы управления базой данных. База данных представлена программой «MySql». СУБД будет реализована на языке программирования «JAVA» в среде программирования «Eclips». Для обращения к базе данных будет использована библиотека «Hibernate», которая позволяет подключаться и управлять БД с помощью набора команд, заложенных в библиотеку. Для сохранения БД и восстановления данных будет использована утилита «Mysqldump», которая имеет простой синтаксис и не требует сложной настроки. Курсовой проект должен быть выполнен в соответствии с техническим заданием представленном в приложении А. На этапе тестирования необходимо соблюсти положения из протокола тестирования, представленного в приложении Б. Так же требуется разработать руководство пользователя. Руководство пользователя представлено в приложении В.



 

Анализ предметной области

 

 

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

- база данных должна содержать таблицы и столбцы в соответствии с блок-схемой приведённой в техническом задании на рисунке

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

 

СУБД должна реализовывать следующие функции:

- авторизация клиентского приложения на сервере. Для авторизации приложения на сервере необходимо считать «login» и «password» пользователя, желающего получить доступ к БД и сравнить с уже имеющимися записями о пользователях;



- добавление новых записей в БД. Для добавления записи в БД необходимо проверить на корректность заполнения все поля таблиц, подлежащие сохранению. Далее заполнить объекты классов, каждой таблицы и передать данные на сервер по средствам «Hibernate»;

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

- удаление имеющихся записей в БД. Для удаление данных необходимо получить «ID» записи, которую требуется удалить и по средствам «Hibernate» отослать данные подлежащие удалению на сервер БД;

- поиск по любому полю в БД. Для реализации поиска, требуется считать данные из текстового поля и поочерёдно сравнить с полями всех таблиц в БД. В случае совпадения данных(или нескольких совпадения) вывести все результаты в соответствующие текстовые поля. В случае отсутствия совпадений вывести сообщение о отсутствии записей, подходящих под это описание;

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

 

 


ПРОЕКТИРОВАНИЕ СУБД

 

В данном курсовом проекте требуется реализовать систему управления базой данных. Для реализации задания необходимо создать клиентское приложение, с определённым набором функций, описанных в техническом задании (Приложение А).

 

Проектирование БД

 

Для решения поставленной задачи необходимо разработать базу данных (далее БД), в третьей нормальной форме. На первом этапе проектирование БД требуется проанализировать данные, которые требуется хранить в БД. В результате анализа выделены следующие сущности:

 

- пользователь(User). Является основной сущностью. Содержит данные о логине, пароле, дате подключения, правах доступа, тарифе, типе соединения, аренде устройств, услуги виртуальный Витебск, а так же о заявках на ремонт, присылаемых пользователем;

- тариф. Содержит данные о названии тарифа и стоимости;

- тип соединения. Содержит данные о типе соединения, название коммутатора, номере порта;

- аренда устройств. Содержит данные о дате взятия в аренду устройства и стоимости аренды;

- устройство. Содержит данные о названии устройства, стоимости устройства и MAC адресе устройства;

- виртуальный Витебск. Содержит данные о стоимости услуги и IP адрес абонента;

- заявки на ремонт. Содержит данные о дате выполнения заявки, фамилии мастера, принявшего заявку, и коде ошибки.

 

Сущность «Тариф» связана с сущностью «Пользователь». Одна сущность «Тариф» может быть связана с n-ым количеством сущностей «Пользователь». Связь: один ко многим.

Сущность «Пользователь» связан с сущностью «Тип соединения». Одна сущность «Пользователь» может быть связана с одной сущностью «Тип соединения». Связь: один к одному.

Сущность «Пользователь» связан с сущностью «Аренда устройств». Одна сущность «Пользователь» может быть связана с одной сущностью «Аренда устройств». Связь: один к одному.

Сущность «Пользователь» связан с сущностью «Виртуальный Витебск». Одна сущность «Пользователь» может быть связана с одной сущностью «Виртуальный Витебск». Связь: один к одному.

Сущность «Пользователь» связан с сущностью «Заявки на ремонт». Одна сущность «Пользователь» может быть связана с n-ым количеством сущностей «Заявки на ремонт». Связь: один ко многим.

Сущность «Аренда устройств» связана с сущностью «Устройств». Одна сущность «Аренда устройств» может быть связана с одной сущностью «Устройство». Связь: один к одному.

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

 

Сущность Первичный ключ Атрибуты
Тариф Tarif_id Name Stoimost
Пользователь User_id Login Pass Tarif_id Date_connect Root
Аренда устройств Arenda_id Date Stoimost_arenda
Устройство Device_id Name Money MAC
Виртуальный Витебск Virtv_id Money IP
Тип соединения Type_id Type Name_switch Port_number
Заявки на ремонт Mail_id Date Cod_error Name_master

 

В техническом задании на разработку СУБД указано, что БД должна находиться в третьей нормальной форме. Пример получения БД в третьей нормальной форме представлен ниже на примере таблицы «Device_arenda»:

- первая нормальная форма. Пример первой нормальной формы представлен на рисунке 1. Первая нормальная форма должна соответствовать следующим условиям:

- все строки должны быть различными;

- все элементы внутри ячеек должны быть атомарными (не списками).

- вторая нормальная форма. Пример второй нормальной формы приведён на рисунке 2. Вторая нормальная форма должна соответствовать следующим условиям:

- таблица должна находиться в первой нормальной форме;

- любое её поле, не входящее в состав первичного ключа, функционально полно зависит от первичного ключа.

- третья нормальная форма. Пример третьей нормальной формы представлена на рисунке 2. Третья нормальная форма должна соответствовать следующим условиям:

- таблица находится во второй нормальной форме;

- любой её не ключевой атрибут функционально зависит только от первичного ключа.

 

Рисунок 1 – первая нормальная форма в БД

 

Рисунок 2 – вторая и третья нормальная форма БД

 

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

 

Проектирование клиентского приложения

 

 

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

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

 

Авторизация:

- считывание и валидация данных с формы;

- запрос на поиск в таблице «Users» пользователя с логином, совпадающим с логином введённом пользователем;

- при нахождении пользователя проверяем пароль, если пароль совпадает, то вывод сообщения о подсоединении к базе данных и открытие основного окна СУБД. Если пароль не совпадает, то выводится сообщение о отсутствии совпадений.

 

Создание нового пользователя:

- считывание и валидация данных;

- проверка на возможность создания пользователя с введённым логином, названием коммутатора и номером порта в коммутаторе;

- заполнение соответствующих классов, данными считаными с формы;

- передача классов в БД и сохранение.

 

Удаление пользователя/заявок(писем)/аренды устройств/услуги виртуальный Витебск:

- получение номера записи в БД с формы приложения;

- считывание записи из БД по средствам «hibernate»;

- передача данных класса в БД для удаления по средствам «hibernate».

 

Редактирование пользователя/заявок/аренды устройств и т.д.:

- считывание из БД данных в соответствующий класс приложения;

- вывод данных из класса в соответствующие поля на форме приложения;

- обрабатывание нажатия клавиши «Изменить»;

- считывание и валидация данных с формы;

- передача данных в БД по средствам «hibernate».

 

Просмотр списка пользователей:

- создание и инициализация вектора, служащего для заполнения столбцов таблицы;

- считывание данных из БД по 1 записи и добавление записи в вектор;

- вывод данных из вектора в таблицу.

 

Для реализации функции просмотра пользователей использовался вектор по ряду причин:

- упрощение поиска записи по номеру выбранной строки в таблице(в векторе номер записи будет совпадать с номером строки в БД, а номер строки с большой вероятностью не будет совпадать с номером записи в БД).

- уменьшение количества обращений на сервер, для считывания информации.

 

Добавление тарифного плана:

- считывание и валидация информации с формы приложения;

- проверка на возможность создания тарифа с требуемым названием;

- инициализация класса тарифа и заполнение класса данными;

- передача данных в БД по средствам «hibernate».

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.