Разработка объектно-ориентированной модели информационной подсистемы для пункта обмена валюты

 











ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

К КУРСОВОМУ ПРОЕКТУ НА ТЕМУ:

"Разработка объектно-ориентированной модели информационной подсистемы для пункта обмена валюты"



Введение


Унифицированный язык моделирования UML (Unified Modeling Language) представляет собой язык для определения, представления, проектирования и документирования программных систем, информационных систем, организационно-экономических систем, технических систем и других систем различной природы.

Разработка языка UML преследовала несколько различных целей. Прежде всего, UML создавался как язык моделирования общего характера. UML не является частной собственностью, он основан на соглашении большинства специалистов в компьютерной области. В него были включены основные понятия из наиболее известных методологий, поэтому он может использоваться совместно с ними. Как минимум UML заменяет модели Object Modeling Technique (OMT), модель Буча и Objectory, а также модели других разработчиков UML. UML разрабатывался для поддержки таких ценных наработок проектирования, как инкапсуляция, разделение сущностей и выявление сути конструкции модели. UML отвечает требованиям современной разработки программного обеспечения, в том числе таким, как крупномасштабность, параллелизм, распределенность, возможность использования образцов и удобство при командной работе.

В курсовом проекте разработана объектно-ориентированная модель информационной подсистемы для пункта обмена валюты. Модель разработана с помощью программного продукта Rational Rose 2003, с использованием языка UML.

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

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

В третьем разделе пояснительной записки рассматривается создание диаграммы последовательности (sequence diagrams). Данная диаграмма предназначенная для моделирования процесса обмена сообщениями между объектами;

В разделе четыре рассматривается диаграмма сотрудничества для прецедента информационной подсистемы «Добавить новую запись о студенте».

В пятом разделе описывается диаграмма классов для прецедента «Добавление новой записи».

В шестом разделе приводится и описывается диаграмма классов прецедента «Ввод данных о студенте», а также рассматриваются основные добавленные атрибуты и операции.

В седьмом разделе приводится и описывается диаграммы состояний для класса «Продажа». В этом же разделе приводится описание диаграммы компонентов для прецедентов информационной подсистемы «Продажа валюты».

В восьмом разделе пояснительной записки приводится и описывается диаграмма размещения проектируемой информационной подсистемы.

В девятом разделе пояснительной записки приводится и описывается порядок генерации программного кода на языке С++ для данной информационной подсистемы.

В заключении подведены основные итоги курсового проектирования и сформулированы перспективные направления развития темы курсового проекта.

В приложение вынесены листинги кода проектируемой программы, сгенерированные Rational Rose.

1. Краткая характеристика предметной области


Общая характеристика

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

Актуальность разрабатываемой подсистемы

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

Формулировка задач проектирования

В процессе работы кассира обменного пункта с использованием автоматизированной системы желательно реализовать как стандартные процедуры, обеспечивающие поддержку операций обменного пункта в течение дня, так и специфические возможности, повышающие производительность труда кассира и облегчающие учетно-расчетные операции и связь обменного пункта с банковской системой автоматизации. Обменный пункт банка при работе с клиентурой совершает следуюшие основные операции:

-Продажа валюты иностранного государства клиенту за национальную валюту;

-Покупка у клиента валюты иностранного государства за национальную валюту;

-Коверсия (обмен) валюты одного иностранного государства на валюту другого иностранного государства.

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


2. Создание диаграммы прецедентов


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

Диаграмма прецедентов (использования) называется диаграмма, на которой показана совокупность прецедентов и актеров, а также отношения (зависимости, обобщения и ассоциации) между ними.

Диаграмма этого вида представляет важную информацию - это одно из основных преимуществ ее применения. Взглянув на варианты использования можно понять какие функциональные возможности будут заложены в систему. Рассматривая действующих лиц можно выяснить кто конкретно будет с ней взаимодействовать. Изучая все множество вариантов использования и действующих лиц, определятся сфера применения системы (что она будет делать). Это помогает узнать также, что она не будет делать, и внести коррективы.

На рисунке 2.1 приведена диаграмма использования, спроектированная в среде Rational Rose. Основным действующим лицом (актером) является кассир. Он выполняет три основных действия:

-продажа валюты;

-покупка валюты;

-конверсия валюты.

Для создания диаграммы прецедентов:

1.Запустим интегрированную среду разработки Rational Rose 2003.

2.Перейдем к главной диаграмме (Main) Use case:

-в браузере щелкнем на значке «+» рядом с представлением Use case, чтобы открыть представление;

-дважды щелкнув на главной диаграмме, откроем её.

3.С помощью кнопки Use Case (вариант использования) панели инструментов поместим на диаграмму новый вариант использования.

4.Назовем его «Продажа валюты».

.Повторив этапы 3 и 4, поместим на диаграмму остальные варианты использования:

-покупка валюты;

-конверсия валюты.

6.С помощью кнопки Actor (действующее лицо) панели инструментов поместим на диаграмму новое действующее лицо.

.Назовем его «Кассир».

8.Повторив шаги шесть и семь, поместим на диаграмму действующее лицо «Клиент»

9.С помощью кнопки Unidirectional Association (Однонаправленная ассоциация) добавим ассоциации между действующим лицом «Кассир» и всеми вариантами использования.

.Повторим то же самое для действующего лица «Клиент».

Рассмотренные выше варианты использования инициируют последовательность действий (транзакций) в базе данных в ответ на действия со стороны кассира.

Выводы

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

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


Рисунок 2.1 - Диаграмма прецедентов для подсистемы пункта обмена валюты


3. Создание диаграммы последовательности


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

Рассмотрим вариант использования «Продажа валюты». Диаграмма последовательности приведена на рисунке 3.1.

На приведенной выше диаграмме выделены следующие объекты соответствующих классов:

-выбор валюты - объект класса «Валюты», форма отвечающая за выбор валюты;

-проверка наличия валюты - объект класса «Проверка», отвечает за проверку требуемого количества указанной валюты;

-ввод данных о покупателе - объект класса «ФормаПродажи», форма для заполнения данных о покупателе;

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

Последовательность действий основного потока выглядит следующим образом:

1.Кассир создает новую операцию продажи.

2.При этом он открывает необходимую форму для выбора продаваемой валюты.

.Выбирает в открытой форме валюту и вводит ее количество.

.Нажимает на клавишу «Проверить».

.При этом происходит проверка наличие требуемого количества выбранной валюты.

.Если требуемое количество валюты есть открывается форма для заполнения данных о покупателе.

.Кассир заполняет поля формы на основании паспорта покупателя.

.Нажимает на клавишу «Сохранить».

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

Выводы

. Была разработана диаграмма последовательности для варианта использования «Продажа валюты».

. При создании диаграммы были созданы четыре класса: два управляющих и два формы».


Рисунок 3.1 - Диаграмма последовательности для варианта использования «Продажа валюты»

диаграмма атрибут генерация программный

4. Создание диаграммы сотрудничества


Диаграммы сотрудничества - второй тип диаграмм взаимодействия - Collaboration Diagram - Г. Буч называет диаграммой объектов. Эта диаграмма не акцентирует внимание на последовательности передачи сообщений, она отражает наличие взаимосвязей вообще, то есть на этой диаграмме отражается наличие сообщений от клиентов к серверам.

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

В курсовом проекте была разработана диаграмма сотрудничества, описывающая продажу валюты (рисунок 4.1). Действующее лицо - Кассир. Используемые объекты:

-форма выбора валюты (класс - Валюта);

-проверка наличия валюты (класс Проверка);

-форма продажи (класс ФормаПродажи);

-продажа (класс Продажа);

На диаграмму были добавлены следующие сообщения, соотнесенные с операциями:

1.ОткрытьФорму() - создать новую форму продажи валюты.

2.ВыборВалюты() - выбор валюты и ее количества.

.СохранениеДанных() - нажать на кнопку проверка на форме.

.НаличиеТребуемойВалюты (String, Double) - проверка наличия требуемой валюты.

.ОткрытьФорму (String, Double) - создает новую форму продажи.

.ВводДанныхНаФорму() - ввод паспортных данных покупателя.

.СохранениеДанных() - нажать на кнопку сохранить на форме.

.РасчетСуммы (String, Double, String, String, Date) - рассчитывает сумму покупки.

.РегистрацияОперации() - регистрация проведенной операции в базе данных банка.

.ПечатьОтчета() - вывод на печать сведений о проведенной операции.

Выводы

1.Была спроектирована диаграмма сотрудничества для варианта использования «Продажа валюты». Во многом от правильности выполнения этого прецедента будет зависеть в дальнейшем успешность оперативного учета и функционирования всей системы в целом.

2.На диаграмму были добавлены десять сообщений, соотнесенные с соответствующими операциями.

Рисунок 4.1 - Диаграмма сотрудничества для варианта использования «Продажа валюты»


5. Создание диаграммы классов


Class diagram (диаграммы классов) позволяет создавать логическое представление системы, на основе которого создается исходный код описанных классов. На диаграммах классов отображаются некоторые классы и пакеты системы. Это статические картины фрагментов системы и связей между ними.

Ознакомившись с классами модели, для более наглядного представления, они были сгруппированы по стереотипу (рисунок 5.1). Стереотипы - это механизм, позволяющий разделять классы на категории. В языке UML основными стереотипами являются: Boundary (граница), Entity (сущность) и Control (управление). В проектируемой подсистеме были созданы следующие пакеты: Boundary (граница) и Control (управление). В эти пакеты были помещены советующие им классы.


Рисунок 5.1 - Диаграмма пакетов


Граничные классы (boundary classes) - это классы, которые расположены на границе системы и окружающей среды. Они включают все формы, отчеты, интерфейсы с аппаратурой (такой, как принтеры или сканеры) и интерфейсы с другими системами. В пакет «Boundaries» были добавлены следующие классы: класс «Валюта» (форма выбора валюты и ввода её количества) и класс «ФормаПродажи» (ввод паспортных данных покупателя).

Управляющие классы (control classes) - отвечают за координацию действий других классов. Обычно у каждого варианта использования имеется один управляющий класс, контролирующий последовательность событий этого варианта использования. В данном проекте данную функцию выполняет класс «Проверка», а также «Продажа».

Выводы

1.В процессе разработки диаграммы классов был применен механизм пакетов. Были созданы два основных пакета, объединяющих классы по стереотипам.

2.Была разработана диаграмма пакетов, являющаяся одной из форм диаграммы классов.


6. Добавление деталей к описаниям операций и определение атрибутов классов


После того как была, разработана диаграмма классов для варианта использования «Продажа валюты», начинается ее заполнение. В качестве языка программирования был выбран C++, что позволило добавить к классам параметры операций, типы данных и типы возвращаемых значений.

Атрибут - это элемент информации, связанный с классом. Они содержатся внутри класса, поэтому они скрыты от других классов. В связи с этим иногда требуется указать, какие классы имеют право читать и изменять атрибуты. Это свойство называется видимостью атрибута (attribute visibility). Для определения атрибутов и операций классов было произведено обращение к потоку событий. В результате к классам были добавлены дополнительные атрибуты и связи между классами (рисунок 6.1).

Как видно из диаграммы, для регистрации операции, необходимо ввести следующую информацию (атрибуты класса «Продажа»):

-Валюта: String - валюта;

-СуммаВ_уе: Double - сумма продоваемой валюты;

-СуммаВ_руб.: Double - сумма за продоваемую валюту в рублях;

-Ф.И.О.: String - фамилия, имя и отчество покупателя;

-Номер_паспорта: String - номер паспорта;

-Дата: Date - дата.

Назначение и описание основных методов классов были рассмотрены выше, в третьем и четвертом разделах.

Выводы

1.Была разработана диаграмма классов для сценария «Продажа валюты». Как видно из диаграммы, между классами существует определенная семантическая связь.

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


Рисунок 6.1 - Диаграмма классов


7. Создание диаграммы состояний для классов и диаграммы компонентов


Диаграммы состояний (State) предназначена для отображения состояний объектов системы, имеющих сложную модель поведения. Состоянием (state) называется одно из возможных условий, в которых может существовать объект.

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

Многие требования к классу Продажа значительно изменяются при изменении состояния его экземпляра.

На рисунке 7.1 приведена диаграмма состояния для класса «Продажа». Этапы создания диаграммы состояний:

1.Найти в браузере класс Продажа.

2.Щелкнуть на классе правой кнопкой мыши и в открывшемся меню указать пункт New->Statechart Diagram (создать диаграмму состояний).

Добавление начального и конечного состояний:

1.Нажать кнопку Start State (Начальное состояние) панели инструментов.

2.Поместить это состояние на диаграмму.

.Нажать кнопку End State (Конечное состояние) панели инструментов.

.Поместить это состояние на диаграмму.

Добавление состояний:

1.На панели инструментов нажать кнопку State (Состояние).

2.Поместить состояние на диаграмму.

.Назвать состояние Инициализация.

.На панели инструментов нажать кнопку State (Состояние).

.Поместить состояние на диаграмму.

.Назвать состояние Отмена операции.

.На панели инструментов нажать кнопку State (Состояние).

.Поместить состояние на диаграмму внутрь суперсостояния.

.Назвать состояние Завершение операции.

.На панели инструментов нажать кнопку State (Состояние).

.Назвать состояние Расчет суммы.

Описание состояний:

1.Дважды щелкнуть мышью на состоянии Инициализация.

2.Перейти на вкладку Detail (Подробно).

.Щелкнуть правой кнопкой мыши в окне Actions (Действия).

.В открывшемся меню выберать пункт Insert (Вставить).

.Дважды щелкнуть мышью на новом действии.

.Назвать его Получение даты.

.Убедиться, что в окне When (Когда) указан пункт On Entry (На входе).

.Повторив шаги 3 - 7, добавить следующее действие: Определение номера операции, в окне When ук On Entry (На входе).

.Нажать два раза на ОК, чтобы закрыть спецификацию.

.Дважды щелкнуть мышью на состоянии Завершение операции.

.Повторив шаги 2 - 7, добавить действия:

?Печать отчета, указав On Exit (На выходе);

?Регистрация операции, указав On Entry (На входе).

12.Нажать два раза на ОК, чтобы закрыть спецификацию.

13.Дважды щелкнуть мышью на состоянии Расчет суммы.

.Повторив шаги со второго по седьмой, добавить действие Расчет суммы в рублях, указав On Entry (На входе).

.Нажать два раза на ОК, чтобы закрыть спецификацию.

Добавление переходов:

1.Нажать кнопку Transition (Переход) панели инструментов.

2.Щелкнуть мышью на начальном состоянии.

.Провести линию перехода к состоянию Инициализация.

.Повторив шаги с первого по третий, создать следующие переходы:

-от состояния Инициализация к состоянию Отмена операции;

-от Расчет суммы к состоянию Завершение операции;

-от состояния Завершение операции к состоянию конечному состоянию;

-от состояния Отмена операции к конечному состоянию;

Была также создана диаграмма компонентов, отображающая распределение классов и объектов по компонентам при физическом проектировании. Как видно на рисунке 7.2 все компоненты системы были разложена на рабочем месте кассира.

Вывод

Была создана диаграмма состояний для класса «Продажа». Согласно этой диаграмме объекты класса «Продажа» могут находиться в одном из четырех состояний: инициализации, расчет суммы, отмены и завершения. Была также разработана диаграмма компонентов.


Рисунок 7.1 - Диаграмма состояния для класса «Продажа»


Рисунок 7.2 - Диаграмма компонентов

8. Создание диаграммы размещения


Этот вид диаграмм предназначен для анализа аппаратной части системы, то есть «железа», а не программ. В прямом переводе с английского Deployment означает «развертывание», но термин «топология» точнее отражает сущность этого типа диаграмм. Иногда диаграммы топологии называют диаграммами размещения.


Рисунок 8.1 - Диаграмма размещения для подсистемы пункта обмена валюты


Добавление узлов к диаграмме размещения:

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

2.Нажать кнопку Processor (Процессор) панели инструментов.

3.Щелкнув мышью на диаграмме, поместить туда процессор.

4.Ввести имя процессора «Сервер базы данных Банка».

5.Повторив шаги 2-4, добавить следующий процессор «АРМ Кассира пункта обмены валюты».

6.На панели инструментов нажать кнопку Device (Устройство).

7.Щелкнув мышью на диаграмме, поместить туда устройство.

8.Назвать его «Принтер».

Добавление связей:

1.Нажать кнопку Connection (Связь) панели инструментов.

2.Щелкнуть мышью на процессоре «Сервер базы данных Банка».

3.Провести линию связи к процессору «АРМ Кассира пункта обмены валюты».

4.Повторив шаги 1 ? 3, добавить следующую связь от процессора «Сервер базы данных Банка» к устройству «Принтер».

Добавление процессов:

1.Щелкнуть правой кнопкой мыши на процессоре «Сервер базы данных Банка» в браузере.

2.В открывшемся меню выберать пункт New ? Process (Создать ? Процесс).

.Ввести имя процесса - MSSQL.exe.

.Повторить шаги 1 ? 3, добить процесс ПродажаВалюты.exe на процессоре «АРМ Кассира пункта обмены валюты».

Показ процессов на диаграмме:

1.Щелкнуть правой кнопкой мыши на процессоре «Сервер базы данных Банка».

2.В открывшемся меню выбрать пункт Show Processes (Показать процессы).

.Повторив шаги 1 и 2, показать процесс на процессоре «АРМ Кассира пункта обмены валюты».

Выводы

1.Из диаграммы видно, что информационная подсистема пункта обмена валюты построена на технологии «клиент-сервер». Это позволяет организовать одновременный доступ нескольких операторов ПК к базе данных.

2.Клиентские программы будут работать в нескольких местах. Через локальную вычислительную сеть банка будет осуществляться сообщение этой части программы с сервером базы данных банка.


9. Генерация программного кода C++


Язык С++ является одним из наиболее широко применяемых на практике объектно-ориентированных языков. Rational Rose интегрируется с С++ посредством генерации кода и обратного проектирования. В Rational Rose 2003 предусмотрена возможность генерации программного кода С++.

Для генерации программного кода на стандартном С++ необходимо:

1.Создать компоненты (необязательно).

2.Определить компоненты для классов (необязательно).

3.Установить свойства генерации программного кода (необязательно).

4.Выбрать класс или компонент для генерации на диаграмме Классов или Компонентов.

5.Выбрать в меню Tools -> С++ -> Code Generation.

6.Выбрать в меню Tools -> С++ -> Browse Header или Browse Body для просмотра сгенерированного программного кода.

Первый этап процесса генерации программного кода - создание компонентов для классов. Это файлы с расширениями *.срр (файл реализации) и *.h (заголовочный файл). В С++ данный этап не является обязательным. Если не описать компоненты, Rational Rose сгенерирует файлы *.срр и *.h для каждого класса. Тем не менее, настоятельно рекомендуется создавать компоненты, что позволит управлять отображением классов на компоненты и моделировать зависимости между компонентами.

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

Для генерации программного кода Rational Rose 2003 использует самую различную информацию, содержащуюся в модели. Анализируются множественность, имена ролей, включение и другие характеристики каждой связи. Просматриваются атрибуты, операции, видимость и другие детали каждого класса. Rational Rose 2003 выбирает нужные для генерации кода сведения из всех данных, вводимых в окнах спецификации различных элементов модели.

Выводы

1.На основании созданных моделей компонентов, представленных в проекте была произведена генерация программного кода на языке C++.

2.Листинги сгенерированного Rational Rose кода приложения для пункта обмена валюты на языке С++ приведены в Приложении А. Общий размер сгенерированных файлов составляет 2,93 КБ.



Заключение


В результате выполнения курсового проекта была разработана объектно-ориентированная модель информационной подсистемы для пункта обмена валюты. Данная разработка написана с помощью языка UML, с использованием среды разработки - программного продукта Rational Rose 2003.

Были разработаны следующие диаграммы:

-диаграмма прецедентов;

-диаграмма последовательности;

-диаграмма сотрудничества;

-диаграмма классов;

-диаграмма состояния для классов;

-диаграмма компонентов;

-диаграмма размещения.

Основным действующим лицом является кассир. Он выполняет три действия: «Продажа валюты», «Покупка валюты», «Конверсия валюты».

Для более подробного проектирования был выбран вариан использования «Продажа валюты». Для решения этой задачи были созданы четыре класса: два «управляющих» и два «граничных» (Boundaries).

Информационная подсистема пункт обмена валюты на технологии «клиент-сервер». Это позволяет организовать одновременный доступ нескольких пунктов обмена к базе данных банка.

Клиентские программы будут работать в нескольких местах. Через локальную вычислительную сеть банка будет осуществляться сообщение этой части программы с сервером базы данных банка.

Были сгенерированы 8 файлов кода на языке С++ общим размером 2,93 КБ.

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

Спецификация UML не определяет конкретный процесс разработки, поэтому перспективным направлением разработки темы курсового проекта является наполнение сгенерированной модели функциональным кодом.



Библиографический список


1.Буч Г., Рамбо Д., Джекобсон А. Язык UML для пользователя: Пер. с англ. - М.: ДМК, 2000. - 432 с., ил. (Серия «для программистов»).

2.Боггс У., Боггс М. UML и Rational Rose: Пер. с англ. - М.: Издательство «Лори», 2000. - 581 с., ил.

.Буч Г., Рамбо Д., Джекобсон А. UML: специальный справочник. - СПб.: Питер, 2002. - 432 с., ил.

.Ларман К. применение UML и шаблонов проектирования: Пер. с англ. - М.: Издательский дом «Вильямс», 2001. - 496 с., ил.

.ГОСТ 2.105-95 ЕСКД. Общие требования к текстовым документам

.ГОСТ 2.004-88 ЕСКД. Общие требования к выполнению конструкторских и технологических документов на печатающих и графических устройствах ввода ЭВМ

.ГОСТ 2.104-68 ЕСКД. Основные надписи

.ГОСТ 2.106-68 ЕСКД. Текстовые документы

.ГОСТ 2.109-73 ЕСКД. Основные требования к чертежам

.ГОСТ 2.301-68 ЕСКД. Форматы



Приложение А


Листинги кода приложения пункт обмена валюты, сгенерированные Rational Rose на языке С++


A.1 Листинг файла Валюта.h

#ifndef ВАЛЮТА_H_HEADER_INCLUDED_B1FDED12

#define ВАЛЮТА_H_HEADER_INCLUDED_B1FDED12


// ##ModelId=4DE4AE1503C8Валюта

{:

// ##ModelId=4DE4B78402FD

ОткрытьФорму();


// ##ModelId=4DF22E4A03D9

СохранениеДанных();


// ##ModelId=4E019A2B0281

ВыборВалюты();

:

// ##ModelId=4DF2312401F8Валюта;


// ##ModelId=4DF23E8202AAДата;


// ##ModelId=4DF23F8D0341СуммаВ_уе;


};


#endif /* ВАЛЮТА2_H_HEADER_INCLUDED_B1FDED12 */.2 Листинг файла Валюта.cpp

#include «Валюта.h»


// ##ModelId=4DE4B78402FD

Валюта: ОткрытьФорму()

{

}


// ##ModelId=4DF22E4A03D9

Валюта: СохранениеДанных()

{

}


// ##ModelId=4E019A2B0281

Валюта: ВыборВалюты()

{

}


A.3 Листинг файла Проверка.h

#ifndef ПРОВЕРКА_H_HEADER_INCLUDED_B1FDAC03

#define ПРОВЕРКА_H_HEADER_INCLUDED_B1FDAC03


// ##ModelId=4DE4B1F1009CПроверка

{:

// ##ModelId=4DE4B2140167НаличиеТребуемойВалюты (String Валюты, Double СуммаВ_уе);


};


#endif /* ПРОВЕРКА2_H_HEADER_INCLUDED_B1FDAC03 */

.4 Листинг файла Проверка.cpp

#include «Проверка.h»


// ##ModelId=4DE4B2140167Проверка: НаличиеТребуемойВалюты (String Валюты, Double СуммаВ_уе)

{

}


A.5 Листинг файла Продажа.h

#ifndef ПРОДАЖА_H_HEADER_INCLUDED_B1FDA7E1

#define ПРОДАЖА_H_HEADER_INCLUDED_B1FDA7E1


// ##ModelId=4DF22026003EПродажа

{:

// ##ModelId=4DF221850195РасчетСуммы (String Валюта, Double СуммаВ_уе, String Ф.И.О., String Номер_паспорта, Date Дата);

:

// ##ModelId=4DF221CA000E

РегистрацияОперации();


// ##ModelId=4DF221E60204

ПечатьОтчета();


// ##ModelId=4DF2360E0361Номер_операции;


// ##ModelId=4DF2359F0376Валюта;


// ##ModelId=4DF2359600A7СуммаВ_уе;


// ##ModelId=4DF2357C039EСуммаВ_руб.;


// ##ModelId=4DF9A7F90227Ф.И.О.;


// ##ModelId=4DF9A80B0165Номер_паспорта;


// ##ModelId=4DF9A963039CДата;


};

#endif /* ПРОДАЖА2_H_HEADER_INCLUDED_B1FDA7E1 */.6 Листинг файла Продажа.cpp

#include «Продажа.h»


// ##ModelId=4DF221850195Продажа: РасчетСуммы (String Валюта, Double СуммаВ_уе, String Ф.И.О., String Номер_паспорта, Date Дата)

{

}


// ##ModelId=4DF221CA000E

Продажа: РегистрацияОперации()

{

}


// ##ModelId=4DF221E60204

Продажа: ПечатьОтчета()

{

}


A.7 Листинг файла ФормаПродажи.h

#ifndef ФОРМАПРОДАЖИ_H_HEADER_INCLUDED_B1FD8906

#define ФОРМАПРОДАЖИ_H_HEADER_INCLUDED_B1FD8906


// ##ModelId=4DE4B321001FФормаПродажи

{:

// ##ModelId=4DE4B40201B5

ОткрытьФорму (String Валюта, Double СуммаВ_уе);

// ##ModelId=4DE4B51F00EA

СохранениеДанных();


// ##ModelId=4E019A5502F9

ВводДанныхНаФорму();

:

// ##ModelId=4DF232EB01FEВалюта;


// ##ModelId=4DF233D603B2СуммаВ_уе;


// ##ModelId=4DF724FA037AФ.И.О.;


// ##ModelId=4DF7253E03B9Номер_паспорта;


};


#endif /* ФОРМАПРОДАЖИ2_H_HEADER_INCLUDED_B1FD8906 */

.8 Листинг файла ФормаПродажи.cpp

#include «ФормаПродажи.h»


// ##ModelId=4DE4B40201B5

ФормаПродажи: ОткрытьФорму (String Валюта, Double СуммаВ_уе)

{

}

// ##ModelId=4DE4B51F00EA

ФормаПродажи: СохранениеДанных()

{

}


// ##ModelId=4E019A5502F9

ФормаПродажи: ВводДанныхНаФорму()

{

}


ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОМУ ПРОЕКТУ НА ТЕМУ: "Разработка объектно-ориентированной модели информационной

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ