Разработка информационной системы «Автопарковка» с использованием клиент-серверной технологи

Автор: Пользователь скрыл имя, 05 Декабря 2010 в 18:52, курсовая работа

Описание работы

Целью данной курсовой работы является разработка информационной системы «Автопарковка» с использованием клиент-серверной технологии.
К задачам курсовой работы можно отнести следующее:

•Разработка базы данных в РСУБД Firebird;
•Создание приложения, основанного на клиент-серверной технологии;
•Создание веб-приложения.

Содержание

Введение.

1.Проектирование информационной системы.
1.Проектирование информационного обеспечения.
1.Выбор СУБД.
2.Системный анализ предметной области.
3.Инфологическое проектирование БД.
4.Даталогическое проектирование БД.
2.Проектирование программного обеспечения.
1.Выбор инструментальных средств для создания ПО.
2.Определение задач решаемых информационной системой.
2.Разработка информационной системы.
1.Разработка информационного обеспечения.
1.Физическое проектирование БД.
2.Программирование на стороне SQL-сервера.
2.Разработка программного обеспечения.
1.Создание Win-приложения.
2.Создание Web-приложения.
3.Тестирование информационной системы.
1.Пользовательский интерфейс.
1.Интерфейс Win-приложения.
2.Интерфейс Web-приложения.
Заключение.

Список использованных источников.

Приложение.

Работа содержит 1 файл

КУрсач.doc

— 770.00 Кб (Скачать)

     Созданный как проект с открытыми исходными  кодами, Firebird является первым в новом поколении потомков InterBase 6.0 Open Edition фирмы Borland, который был сформирован для разработки открытых исходных кодов в июле 2000 г. в рамках InterBase Public License (IPL). Исходные коды Firebird поддерживаются и развиваются на основании международного открытого кода на сайте SourceForge.net.

1.2.2. Определение задач  решаемых информационной системой

           Разработанная в  ходе курсового проекта информационная система может быть использована в реальной жизни. С помощью данной системы можно эффективно следить  за работой предприятия. Она может  быть использована как в государственных  организациях, так и в частных предприятиях.

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

 

     

      2. Разработка информационной  системы

2.1. Разработка информационного  обеспечения

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

2.1.1. Физическое проектирование  БД

 

     Запускаем приложение администрирования баз  данных Firebird IBExpert и, используя функции, заложенные в этом программном средстве, создаем и регистрируем в системе новую базу данных Firebird «Автопарковка». Создание базы данных инсталлирует инфраструктуру, необходимую для начала создания объектов. Первичным объектом для постоянного хранения данных в базе данных является таблица.

     Приступая к созданию таблиц, предполагается, что уже выполнен анализ данных и подготовлена модель, а также имеется совершенно четкое представление о структурах главных таблиц и их взаимоотношениях. Исходя из данных, полученных при выполнении инфологического и даталогического проектирования, спроектировал таблицы и поля базы данных. Определяем ключевые поля и поля Not null (см. Таблица 1).

     В данной базе данных для определения  типов данных столбцов таблиц  используются домены (см. Таблица 2). Домены в Firebird схожи с концепцией «типы данных, определенные пользователем». Хотя и невозможно создать новый тип данных, но можно задать набор атрибутов с одним из существующих типов данных и присвоить ему идентификатор домена. После этого можно использовать домен как параметр типа данных для определения столбцов любой таблицы. Преимущества инкапсуляции определения данных очевидны, так как в Firebird отсутствует логический, денежный и некоторые другие типы данных, но, используя домены, можно создать замену этим типам данных. 
 

     Таблица 1. ER – модель БД.

Имя таблицы Поле Тип Not Null Primary key Имя домена
Clients RN_clients SMALLINT + RN_clients D_INDEX
Surname VARCHAR(25) + D_FIO
Name VARCHAR(25 + D_FIO
Second_name VARCHAR(25) + D_FIO
Employers RN_employers SMALLINT + RN_employers D_INDEX
Surname VARCHAR(25) + D_FIO
Name VARCHAR(25) + D_FIO
Second_name VARCHAR(25) + D_FIO
Polnomochie VARCHAR(40) + D_INF
Magazine_events RN_events SMALLINT + RN_events D_INDEX
Date_sob DATE + D_DATE
Time_V_ezd TIME + D_TIME
Time_vyezd TIME + D_TIME
RN_employers SMALLINT + D_INDEX
RN_transport SMALLINT + D_INDEX
RN_mesto SMALLINT + D_INDEX
Mesto_parking RN_mesto SMALLINT + RN_mesto D_INDEX
Class VARCHAR(40) + D_INF
Transport RN_transport SMALLINT + RN_transport D_INDEX
Mark VARCHAR(40) + D_INF
Colour VARCHAR(40) + D_INF
State_num VARCHAR(7) + D_STATNUM
RN_clients SMALLINT + D_INDEX
 

    Таблица 2. Список доменов.

Имя домена Тип Длина Значение  по умолчанию Ограничения
D_DATE DATE     value<='TODAY'
D_INDEX SMALLINT     value>0
D_INF VARCHAR 40    
D_STATNUM VARCHAR 7    
D_TIME TIME      
D_FIO VARCHAR 25    

 

      Теперь, когда проработаны все теоретические  аспекты создания базы данных, можно  приступать к программированию доменов  и таблиц. Для этого, запустив IBExpert, загружаем SQL редактор и выбираем меню Tools->SQL Editor.

      В появившемся окне пишем скрипт для  создания домена INDEX:

      CREATE DOMAIN D_INDEX AS

      SMALLINT

      NOT NULL

      CHECK (value>0);

      Подобным  образом создаем домены  D_DATE, D_INF, D_STATNUM, D_TIME, D_FIO (см. Приложение 1).

      Создав  домены, приступаем к созданию таблиц. Всего в БД будет создано пять таблиц. Таблицы имеют связи, реализуемые с помощью первичных и вторичных ключевых полей. Кроме связей эти поля также влияют на целостность данных.

      Средствами  IBExpert создаем таблицу Clients и указываем ключевые поля, в этой таблице будут храниться данные о типах мебели:

      CREATE TABLE CLIENTS (

          RN_CLIENTS   D_INDEX NOT NULL /* D_INDEX = SMALLINT NOT NULL CHECK (value>0) */,

          SURNAME      D_FIO NOT NULL /* D_FIO = VARCHAR(25) NOT NULL */,

          NAME         D_FIO NOT NULL /* D_FIO = VARCHAR(25) NOT NULL */,

          SECOND_NAME  D_FIO NOT NULL /* D_FIO = VARCHAR(25) NOT NULL */

      );--Задание первичного ключа

      ALTER TABLE CLIENTS ADD CONSTRAINT RN_CLIENTS PRIMARY KEY (RN_CLIENTS);

      Используя комбинацию генератора с триггером, реализуем автоинкрементное поле для таблицы Clients:

      --Создание генератора

      CREATE GENERATOR GEN_CLIENTS_ID;

      REATE OR ALTER TRIGGER CLIENTS_BI0 FOR CLIENTS

      ACTIVE BEFORE INSERT POSITION 0

      AS

      BEGIN

        IF (NEW.RN_CLIENTS IS NULL) THEN

          NEW.RN_CLIENTS = GEN_ID(gen_clients_id,1);

      END

     Подобным образом создаем таблицы  Transport, Mesto_parking, Magazine_events, Employers. Задаем для этих таблиц ключевые поля, вторичные ключи, разрабатываем генераторы и триггеры (см. Приложение 1).

2.1.2. Программирование  на стороне SQL-сервера

 

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

      Средствами  IBExpert создаем все необходимые просмотры (см. Приложение 1). Далее приступаем к созданию хранимых процедур на ввод, изменение и удаление данных для каждой таблицы. Кроме этого необходимо создать хранимые процедуры на выборку данных для составления отчетов.

      В IBExpert загрузил SQL редактор, выбрав меню Tools->SQL Editor. В появившемся окне написал скрипт для создания процедур на ввод, изменение и удаление данных  таблицы CLIENTS:

      CREATE OR ALTER PROCEDURE DEL_CLIENT (

          rn smallint)

      as

      begin

        begin

           delete from clients where rn_clients  = :rn;

        when sqlcode -530 do exception e_key;

        end

        suspend;

      end

      Затем создаем процедуры на добавление и изменение записи.

      CREATE OR ALTER PROCEDURE INS_CLIENTS (

          surname varchar(25),

          name varchar(25),

          second_name varchar(25))

      as

      begin

        begin

           insert into clients (surname,name,second_name) values (:surname,:name,:second_name);

           when sqlcode -530 do exception e_key;

        end

        suspend;

      end  

      CREATE OR ALTER PROCEDURE UPD_CLIENTS (

          rn smallint,

          surname varchar(25),

          name varchar(25),

          second_name varchar(25))

      as

      begin

           update  clients

           set surname=:surname, name=:name, second_name=:second_name

           where rn_clients = :rn;

        suspend;

      end

      Полный  список хранимых процедур представлен  в таблице 3.

      Таблица 3. Название и назначение процедур

Название  процедуры Назначение
DEL_CLIENT Удалить запись таблице Клиенты
DEL_EMPLOYERS Удалить запись таблице Сотрудники
DEL_EVENTS Удалить запись таблице Журнал событий
DEL_MESTO Удалить запись таблице Место парковки
DEL_TRANSPORT Удалить записи в таблице Транспорт
INS_CLIENTS Добавление  записи в таблицу Клиенты
INS_EMPLOYERS Добавление  записи в таблицу Сотрудники
INS_MAGAZINE_EVENTS Добавление  записи в таблицу Журнал событий
INS_MESTO_PARKING Добавление  записи в таблицу Место парковки
INS_TRANSPORT Добавление  записи в таблицу Транспорт
UPD_CLIENTS Редактирование  записи в таблице Клиенты
UPD_EMPLOYERS Редактирование  записи в таблице Сотрудники
UPD_MAGAZINE Редактирование  записи в таблице Журнал событий
UPD_MESTO_PARKING Редактирование  записи в таблице Место парковки
UPD_TRANSPORT Редактирование  записи в таблице Транспорт

Информация о работе Разработка информационной системы «Автопарковка» с использованием клиент-серверной технологи