АРМ диспетчера автотранспортного предприятия

Автор работы: Пользователь скрыл имя, 13 Июня 2012 в 19:45, курсовая работа

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

Темой данного курсового проекта является разработка программного обеспечения «АРМ диспетчера автотранспортного предприятия». Данное программное обеспечение осуществляет добавление, удаление а также редактирование справочных таблиц. Для проектирования программного продукта использовалась объектно-ориентированная среда программирования Borland Delphi 7.0 – в ней были созданы все формы, составляющие интерфейс, и модули, содержащие код основных функций, выполняемых программой.

Содержание работы

Введение 6
1 Анализ технического задания 8
1.1 Общие положения 8
1.2 Требования к составу выполняемых функций 8
1.3 Требования к надежности системы 10
1.4 Исходные данные 10
2 Выбор и обоснование архитектуры системы 11
3 Выбор и обоснование алгоритма программы 13
3.1 Нормальные формы отношений 13
3.2 Выбор и обоснование компонентов 15
3.3 Создание таблиц базы данных 16
3.4 Оформление отчетов 19
4 Описание программы 20
4.1 Общее описание 20
4.2 Инструкция по установке 20
4.2.1 Комплект поставки 20
4.2.2 Минимальные требования 20
4.3 Состав программного продукта 20
4. 4 Описание процедур и функций программы 21
5 Описание пользовательского интерфейса 28
6 Описание средств защиты данных и программ 33
7 Описание тестового примера и отчетной документации, протокол тестирования программ 35
7.1 Отчетная документация 35
7.2 Описание тестового примера 35
7.3 Протокол тестирования программ 35
Заключение 39
Список используемой литературы 40
Приложение А (обязательное) 41

Содержимое работы - 1 файл

ПЗ.docx

— 422.78 Кб (Скачать файл)

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

Тестирование  – это процесс выполнения  программ на некотором наборе данных, для которого заранее известен результат  применения или известны правила  поведения этих программ. Указанный  набор данных называется тестом.

Протокол  проведения тестирования программы:

    1. Проверка работы базы данных при правильных входных данных.
  1. Проверка операций над наборами данных:
    • Вставка записей;
    • Удаление записей;
    • Выборка записей (программа запрещает ввод значений, а разрешает лишь выбор);
    • Запрет удаления, в случае нарушения ссылочной целостности;
  1. Проверка работоспособности основных процессов приложения:
    1. Поиск (проверены все значения поиска).
    2. Создание отчета;
      1. Запросы (проверены все виды запросов, при различных входных данных);

        с)  Проверка подключения к  базе данных (пароль, имя пользователя, путь нахождения базы);

  1. Проверка работы программы на неправильных входных данных.

         В тестовый код программы внесены  правильные и неправильные входные  данные. Экспертная систем была проверена на следующих типах неправильных входных данных.

  1. Неправильные входные данные при осуществлении операций с наборами данных (под неправильными данными понимаются данные, имеющие отличный тип от типа поля, с которым осуществляется работа, неверный формат даты). Программа не позволяет пользователю ввести такие данные (при прямом вводе данных); осуществляется проверка вводимых данных и в случае несоответствия выдается сообщение ошибки.
  2. Неправильные входные данные при подключении к базе данных. В этом случае возникает исключительная ситуация. В приложении осуществляется обработка исключительных ситуаций, таким образом, при неправильно введенной информации для подключения к базе данных, выдается сообщение о роде совершенной ошибки.
  3. Неправильные входные данные при проверке функциональных возможностей  программы (основные процессы, осуществляемые в базе данных):
  1. Поиск:
  • Неверно указаны значения поиска. В этом случае значения попросту не будут найдены в базе данных, и выдастся соответствующее сообщение.

Рисунок 9 – Вывод ошибки ввода.

  1. Запросы с параметрами
  • В случае ввода неверного параметра, запрос не будет выполнен и выдастся соответствующее сообщение.

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

  1. Добавление данных в таблицу
  • В случае ввода неверного значения, ввод не будет выполнен и буден выдано соответствующее сообщение.

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

 

Заключение

В ходе курсового проекта была разработана «АРМ диспетчера автотранспортного предприятия» с использованием Firebird2.0 и среды разработки Borland Delphi 7.

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

Приложение  имеет все необходимые  функции  для работы с базой данных, заранее  предопределенные в задании: осуществлена работа с записями - вставка, удаление, редактирование. Был организован  поиск по  базе данных, запросы  к базе данных, которые по определенным параметрам и условиям отбирают, комплектует  данные.

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

 

Список  используемой литературы

 

  1. Архангельский А.Я. Программирование в DELPHI 7 – 2-е изд., перераб. и дополн. - М.: ЗАО Издательство БИНОМ, 2000 – 1072 с.: ил.
  2. Бобровский С. Delphi 6: Учебный курс – СПб: Питер, 2001. – 640 с.:ил
  3. Марков А.С., Лисовский К.Ю. Базы данных – М: «Финансы и статистика», 2004 – 512 с.
  4. Епанешников А.М., Епанешников В.А. «Программирование в среде Delphi 5.0»:Уч. пособ. в 4 частях – М.: Диалог-Мифи, 1997.
  5. Документация по Firebird с сайта http://www.ibase.ru
  6. Фаронов  «Программирование баз данных в Delphi 7.Учебный курс» -Спб.:Питер, 2006 - 459с.ил.
  7. «FireBird 1.5 Быстрый старт». Перевод с английского : Григорий Сапунков.14 марта 2005 –Версия документа - 2.1.1.ru.
  8. Базы данных. Учебник для ВУЗов. / Под ред. Хомоненко А.Д. СПб: «Корона принт», 2000 г., 416 с. . Базы данных. Учебник для ВУЗов. / Под ред. Хомоненко А.Д. СПб: «Корона принт», 2000 г., 416 с.

 

Приложение  А (обязательное)

 

unit Unit1;

 

interface

 

uses

  SysUtils, Classes, DB, IBQuery, IBCustomDataSet, IBTable, IBDatabase;

 

type

  TDataModule1 = class(TDataModule)

    IBDatabase1: TIBDatabase;

    IBTransaction1: TIBTransaction;

    IBTable1: TIBTable;

    DataSource1: TDataSource;

    IBTable2: TIBTable;

    DataSource2: TDataSource;

    IBTable3: TIBTable;

    IBTable4: TIBTable;

    IBTable5: TIBTable;

    IBTable6: TIBTable;

    IBTable7: TIBTable;

    DataSource3: TDataSource;

    DataSource4: TDataSource;

    DataSource5: TDataSource;

    DataSource6: TDataSource;

    DataSource7: TDataSource;

    IBTable5ID_SOTRUD: TIntegerField;

    IBTable5NOMER_SOTRUD: TIntegerField;

    IBTable5FIO_SOTRUD: TIBStringField;

    IBTable6ID_AVTO: TIntegerField;

    IBTable6MARKA_AVTO: TIBStringField;

    IBTable6COLOR: TIBStringField;

    IBTable6REG_ZNAK: TIBStringField;

    IBTable7ID_DOLGNOSTI: TIntegerField;

    IBTable7DOLGNOCT: TIBStringField;

    IBTable7OKLAD_RUB: TIBBCDField;

    DataSource8: TDataSource;

    IBQuery1: TIBQuery;

    IBTable2ID_AVTO: TIntegerField;

    IBTable2REG_ZNAK: TIBStringField;

    IBTable2OTVETSTVEN_ZA_TO: TIBStringField;

    IBTable4ID_REIS: TIntegerField;

    IBTable4REIS: TIBStringField;

    IBTable4NOMER_REISA: TIntegerField;

    IBTable1ID_GRUZA: TIntegerField;

    IBTable1REIS: TIBStringField;

    IBTable1GRUZ: TIBStringField;

    IBTable1COMPANIA: TIBStringField;

    IBTable1PROBEG: TIBBCDField;

    IBTable1PRICE_1KM: TIBBCDField;

    IBTable1DOHOD: TIBBCDField;

    IBTable6IDEN_NOMER: TIBStringField;

    IBTable2DATE_PROHOGDENIA_TO: TDateField;

    IBTable4DATE_OTPRAV: TDateTimeField;

    IBTable4DATE_PRIBUTIA: TDateTimeField;

    IBTable5DATE_ROGDENIA: TDateField;

    IBTable5DATE_PIEMA_NA_RABOT: TDateField;

    IBTable6DATE_VIPUSKA: TDateField;

    IBTable3ID_SOTRUD: TIntegerField;

    IBTable3ID_AVTO: TIntegerField;

    IBTable3ID_REIS: TIntegerField;

    IBTable3ID_GRUZA: TIntegerField;

    IBTable3DATE: TDateTimeField;

    IBTable3POKAZAN_SPID_OUT: TIBBCDField;

    IBTable3POKAZAN_SPID_IN: TIBBCDField;

    IBTable3ID_PUTEV_LIST: TIntegerField;

    IBTable3REIS: TIBStringField;

    IBTable3GRUZ: TIBStringField;

    IBTable3SOTRUD: TIBStringField;

    IBTable3AVTO: TIBStringField;

    IBTable3REG_ZNAK: TIBStringField;

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  DataModule1: TDataModule1;

 

implementation

 

{$R *.dfm}

 

end.

 

unit Unit2;

 

 

 

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, Grids, DBGrids,unit1, ComCtrls, StdCtrls, ExtCtrls, Menus,

  WordXP, OleServer, ExcelXP, ComObj, ShellApi, jpeg, Buttons;

 

type

  TForm2 = class(TForm)

    PageControl1: TPageControl;

    TabSheet1: TTabSheet;

    TabSheet2: TTabSheet;

    TabSheet3: TTabSheet;

    TabSheet4: TTabSheet;

    TabSheet5: TTabSheet;

    DBGrid5: TDBGrid;

    TabSheet6: TTabSheet;

    DBGrid6: TDBGrid;

    TabSheet7: TTabSheet;

    DBGrid7: TDBGrid;

    Button1: TButton;

    Button2: TButton;

    Button3: TButton;

    Button4: TButton;

    Button5: TButton;

    Button6: TButton;

    Button7: TButton;

    Button8: TButton;

    Button9: TButton;

    Button10: TButton;

    Button11: TButton;

    Button12: TButton;

    Button13: TButton;

    Button14: TButton;

    Button15: TButton;

    Button16: TButton;

    Button17: TButton;

    Button18: TButton;

    Button19: TButton;

    Button20: TButton;

    Button21: TButton;

    Button23: TButton;

    RadioGroup1: TRadioGroup;

    Edit1: TEdit;

    Edit2: TEdit;

    DBGrid8: TDBGrid;

    CheckBox1: TCheckBox;

    CheckBox2: TCheckBox;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    MainMenu1: TMainMenu;

    N1: TMenuItem;

    N3: TMenuItem;

    N4: TMenuItem;

    N5: TMenuItem;

    N6: TMenuItem;

    N10: TMenuItem;

    N11: TMenuItem;

    N12: TMenuItem;

    DBGrid2: TDBGrid;

    DBGrid4: TDBGrid;

    DBGrid1: TDBGrid;

    N2: TMenuItem;

    N7: TMenuItem;

    N8: TMenuItem;

    N9: TMenuItem;

    ExcelApplication1: TExcelApplication;

    ExcelWorkbook1: TExcelWorkbook;

    ExcelWorksheet1: TExcelWorksheet;

    BitBtn1: TBitBtn;

    BitBtn2: TBitBtn;

    BitBtn3: TBitBtn;

    Label4: TLabel;

    N13: TMenuItem;

    N14: TMenuItem;

    Timer1: TTimer;

    DBGrid3: TDBGrid;

    procedure Button21Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    procedure Button4Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

    procedure Button6Click(Sender: TObject);

    procedure Button7Click(Sender: TObject);

    procedure Button8Click(Sender: TObject);

    procedure Button9Click(Sender: TObject);

    procedure Button10Click(Sender: TObject);

    procedure Button11Click(Sender: TObject);

    procedure Button12Click(Sender: TObject);

    procedure Button13Click(Sender: TObject);

    procedure Button14Click(Sender: TObject);

    procedure Button15Click(Sender: TObject);

    procedure Button16Click(Sender: TObject);

    procedure Button17Click(Sender: TObject);

    procedure Button18Click(Sender: TObject);

    procedure Button19Click(Sender: TObject);

    procedure Button20Click(Sender: TObject);

    procedure BitBtn2Click(Sender: TObject);

    procedure PageControl1Change(Sender: TObject);

    procedure CheckBox1Click(Sender: TObject);

    procedure BitBtn3Click(Sender: TObject);

    procedure CheckBox2Click(Sender: TObject);

    procedure Button23Click(Sender: TObject);

    procedure BitBtn1Click(Sender: TObject);

    procedure N10Click(Sender: TObject);

    procedure N11Click(Sender: TObject);

    procedure N6Click(Sender: TObject);

    procedure N8Click(Sender: TObject);

    procedure N7Click(Sender: TObject);

    procedure N2Click(Sender: TObject);

    procedure N12Click(Sender: TObject);

    procedure N9Click(Sender: TObject);

Информация о работе АРМ диспетчера автотранспортного предприятия