Терминал приема платежей
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
В°нных на ПЦ, запись этих данных в базу и отправку этих данных оператору на который был произведен платеж.
3. Описание модели взаимодействия, представленной на диаграммах последовательностей и кооперации
Модель взаимодействия описывается двумя диаграммами: диаграмма последовательности и диаграмма коопераций:
3.1 Диаграмма последовательностей
Отображает процесс, который начинается с главного меню. При выборе пользователем оператора (нажатие кнопки) посылает сообщение форме ввода реквизитов, для отображения. И так далее идет последовательный процесс отображения форм в зависимости от действий пользователя.
3.2 Диаграмма коопераций
Отображают поток событий через конкретный iенарий варианта использования, упорядочена по времени. На кооперативной диаграмме так же, как и на диаграмме последовательности, стрелки обозначают сообщения, обмен которыми осуществляется в рамках данного варианта использования. Их временная последовательность указывается путем нумерации сообщений.
4. Описание модели поведения, представленной на диаграммах состояний
Диаграмма состояний включает все сообщения, которые объект получает и отправляет. iенарий - это одиночный проход по диаграмме состояний. Интервал между двумя сообщениями, отправляемыми объектом, обычно представляет состояние.
На диаграмме состояний отображены все состояния на протяжении процесса приема платежа, такие как: Главное меню, Форма ввода реквизитов, Форма проверки данных, Форма внесения наличных, Форма печати чека.
5. Описание логической структуры системы, представленной на диаграммах классов
На диаграмме классов отображены классы системы и разные статические связи, которые существуют между ними, а также атрибуты, операции классов.
На диаграмме присутствуют классы:
классы, реализующие интерфейс Provider , - класс-сущность (entity), т.к. не зависят от своего окружения, хранят только данные;
классы, реализующие интерфейс KioskFormInterface, - граничный класс (boundary) , т.к. обрабатывают взаимодействие между окружением системы и ее граничными частями. Они могут предоставлять интерфейс пользователям или другим частям системы;
класс, переключающий состояния киоска, формы StateManager, - управляющий класс (control), т.к. координирует события, необходимые для реализации поведения, определяемого в прецедентах использования;
класс Payment также является классом-сущностью (entity), т.к. только хранит данные о платеже.
классы FiscalRegistrator и PC являются граничными классами (boundary), т.к. взаимодействуют в системой, посылая и принимая сообщения.
6. Описание физической структуры системы, представленной на диаграммах компонентов
Диаграммы компонентов показывают, как выглядит модель на физическом уровне. На них изображены компоненты программного обеспечения и связи между ними.
На диаграмме представлены компоненты, представляющие из себя классы, описание которых хранится в виде *.h и *.cpp файлов. Стрелочками указано, какой компонент, от какого компонента зависит. Так компонент Kiosk.exe связан зависимостью с StateManager, а тот в свою очередь имеет зависимости с компонентами разных форм, таких как MainForm, PropertyEditForm, PropertyValidate, BillAcceptForm и ResultForm, почти каждая из которых имеет зависимость с одним из компонентов, - PC, BillValidator(имеет зависимость с компонентом Payment), FiscalRegistrator. Зависимость выявляется на этапе компиляции или выполнения программы.
7. Процесс генерации программного кода
Для создания программы в среде Visual Studio 2008 был использован проект типа WinForms.
Основным классом приложения является класс StateManager. Объект этого класса управляет состояниями киоска.
Окна программы наследованы от интерфейса KioskFormInterface.
8. Описание C# программы
Класс StateManager - переключает состояния терминала, отображение форм в зависимости от состояния;
Имеет поля: _manager(хранит экземпляр класса, создается при первом обращении к StateManager. Instance), _privKioskForm(хранит предыдущее состояние терминала для возврата);
Свойства: Instance - возвращает экземпляр класса StateManager;
Функции: ChangeState - переключение текущего состояния киоска,- текущая форма сохраняется в _privKioskForm и скрывается, новая форма выводится на экран.
Класс KioskFormInterface - интерфейс для состояний терминала (форм)
Функции: HideForm(скрыть форму), ShowForm (показать форму)
Класс Provider - интерфейс провайдеров, содержит данные провайдеров;
Функции:
GetCode - возвращает код провайдера
Length - возвращает длину маски (кол-во символов в реквизите)
Name - возвращаем имя провайдера
Title - возвращает заголовок маски (какой реквизит, например номер телефона)
Класс Payment - для хранения данных о платежах
Свойства: Amount, Property, Provider и ReceiptNumber - возвращают данные о платеже, такие как - сумма, реквизиты, провайдер и номер чека;
Функции:
AddAmount - добавляет сумму в платеж,
Payment - конструктор класса Payment, создает класс платежа,
Set ReceiptNumber - устанавливает номер чека
9. Результаты тестирования
При тестировании критичных ошибок не обнаружено.
Заключение
Система имеет необходимый и достаточный набор функций и возможностей. Полностью удовлетворяет требованиям, разработанным на этапе постановки задачи и формирования спецификации.
Для дальнейшего развития системы необходимо:
расширить количество операторов
доработать дизай