Автор работы: Пользователь скрыл имя, 20 Февраля 2013 в 10:54, курсовая работа
В настоящее время практически ни одно учреждение не может обойтись без использования компьютерных средств автоматизации. Это связано с бурным развитием общества и, вследствие этого, резко увеличившимися потоками обрабатываемой в ходе повседневной трудовой деятельности информации.
Ежегодно спрос на сервисное обслуживание, новые автомобили и гарантированное обслуживание средств передвижения вызывает рост количества автосалонов и усложнение деятельности уже существующих автосалонов. Это требует автоматизации ведения дел.
Введение 4
1 Описание предметной области системы управления продажами в автосалоне и определение требований к системе 5
1.1 Описание предметной области 5
1.2 Определение требований к системе 6
2 Постановка задачи и обзор методов ее решения 7
2.1 Постановка задачи 7
2.2 Обзор методов решения задачи 7
3 Модели представления системы управления продажами в автосалоне и их описание 8
4 Информационная модель системы управления продажами в автосалоне и её описание 10
4.1 Информационная модель 10
4.2 Нормализация 12
5 Обоснование оригинальных решений по использованию технических и программных средств, не включенных в требования 14
6 Описание алгоритмов реализующих бизнес-логику серверной части системы управления продажами в автосалоне 16
7 Руководство пользователя по работе с системой управления продажами в автосалоне и результаты тестирования 18
8 Оценка выполнения задач 33
Заключение 34
Список использованных источников 35
Информационная модель системы была разработана с использованием методологии стандарта IDEF1.x (рисунок 4.1).
Рисунок 4.1– Информационная модель системы управления продажами в автосалоне
При разработке системы была определена необходимость следующих сущностей:
1. Автомобиль
Сущность содержит информацию об автомобилях на складах автосалонов и имеет следующие атрибуты:
- производитель автомобиля
- конкретная модель
- год выпуска
- цвет автомобиля
- стоимость автомобиля в
- пробег в километрах
- фотография автомобиля
2. Производитель
Сущность содержит в себе информацию о производителях автомобилей и имеет следующие атрибуты:
- название производителя
- информация о производителе.
3. Клиент
Содержит в себе информацию о клиентах автосалонов и имеет следующие атрибуты:
- фамилия клиента
- имя клиента
- отчество клиента
- номер и серия паспорта
4. Продажа
Содержит в себе информацию о продажах автомобилей конкретным лицам и характеризуется следующими атрибутами:
- покупатель автомобиля (клиент)
- автомобиль, который был продан
- дата продажи
- информация о продаже (
В модели присутствуют 3 идентифицирующих связи «один-ко-многим». Данные связи были выбраны по следующим соображениям:
1. Каждый автомобиль имеет одного производителя в одном автосалоне, два разных производителя не могут производить один и тот же автомобиль.
2. Один
автомобиль может купить
Первая нормальная форма:
Сущность находится в первой нормальной форме, если все атрибуты являются простыми или атомарными (их нельзя разделить на составные части без потери смысла) и среди атрибутов отсутствуют повторяющиеся группы. Также, не допускается хранить в одном атрибуте разные по смыслу значения.
Для приведения сущности к первой нормальной форме необходимо:
1) разделить сложные атрибуты на атомарные;
2) для групп повторяющихся атрибутов создать новые сущности;
3) установить с новыми сущностями связи типа «один ко многим»;
4) атрибуты, хранящие разносмысловую информацию, разделить на односмысловые.
Моя информационная модель соответствует вышеперечисленным требованиям, следовательно, находится в первой нормальной форме.
Вторая нормальная форма:
Сущность находится во второй нормальной форме, если она находится в первой нормальной форме и в ней отсутствуют неключевые атрибуты, функционально зависящие от части первичного ключа. Сущность, имеющая простой первичный ключ (т.е. состоящий из одного атрибута) и находящаяся в первой нормальной форме, автоматически находится и во второй нормальной форме.
Для приведения сущности ко второй нормальной форме необходимо:
1) выделить атрибуты, которые функционально зависят только от части первичного ключа;
2) поместить их в новую сущность;
3) установить с новой сущностью связь типа «один ко многим»;
4) повторить указанные выше действия, если это необходимо.
Моя информационная модель соответствует вышеперечисленным требованиям, следовательно, находится во второй нормальной форме.
Третья нормальная форма:
Сущность находится в третьей нормальной форме, если она находится во второй нормальной форме, и отсутствуют функциональные зависимости между ее неключевыми атрибутами.
Другая формулировка. Сущность находится в третьей нормальной форме, если она находится во второй нормальной форме и каждый ее неключевой атрибут не транзитивно зависит от первичного ключа.
Таким образом, можно сказать, что в третьей нормальной форме каждый неключевой атрибут сущности функционально зависит только от всего первичного ключа и ни от чего другого.
Для приведения сущности к третьей нормальной форме необходимо:
1) выделить атрибуты, которые функционально зависят от одного и того же неключевого атрибута;
2) поместить их в новую сущность;
3) установить с новой сущностью связь типа «один ко многим»;
4) повторить указанные выше операции, если это необходимо.
Моя информационная модель соответствует вышеперечисленным требованиям, следовательно, находится в третьей нормальной форме.
Взаимодействие клиента с сервером было решено осуществить по протоколу удаленного вызова методов RMI:
Технология Remote Method Invocation (RMI), впервые представленная в JDK 1.1, продвинула сетевое программирование на более высокий уровень. Хотя RMI относительно проста в использовании, она является необыкновенно мощной технологией и раскрывает перед обычным Java-программистом полностью новую парадигму – мир распределенных объектных вычислений.
Целью разработки архитектуры RMI было создание распределенной объектной модели Java, которая свободно интегрируется в язык программирования Java и локальную объектную модель. Разработчики RMI достигли этой цели; была создана система, которая переносит безопасность и устойчивость архитектуры Java в мир распределенных вычислений.
Архитектура RMI основана на одном важном принципе: определение поведения и реализация этого поведения считаются разными понятиями. RMI дает возможность разделить и выполнить на разных JVM код, определяющий поведение, и код, реализующий поведение.
Это прекрасно
соответствует требованиям
Конкретно в RMI определение удаленной службы кодируется при помощи интерфейса Java. Реализация удаленной службы кодируется в классе. Таким образом, ключ к пониманию RMI – помнить, что интерфейсы определяют поведение, а классы определяют реализацию.
Рассмотрев
высокоуровневую архитектуру
Транспортный уровень основан на соединениях ТСР/IР между сетевыми машинами. Он обеспечивает основные возможности соединения и некоторые стратегии защиты от несанкционированного доступа.
При использовании
уровневой архитектуры каждый из
уровней может быть изменен или
заменен без воздействия на остальную
систему. Например, транспортный уровень
может быть заменен протоколом UDP/IP
без изменения остальных
Вся бизнес-логика программы сосредоточена в серверной части. Основными операциями, выполняемыми в серверной части являются: соединение с базой данных, чтение из нее данных, добавление элементов в базу данных, поиск по критериям.
Работа сервера зависит от команд клиентской части. Когда пользователь выбирает определенную операцию, идет вызов удаленного метода, реализованного на серверной части, при этом в метод передаются объекты необходимые для выполнения метода.
После выполнения
действий влияющих на изменение базы
данных обновляются данные соответственно
и в предоставляемых
Функции сервера вызываются клиентом удалённо, используя технологию Remote Method Invocation.
Рассмотрим один из алгоритмов, которых реализует серверная часть.
Рассмотрим функцию добавления продажи автомобиля в базу данных.
Шаг 1.
Клиент вызывает удаленный метод вывода информации о всех клиентах:
public ArrayList GET_CLIENTS() throws RemoteException;
Шаг 2.
Формируется запрос на вывод всего списка клиентов:
rs = server.st.executeQuery( "SELECT * FROM Client ORDER BY surname,name,last_name ASC");
Шаг 3.
Для выбранного клиента вызывается удаленный метод оформления продажи:
public void ADD_SALE(String client_id,String car_id,String sale_date,String comments) throws RemoteException;
Шаг 4.
Формируется запрос на добавление продажи в таблицу:
server.st.executeUpdate(
"INSERT INTO Sale VALUES("+client_id+","+car_id+
Шаг 5.
Выводиться информация на экран о продаже: какой автомобиль, когда и кому был продан.
Листинг
описанного выше алгоритма представлен
в приложении Д, блок-схема представлена
в приложении Г.
Для работы приложения необходимо стартовать сервер, запустив файл runServer.bat.
Рисунок 7.1 – Стартовое окно сервера
После запуска сервера необходимо запустить клиентское приложение через файл runClient.bat. На экране появится главное диалоговое окно, представленное на рисунке 7.2.
Рисунок 7.2 – Стартовое окно клиента «Автоматизированная система управления продажами в автосалоне»
На рисунке 7.2 видны возможности, которыми обладает клиент. Функциональные возможности приложения обеспечиваются двумя страницами свойств. Первая страница свойств отвечает за управление продажами автомобилей.
Вторая страница «Список клиентов» дает возможность работы с информацией о клиентах автосалонов:
Рисунок 7.3 – Список клиентов
На главной странице формы клиента (рисунок 7.2) имеются 2 списка:
- список
производителей содержит
Для добавления производителя необходимо нажать кнопку «Добавить…». Откроется диалог добавления производителя:
Рисунок 7.4 – Диалог добавления производителя
Введем информацию о новом производителе и нажмем кнопку «ОК»:
Рисунок 7.5 – Диалог добавления производителя с введенной информацией
В результате выполнения операции добавления появится новая запись в таблице производителей:
Рисунок 7.6 – Обновленный список производителей
Аналогичный диалог, только содержащий уже заполненные поля, появляется при изменении атрибутов производителя. Для этого необходимо выделить нужную строку в списке производителей и нажать кнопку «Изменить…».
Рисунок 7.7 – Диалог изменения производителя
Изменим информацию о производителе «Mazda» и нажмем кнопку «ОК»:
Рисунок 7.8 – Диалог изменения производителя с измененной строкой «Описание»
На рисунке 7.9 показан результат выполнения операции изменения:
Рисунок 7.9 – Список производителей с измененной информацией
Для добавления
сведений об автомобилях на складе
автосалона необходимо выбрать строку
с информацией о
Информация о работе Разработать информационную систему по продаже автомобилей в автосалоне