Терминал приема платежей

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

В°нных на ПЦ, запись этих данных в базу и отправку этих данных оператору на который был произведен платеж.

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. Результаты тестирования

При тестировании критичных ошибок не обнаружено.

Заключение

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

Для дальнейшего развития системы необходимо:

расширить количество операторов

доработать дизай