АРМ диспетчера автотранспортного предприятия
Автор работы: Пользователь скрыл имя, 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 Протокол тестирования программ
Тестирование – это процесс выполнения программ на некотором наборе данных, для которого заранее известен результат применения или известны правила поведения этих программ. Указанный набор данных называется тестом.
Протокол проведения тестирования программы:
- Проверка работы базы данных при правильных входных данных.
- Проверка операций над наборами данных:
- Вставка записей;
- Удаление записей;
- Выборка записей (программа запрещает ввод значений, а разрешает лишь выбор);
- Запрет удаления, в случае нарушения ссылочной целостности;
- Проверка работоспособности основных процессов приложения:
- Поиск (проверены все значения поиска).
- Создание отчета;
- Запросы (проверены все виды запросов, при различных входных данных);
с) Проверка подключения к базе данных (пароль, имя пользователя, путь нахождения базы);
- Проверка работы программы на неправильных входных данных.
В тестовый код программы
- Неправильные входные данные при осуществлении операций с наборами данных (под неправильными данными понимаются данные, имеющие отличный тип от типа поля, с которым осуществляется работа, неверный формат даты). Программа не позволяет пользователю ввести такие данные (при прямом вводе данных); осуществляется проверка вводимых данных и в случае несоответствия выдается сообщение ошибки.
- Неправильные входные данные при подключении к базе данных. В этом случае возникает исключительная ситуация. В приложении осуществляется обработка исключительных ситуаций, таким образом, при неправильно введенной информации для подключения к базе данных, выдается сообщение о роде совершенной ошибки.
- Неправильные входные данные при проверке функциональных возможностей программы (основные процессы, осуществляемые в базе данных):
- Поиск:
- Неверно указаны значения поиска. В этом случае значения попросту не будут найдены в базе данных, и выдастся соответствующее сообщение.
Рисунок 9 – Вывод ошибки ввода.
- Запросы с параметрами
- В случае ввода неверного параметра, запрос не будет выполнен и выдастся соответствующее сообщение.
Таким образом, приложение прошло необходимый комплект тестов, результат которых можно считать положительным, так как при правильных входных данных программа работает по заданному алгоритму, а при неправильных входных данных, определяет допущенные ошибки, и выдает корректные, соответствующие сообщения.
- Добавление данных в таблицу
- В случае ввода неверного значения, ввод не будет выполнен и буден выдано соответствующее сообщение.
Таким образом, приложение прошло необходимый комплект тестов, результат которых можно считать положительным, так как при правильных входных данных программа работает по заданному алгоритму, а при неправильных входных данных, определяет допущенные ошибки, и выдает корректные, соответствующие сообщения.
Заключение
В ходе курсового проекта была разработана «АРМ диспетчера автотранспортного предприятия» с использованием Firebird2.0 и среды разработки Borland Delphi 7.
Предметная область по данной теме исследована полностью, но реализована лишь часть темы. В дальнейшем планируется полная доработка по данному вопросу. Для заданной предметной области была определена структура базы данных и структура базовых таблиц. Так же было разработано клиентское приложение для работы с базой данных.
Приложение имеет все необходимые функции для работы с базой данных, заранее предопределенные в задании: осуществлена работа с записями - вставка, удаление, редактирование. Был организован поиск по базе данных, запросы к базе данных, которые по определенным параметрам и условиям отбирают, комплектует данные.
Так же в
разработанной системе
Список используемой литературы
- Архангельский А.Я. Программирование в DELPHI 7 – 2-е изд., перераб. и дополн. - М.: ЗАО Издательство БИНОМ, 2000 – 1072 с.: ил.
- Бобровский С. Delphi 6: Учебный курс – СПб: Питер, 2001. – 640 с.:ил
- Марков А.С., Лисовский К.Ю. Базы данных – М: «Финансы и статистика», 2004 – 512 с.
- Епанешников А.М., Епанешников В.А. «Программирование в среде Delphi 5.0»:Уч. пособ. в 4 частях – М.: Диалог-Мифи, 1997.
- Документация по Firebird с сайта http://www.ibase.ru
- Фаронов «Программирование баз данных в Delphi 7.Учебный курс» -Спб.:Питер, 2006 - 459с.ил.
- «FireBird 1.5 Быстрый старт». Перевод с английского : Григорий Сапунков.14 марта 2005 –Версия документа - 2.1.1.ru.
- Базы данных. Учебник для ВУЗов. / Под ред. Хомоненко А.Д. СПб: «Корона принт», 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);