Автор работы: Пользователь скрыл имя, 20 Мая 2013 в 00:11, курсовая работа
Целью курсовой работы является разработка информационной системы «Туристический клуб», содержащей информацию о походах, тренировках, а также данные об инструкторах и туристах. Исходными данными являются таблицы: «Категория», «Маршруты», «Инструкторы», «Туристы», «Маршруты», «Тренировки», «Походы», «Участники».
Главная задача информационный системы состоит в представлении данных о туристах, инструкторах, походах, и другой информации в зависимости от критериев поиска, будь то определённая характеристика искомого объекта, дата тренировки или категория сложности маршрута и тому подобное. Также информационная система предоставляет возможность редактирования, добавления и удаления информации. Таким образом, конечный продукт представляет собой поисковую систему по базе «Туристический клуб» с возможностью редактирования.
Введение 3
1 Анализ предметной области и постановка задачи 4
Описание предметной области 4
Функциональные задачи будущих пользователей 5
Постановка задачи 6
Выбор и обоснование критериев качества продукта 7
2 Разработка программы 9
Разработка структуры программы 9
Разработка алгоритмов обработки информации 14
Разработка форм входных и выходных документов 17
3 Внедрение программного продукта 30
Инструкция по установке программы 30
Инструкция пользователю 31
Заключение 33
Список используемой литературы 34
1. Запрос на создание таблицы kategoria.
CREATE TABLE kategoria(
k_id COUNTER PRIMARY KEY,
k_kat VARCHAR(20) NOT NULL);
2. Запрос на создание таблицы marshrut .
CREATE TABLE MARSHRUT(
m_id COUNTER PRIMARY KEY,
p_otpr VARCHAR(20) ,
p_naz VARCHAR(20) ,
dlina VARCHAR(10) ,
dlit INTEGER,
kategoria INTEGER ,
FOREIGN KEY (kategoria) REFERENCES kategoria(k_id));
3. Запрос на создание таблицы instruktor.
CREATE TABLE instruktor(
i_id COUNTER PRIMARY KEY,
name VARCHAR(20) NOT NULL,
surename VARCHAR(20) NOT NULL,
kat INTEGER,
FOREIGN KEY (kat) REFERENCES kategoria(k_id));
4. Запрос на создание таблицы turist.
CREATE TABLE turist(
t_id COUNTER PRIMARY KEY,
name VARCHAR(20),
surename VARCHAR(20) ,
kategoria INTEGER,
FOREIGN KEY(kategoria) REFERENCES kategoria(k_id));
5. Запрос на создание таблицы trenirovka.
CREATE TABLE trenirovka(
id_t COUNTER,
instruktor INTEGER,
FOREIGN KEY (instruktor) REFERENCES instruktor(i_id),
name VARCHAR(20),
t_date DATE);
6. Запрос на создание таблицы pohod.
CREATE TABLE pohod(
p_id COUNTER PRIMARY KEY,
id_marsh INTEGER,
FOREIGN KEY (id_marsh) REFERENCES marshrut(m_id),
p_date DATE NOT NULL,
id_i INTEGER ,
FOREIGN KEY (id_i) REFERENCES instruktor(i_id)) ;
7. Запрос на создание таблицы uch.
CREATE TABLE uch(
u_id COUNTER PRIMARY KEY,
id_p INTEGER,
FOREIGN KEY (id_p) REFERENCES pohod(p_id),
id_t INTEGER ,
FOREIGN KEY (id_t) REFERENCES turist(t_id)) ;
Схема данных в MS Access выглядит
следующим образом:
Рисунок 1 - Схема данных в MS Access
2.2 Разработка алгоритмов обработки информации
В информационной системе
«Туристический клуб» реализовано
пятнадцать запросов на языке SQL, которые
обрабатывают информацию.
1. Получить список туристов, имеющих определенную
категорию.
Таблица 8 Функциональная таблица
запросы таблицы |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Категория |
+ |
+ |
+ |
+ |
+ | ||||||||||
Маршруты |
+ |
+ |
+ |
||||||||||||
Инструкторы |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
|||||||
Туристы |
+ |
+ |
+ | ||||||||||||
Тренировки |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
||||||||
Походы |
+ |
+ |
+ |
+ |
+ | ||||||||||
Участие |
+ |
+ |
Проект разработанного программного продукта состоит из единственного главного программного модуля и семи ему подчинённых:
Рисунок 2 - Структурная схема программы
Unit1 – модуль главной формы.
Unit2 – дата модуль, содержит элементы связывающие базу данных с приложением.
Unit3 – модуль формы поиска маршрутов.
Unit4 – модуль формы добавления данных в таблицу "Тренировки".
Unit 5 – модуль формы поиска тренировок.
Unit 6 – модуль формы добавления данных в таблицу "Походы".
Unit 7 – модуль формы информации о походе и редактирования списка участников.
Каждый из модулей Unit, связан с формой и состоит из процедур, представляющих собой обработчики событий кнопок, по нажатии которых выполняются те или иные запросы и возвращаемый результат отображается в соответствующем элементе DBGrid. На форме, соответствующей Unit2, называемой DataModule, расположены компоненты осуществляющие связь элементов других форм с базой данных и обеспечивающие выполнение запросов. Из следующих таблиц видно, какими свойствами и методами обладают формы и расположенные на них компоненты, а также связанные с ними процедуры.
Таблица 9 - Главная форма
Объект |
Свойство |
Метод |
Значение |
Процедура |
Form1 |
Caption |
Туристический клуб |
||
BorderStyle |
bsSingle |
|||
ClientHeight |
444 |
|||
ClientWidth |
606 |
|||
MainMenu1.N1 |
Caption |
выход |
||
OnClick |
Button1Click | |||
PageControl |
||||
TabSheet1 TabSheet2 TabSheet3 TabSheet4 |
Caption |
Походы Тренировки Участники Маршруты |
||
DBGrid1 DBGrid2 DBGrid3 |
DataSource |
DataModule2.DataSource2 DataModule2.DataSource3 DataModule2.DataSource4 |
||
Options/ dgColumnResize |
False |
|||
DBNavigator1 DBNavigator2 DBNavigator3 |
DataSource |
DataModule2.DataSource2 DataModule2.DataSource3 DataModule2.DataSource4 |
||
DBGrid4 DBGrid5 |
DataSource |
DataModule2.DataSource9 DataModule2.DataSource10 |
||
Options/dgEditing |
False |
|||
Options/ dgColumnResize |
False |
|||
Options/dgColLines |
False |
Продолжение таблицы 9
Options/dgRowLines |
False |
|||
Options/dgRowSelect |
True |
|||
DBNavigator4 DBNavigator5 |
DataSource |
DataModule2.DataSource9 DataModule2.DataSource10 |
||
VisibleButtons/nbInsert |
False |
|||
VisibleButtons/nbDelete |
False |
|||
VisibleButtons/nbEdit |
False |
|||
VisibleButtons/nbPost |
False |
|||
VisibleButtons/nbCancel |
False |
|||
VisibleButtons/nbRefresh |
False |
|||
GroupBox1 |
Caption |
Поиск |
||
Button1 |
Caption |
Поиск маршрутов |
| |
OnClick |
Button1Click | |||
Button2 |
Caption |
Найти |
||
OnClick |
Button2Click | |||
Label Labe2 Labe3 Labe4 Labe5 Labe6 |
Caption |
Инструкторы: Туристы: Выберите категорию: Инструкторы Туристы: Все маршруты: |
||
DBGrid6 |
DataSource |
DataModule2.DataSource11 |
||
Options/dgEditing |
False |
|||
Options/ dgColumnResize |
False |
|||
Options/dgColLines |
False |
Продолжение таблицы 9
Options/dgRowSelect |
True |
|||
ReadOnly |
True |
|||
DBNavigator6 |
DataSource |
DataModule2.DataSource11 |
||
VisibleButtons/nbInsert |
False |
|||
VisibleButtons/nbDelete |
False |
|||
VisibleButtons/nbEdit |
False |
|||
VisibleButtons/nbPost |
False |
|||
VisibleButtons/nbCancel |
False |
|||
VisibleButtons/nbRefresh |
False |
|||
Button3 |
Caption |
Удалить |
||
OnClick |
Button3Click | |||
Button4 |
Caption |
Добавить |
||
OnClick |
Button4Click | |||
Button5 |
Caption |
Поиск |
||
OnClick |
Button5Click | |||
Button6 |
Caption |
Обновить |
||
OnClick |
Button6Click | |||
DBGrid7 |
DataSource |
DataModule2.DataSource15 |
||
Options/dgEditing |
False |
|||
Options/ dgColumnResize |
False |
|||
Options/dgColLines |
False |
|||
Options/dgRowSelect |
True |
|||
DBNavigator7 |
DataSource |
DataModule2.DataSource15 |
Продолжение таблицы 9
VisibleButtons/nbInsert |
False |
|||
VisibleButtons/nbDelete |
False |
|||
VisibleButtons/nbEdit |
False |
|||
VisibleButtons/nbPost |
False |
|||
VisibleButtons/nbCancel |
False |
|||
VisibleButtons/nbRefresh |
False |
|||
Button7 |
Caption |
Обновить |
||
OnClick |
Button7Click | |||
Button8 |
Caption |
Добавить |
||
OnClick |
Button8Click | |||
Button9 |
Caption |
Удалить |
||
OnClick |
Button9Click | |||
Button10 |
Caption |
Подробно/Туристы |
||
OnClick |
Button10Click |
Таблица 10 - Форма DataModule
Объект |
Свойство |
Метод |
Значение |
ADOConnection1 |
ConnectionString |
<Путь к базе данных> | |
Connected |
true | ||
loginPrompt |
False | ||
ADOTable1 |
Active |
True | |
Connection |
ADOConnection1 | ||
TableName |
kategoria | ||
ADOTable3,4 |
Active |
true | |
Connection |
ADOConnection1 | ||
TableName |
Instruktor Turist | ||
MasterSours |
DataSours1 | ||
ADOTable2,5 |
Active |
True | |
Connection |
ADOConnection1 | ||
TableName |
Marshrut trenirovka |
Продолжение таблицы 10
MasterSours |
DataSours1 DataSours3 | ||
IndexFieldName |
Kategoria Instruktor | ||
ADOTable6,7 |
Active |
true | |
Connection |
ADOConnection1 | ||
TableName |
Pohod Uch | ||
ADOQuery1 ADOQuery2 ADOQuery3 ADOQuery4 ADOQuery6 ADOQuery10 ADOQuery11 |
Active |
False | |
Connection |
ADOConnection1 | ||
CursorType |
CtStatic | ||
ADOQuery7 ADOQuery8 |
Active |
False | |
Connection |
ADOConnection1 | ||
ADOQuery5 |
Active |
True | |
Connection |
ADOConnection1 | ||
CursorType |
CtStatic | ||
SQL |
SELECT trenirovka.*, instruktor.* FROM trenirovka, instruktor WHERE trenirovka.instruktor = instruktor.i_id; | ||
ADOQuery9 |
Active |
True | |
Connection |
ADOConnection1 | ||
CursorType |
CtStatic | ||
SQL |
SELECT marshrut.*, pohod.*, instruktor.* FROM marshrut,pohod,instruktor where pohod.id_marsh = marshrut.m_id and pohod.id_i= instruktor.i_id; | ||
DataSource1 DataSource2 |
DataSet |
ADOTable1 ADOTable2 |