Класс справка о приеме на экспертизу:
Атрибуты: №, дата, ФИО, адрес, документ, серия, номер, наименование валюты, страна эмитент, номинал, год образца (выпуска), серийный номер, дополнительные реквизиты, кассир. Операции: сохранить, печать.
В языке UML взаимодействие элементов рассматривается в информационном аспекте их коммуникации, т.е. взаимодействующие объекты обмениваются между собой некоторой информацией. При этом информация принимает форму законченных сообщений. Другими словами, хотя сообщение и имеет информационное содержание, оно приобретает дополнительное свойство оказывать направленное влияние на своего получателя. Для моделирования взаимодействия объектов в языке UML используются соответствующие диаграммы последовательности. Говоря об этих диаграммах, имеют в виду два аспекта взаимодействия. Во-первых, взаимодействия объектов можно рассматривать во времени, и тогда для представления временных особенностей передачи и приема сообщений между объектами используется диаграмма последовательности. Во-вторых, можно рассматривать структурные особенности взаимодействия объектов.
Рис. 2.11 Диаграмма последовательности - прием денежного знака на экспертизу.
Рис. 2.12 Диаграмма последовательности - покупка/продажа валюты (а так же конверсия валюты).
Рис. 2.13 Диаграмма последовательности - замена денежного знака.
Рис. 2.14 Диаграмма последовательности - размен денежного знака.
2.4 Проектирование структуры базы данных
Базы данных (БД) - хранилище структурированных данных и методы доступа к ним, при этом данные должны быть непротиворечивы, целостны и минимально избыточны. Это особым образом организованный набор значений данных, а схема БД определяет, как именно организованы данные в БД. Можно сказать, что БД создаются для хранения и доступа к данным, содержащим сведения о некоторой предметной области, т.е. всякая БД представляет собой систему данных о предметной области.
На этом этапе анализируется имеющаяся информация с целью определить набор таблиц и их полей. Проектирование базы данных заключается в определении состава полей ее таблицы и связей между таблицами. От того, насколько тщательно проведен анализ и насколько грамотно спроектирована БД, в существенной мере зависит эффективность будущей программы и ее полезность для пользователя. Для того, чтобы создать БД, ее нужно нормализовать.
Предметная область, которая исследуется это валютно-обменные операции. В результате выявлены следующие сущности: оператор валютно-обменных операций и денежные единицы, которые непосредственно покупаем либо продаем (обмениваем).
В процессе разработки структуры базы данных может возникнуть избыточность информации - это повторение (дублирование) данных, содержащихся в базе данных. В таблице с избыточными данными содержится много повторяющихся данных в различных записях. Для избавления от избыточности можно разбить одну большую таблицу на несколько маленьких. Такой процесс разбиения таблицы называется нормализацией базы данных. Т.е. нормализация - это процесс устранения избыточности данных.
Существует несколько так называемых нормальных форм (НФ) баз данных. Каждая из нормальных форм получается последовательно из предыдущей нормальной формы. На практике применяются в основном первые три из них.
Первая нормальная форма требует, чтобы каждое поле таблицы БД было не делимым, не содержало повторяющихся групп. Не делимость поля означает, что каждое поле не должно делится на несколько полей. А повторяющиеся группы указывают на то, чтобы поля не содержали одинаковые по смыслу значения. Гофман В.Э., Хомоненко А.Д. - «Работа с базами данных в Delphi» - второе издание, СПб.: БХВ-Петербург, 2003 год Наш список полей удовлетворяет этому нормальному закону, кроме поля ФИО. Их можно разделить на три поля соответственного Фамилия, Имя и Отчество, но для задачи, которая поставлена перед нами, это не требуется, поэтому мы считаем эти поля не делимыми.
Вторая нормальная форма, требует: все поля таблицы зависели от первичного ключа, то есть первичный ключ однозначно определен и является не избыточным; те поля, которые зависят от части первичного ключа, должны быть выделены в отдельные таблицы. Гофман В.Э., Хомоненко А.Д. - «Работа с базами данных в Delphi» - второе издание, СПб.: БХВ-Петербург, 2003 год Определим поля, входящие в первичный ключ: № мемориального ордера, № операции, № справки, № трудового договора, идентификатор валюты, код операции, код, № квитанции, № справки на экспертизу, ID комиссии. Установим, какие поля зависят только от части ключа и поместим их в отдельную таблицу.
Третья нормальная форма требует, чтобы значение любого поля таблицы, не входящего в первичный ключ, не зависело от значения другого поля, не входящего в первичный ключ. Гофман В.Э., Хомоненко А.Д. - «Работа с базами данных в Delphi» - второе издание, СПб.: БХВ-Петербург, 2003 год
Нормализованной БД называется база, в которой выполняется как минимум три условия. Данные поля таблиц удовлетворяют этому закону. В результате нормализации получаться следующие таблицы:
Таблица «operator» содержит данные о сотрудниках банка, то есть об операторе валютно-обменных операций. Ключевое поле: nomer_tr_dog, содержит информацию о номере трудового договора.
Таблица 2.3
Имя поля
Тип и размер поля
Описание поля
nomer_tr_dog
INTEGER
информация о номере трудового договора
FIO
VARCHAR(255)
фамилия, имя, отчество сотрудника банка.
Nomer_pas
номер паспорта
Таблица «reestr», содержит данные реестра валютно-обменных операций. Первичным ключом в данной таблице является nomer_oper. Это поле содержит информацию о номере операции.
Таблица 2.4
nomer_oper
информация о номере операции
date
DATE
дата совершенной операции
Kod_vid_oper
код вида операции
ID_kyrs
Код курса
Kod_val_pr
код валюты принятой
Cymma_val_pr
MONEY
сумма валюты принятой
ID
код комиссии, взимаемая с клиента за совершение операции, обычно она входит в отклонение от курса
Doxod
подоходный налог с совершенной операции
Kod_val_v
код валюты выданной
Cymma_val_v
сумма валюты выданной
Таблица «mem_or» содержит данные необходимые для обоснования бухгалтерской проводки. Ключевым полем является: nom_mem_or.
Таблица 2.5
nom_mem_or
Номер мемориального ордера.
Vid_oper
VARCHAR(100)
Вид операции.
Dt_sch
Дебет счета.
Kt_sch
Кредит счета.
Kod_val
Код валюты.
Cymma
Сумма.
Country
VARCHAR(50)
Шифр страны.
Crok_val
Срок валютирования.
Ocnovanie
Содержание и основание записи.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13