Внедрение программного продукта

Автор работы: Пользователь скрыл имя, 20 Мая 2013 в 00:11, курсовая работа

Краткое описание

Целью курсовой работы является разработка информационной системы «Туристический клуб», содержащей информацию о походах, тренировках, а также данные об инструкторах и туристах. Исходными данными являются таблицы: «Категория», «Маршруты», «Инструкторы», «Туристы», «Маршруты», «Тренировки», «Походы», «Участники».
Главная задача информационный системы состоит в представлении данных о туристах, инструкторах, походах, и другой информации в зависимости от критериев поиска, будь то определённая характеристика искомого объекта, дата тренировки или категория сложности маршрута и тому подобное. Также информационная система предоставляет возможность редактирования, добавления и удаления информации. Таким образом, конечный продукт представляет собой поисковую систему по базе «Туристический клуб» с возможностью редактирования.

Содержание

Введение 3
1 Анализ предметной области и постановка задачи 4
Описание предметной области 4
Функциональные задачи будущих пользователей 5
Постановка задачи 6
Выбор и обоснование критериев качества продукта 7
2 Разработка программы 9
Разработка структуры программы 9
Разработка алгоритмов обработки информации 14
Разработка форм входных и выходных документов 17
3 Внедрение программного продукта 30
Инструкция по установке программы 30
Инструкция пользователю 31
Заключение 33
Список используемой литературы 34

Прикрепленные файлы: 1 файл

тур. клуб.docx

— 623.85 Кб (Скачать документ)

 

 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. Получить список туристов, имеющих определенную категорию.                      SELECT * FROM turist WHERE kategoria = '+ combobox1.Text+';                                                                                                                                                      2. Получить список инструкторов, имеющих определенную категорию. SELECT  *  FROM  instruktor  WHERE  kat = '+ combobox1.Text +';                                                                                                                        3. Удалить выбранную тренировку.                                                                                  DELETE FROM trenirovka WHERE id_t = '+a+';                                                                                                                                                                                                                                               4. Получить список всех тренировок: название, фамилию и имя инструктора  и даты.                                                                                                                              SELECT trenirovka.*,  instruktor.*  FROM  trenirovka, instruktor  WHERE trenirovka.instruktor = instruktor.i_id;                                                                                                                      5. Удалить выбранный поход.                                                                                    DELETE FROM pohod  WHERE p_id = '+a+';                                                                              6. Вывод списка всех походов: начальную и конечную точки, дату, имя и фамилию инструктора.                                                                                                     SELECT marshrut.*, pohod.*, instruktor.* FROM  marshrut,pohod,instruktor      WHERE pohod.id_marsh = marshrut.m_id AND pohod.id_i = instruktor.i_id;                                                                                                  7. Получить список маршрутов имеющих определённую категорию сложности.                                                                                                                       SELECT * FROM marshrut WHERE kategoria = '+ Combobox1.text +';                                                                                                               8. Получить список маршрутов имеющих определённую длительность. SELECT * FROM marshrut WHERE dlit = '+ Edit1.Text +';                                                 9. Получить список инструкторов,  которые не заняты в походе или на тренировке в определённую дату.                                                                                     SELECT * FROM instruktor   WHERE instruktor.i_id   IN (SELECT DISTINCT i_id FROM instruktor  WHERE i_id  NOT IN  (SELECT id_i FROM pohod WHERE p_date = :d) and i_id  NOT IN (SELECT instruktor FROM trenirovka WHERE t_date = :dat));                                                                                                        10. Получить список тренировок проводимых выбранным инструктором. SELECT instruktor.surename AS [Фамилия] , trenirovka.name AS [Тренировка], trenirovka.t_date AS [Дата] FROM instruktor, trenirovka  WHERE ((trenirovka.instruktor = instruktor.i_id)  AND  (instruktor.i_id = '+a+ ')) ;                          11. Получить список тренировок проводимых в определенную дату.          SELECT instruktor.surename AS [Фамилия],  trenirovka.name AS [Тренировка], trenirovka.t_date AS [Дата]  FROM instruktor, trenirovka  WHERE (trenirovka.instruktor = instruktor.i_id) AND (trenirovka.t_date = :date);                           12. Получить список тренировок проводимых в определенный промежуток времени.                                                                                                                         SELECT instruktor.surename AS [Фамилия], trenirovka.name AS [Тренировка], trenirovka.t_date AS [Дата]     FROM instruktor, trenirovka   WHERE (trenirovka.instruktor = instruktor.i_id) AND (trenirovka.t_date BETWEEN (:date) AND (:dat));                                                                                                                13. Получить список инструкторов,  которые не заняты в походе или на тренировке в определённую дату и имеют необходимую категорию для проведения похода .                                                                                                    SELECT *  FROM instruktor WHERE instruktor.i_id   IN (SELECT DISTINCT i_id FROM instruktor  WHERE i_id  NOT IN (SELECT id_i FROM pohod WHERE p_date = :d) and i_id  NOT IN (SELECT instruktor FROM trenirovka WHERE t_date = :dat)) AND kat BETWEEN (:ka) AND 6 ;                                                                                                             14. Получить список туристов, которые участвуют в выбранном походе.   SELECT turist.*, uch.* FROM turist, uch WHERE uch.id_t = turist.t_id AND id_p ='+a+';                                                                                                                                 15. Получить список туристов, для участия в выбранном походе, которые имеют необходимую категорию и  не участвуют в другом походе.                            SELECT *  FROM  turist  ' WHERE t_id in  (SELECT DISTINCT t_id FROM turist   WHERE t_id NOT IN (SELECT id_t FROM pohod, uch WHERE p_date = :dat AND id_p = p_id)) AND kategoria BETWEEN '+c+' AND 6 ;



Таблица 8 Функциональная таблица

запросы

таблицы

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Категория

+

+

       

+

         

+

 

+

Маршруты

         

+

+

+

             

Инструкторы

 

+

 

+

 

+

   

+

+

+

+

+

   

Туристы

+

                       

+

+

Тренировки

   

+

+

       

+

+

+

+

+

   

Походы

       

+

+

   

+

     

+

 

+

Участие

                         

+

+


 

 


2.3 Разработка форм входных и  выходных документов

Проект разработанного программного продукта состоит из единственного  главного программного модуля и семи ему подчинённых:





 

Рисунок 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

Информация о работе Внедрение программного продукта