<<
>>

3.3. Пример проектирования инфологической модели

Рассмотрим результаты проектирования инфологической модели БД и БЗ в составе ЭС для компании связи. Поскольку при описании предметной области необходимо изобразить каждый из существующих классов объектов (сущностей) и набор свойств атрибутов, фиксируемый для объектов данного класса, были выделены следующие сущности БД:

«Пользователи» — картотека пользователей услуг связи, предназначена для хра-нения сведений о клиентах;

«Отбор дебиторов» — содержит легенду дат и критериев отбора дебиторов;

«Расчеты» — содержит легенду по месячным периодам расчетов с пользователями;

«Сальдо» — содержит сведения о сальдо плательщиков на момент закрытия месяца;

«Подразделения» — картотека подразделений оператора связи;

«Услуга» — содержит сведения о состоянии услуги, предназначена для хранения услуг данного клиента, обозначающая ту конкретную услугу, которую клиент заказал и за которую оплачивает деньги;

«Долг» — содержит сведения о задолженности пользователя в каждый расчетный период в течение одного этапа работы с ним как с дебитором;

«Операторы» — хранение сведений об операторах, представляет собой перечень операторов, которым разрешается работа с экспертной системой;

«Дебиторы» — идентифицирует попадание пользователя в дебиторы и вероятное начало этапа работы с ним;

«Список абонентов» — хранение списка абонентов, для которых следует выпол-нить однотипную операцию;

«Описание абонентов» — описание списка абонентов, для которых следует произвести однотипную операцию.

В табл.

3.1 приведены все перечисленные выше объекты-сущности БД, а также их физические обозначения ограничений доступа к ним, обозначены связанные между собой сущности. БД и БЗ мониторинга дебиторской задолженности содержат одиннадцать объектов. Право изменять данные, кроме руководства, здесь имеют сотрудники следующих отделов предприятия: расчетного отдела, службы информационных технологий, сервисной службы, бухгалтерии, абонентского сектора, отдела правового обеспечения, КРОССа ТЦЭ, планово-экономического отдела.
Все объекты имеют связанные с ними сущности.

Таблица 3.1. Описание объектов проектируемой БД Название объекта Обозначение объекта Ограничение доступа Связанные объекты Пользователи Users Руководство, РО, СС, СИТ, бухгалтерия, АС, ОПО Долг, Дебиторы, Список абонентов Отбор дебиторов ToDebet Руководство, РО, СС, СИТ, бухгалтерия, ОПО, ПЭО Расчеты, Подразделения, Дебиторы, Операторы, Описание абонентов Расчеты Calculation РО, СС, СИТ, бухгалтерия, АС, ПЭО Отбор дебиторов. Сальдо, Долг Сальдо Saldo РО, СИТ, бухгалтерия, ПЭО Пользователи, Расчеты, Долг Подразделения Podraz Руководство, РО, СС, СИТ, бухгалтерия, АС, ОПО, КРОСС ТЦЭ, ПЭО Пользователи, Отбор дебиторов, Долг Услуга Sv Service То же Дебиторы

Таблица 3.1 (окончание) Название объекта Обозначение объекта Ограничение доступа Связанные объекты Долг Dolg Руководство, РО, СС, СИТ, бухгалтерия, АС, ОПО, ПЭО Пользователи, Расчеты, Сальдо, Подразделения, Дебиторы Операторы Operators РО, СС, СИТ, бухгалтерия, ПЭО Отбор дебиторов, Описание абонентов Дебиторы Debetors Руководство, РО, СС, СИТ, бухгалтерия, АС, ОПО, КРОСС ТЦЭ, ПЭО Пользователи, Отбор дебиторов, Услуга, Долг, Список абонентов Список

aCoiionroD User List То же Пользователи, Дебиторы, Описание абонентов Описание абонентов AbUserList - » - Отбор дебиторов, Операторы, Дебиторы, Список абонентов

В результате проектирования БЗ и БД каждой сущности был поставлен в соответствие набор атрибутов (свойств). Описание атрибутов, полученных в результате работы, удобно представить в виде табл. 3.2-3.12. В них даны следующие требования к атрибутам объектов: название атрибута, его обозначение, динамичность (Ст — статические, Дн — динамические), область возможных значений (Сч — счетчик, Тк — текстовый, Дт — дата, Ч — числовой, Мн — денежный). Статические атрибуты являются неизменными, а динамические могут изменяться в зависимости от различных условий.

Таблица 3.2. Описание атрибутов сущности «Пользователи» Название атрибута Обозначение атрибута Динамичность Область возможных значений Идентификатор пользователя UsersID Ст Ч, Тк Идентификатор отделения банка BankDept ID Ст Ч Идентификатор отделения, которому платит данный пользователь за услуги связи DEPTID Ст ч Идентификатор типа пользователя User Type ID Ст ч Идентификатор улицы StreetID Ст ч Идентификатор пункта приема оплаты POSID Ст ч Номер лицевої о счета Account Дн ч Наименование пользователя Name Дн Тк ИНН INN Ст ч Дата открытия лицевого счета DateBegin Ст Дт

Таблица 3.2 (окончание) Название атрибута Обозначение атрибута Динамичность Область возможных значений Дата закрытия лицевого счета Date End Ст Дт Почтовый индекс Postlndex Дн Ч Дом Home Дн ч Корпус Corpus Дн ч Квартира Flat Дн ч Предприятие (физическое или юридическое лицо) isCorp Ст Ч, Тк Дата заключения договора ContractDate; Ст ч Номер договора на предоставление услуг связи ContractNmb Ст ч Расчетный счет в банке BankAccount Дн ч Код предприятия по классификатору предприятий OKPO Ст ч Телефон юридического местоположения JPhon Дн ч Телефон физического местоположения FPhone Дн ч

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

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

Таблица 3.3. Описание атрибутов объекта «Отбор дебиторов» Название атрибута Обозначение атрибута Динамичность Область возможных значений Идентификатор выполненной процедуры отбора дебиторов DbtLgndID Ст Ч Идентификатор отделения, которому платит пользователь за услуги связи DEPTID Дн Ч Идентификатор списка пользователей User_List_ID Ст ч Идентификатор периода расчета, на основании которого отыскиваются дебиторы CalcID Ст ч Физическое или юридическое лицо isCorp Ст Ч, Тк Величина долга Limit Дн Ч

Таблица 3.3 (окончание) Название атрибута Обозначение атрибута Динамичность Область возможных значений Используется абсолютная величина долга или процент к начислениям (для населения) isPercent Дн Ч Количество месяцев долга для населения nDolg Дн ч Дата проведения процедуры поиска xDate Дн Дт Дата печати предупреждений Print Date Дн Дт Ключ завершения поиска дебиторов Success Key Дн Ч Посылать на отключение дебитора sendotkl Дн Ч Отключить телефон getotkl Дн ч Список дебиторов на отключение Otkllist Дн ч Посылать на снятие (удаление) телефона send remove Дн ч Снять (удалить) телефон get remove Дн ч Список телефонов на снятие remove list Дн ч Обзвон дебиторов ObzvonD Дн ч Предварительное снятие телефона дебитора DpreRemove Дн ч Список снятых телефонов дебитора DspRemove Дн Ч, Тк

В объекте «Отбор дебиторов» ключевое поле — Идентификатор выполненной процедуры отбора дебитора. Остальные атрибуты — Идентификатор отделения, которому платит данный пользователь за услуги связи, Идентификатор списка пользователей, Идентификатор периода расчета, на основании которого отыскиваются дебиторы, Идентификатор оператора, выполнявшего поиск — служат для связывания сущности «Отбор дебиторов» с объектами «Расчеты», «Подразделения», «Дебиторы», «Операторы» и «Описание абонентов».

Таблица 3.4.

Описание атрибутов сущности «Расчеты» Название атрибута Обозначение атрибута Динамичность Область возможных значений Идентификатор расчетного периода CalcJD Ст Ч Дата закрытия месяца CalcDate Ст Дт Наименование периода расчета PeriodName Ст ч Месяц закрытия CalcMonth Ст Дт Год CalcYear Ст Дт Ключ завершения расчета SuccessKey Дн Ч

Таблица 3.5. Описание атрибутов объекта «Сальдо» Название Обозначение Динамичность Область возможных атрибута атрибута значений Идентификатор пользователя UsersJD Ст Ч, Тк Идентификатор периода расчета CalcID Ст Ч Сальдо Saldo Ст, Дн Ч В том числе налог Tax Ст Ч Количество месяцев долга nDolg Дн Ч

Сущность «Расчеты» имеет первичный ключ Идентификатор расчетного периода, который служит для связи этого объекта с объектами «Отбор дебиторов», «Сальдо» и «Долг». Идентификатор пользователя и Идентификатор периода расчета связывают объект «Сальдо» с объектами БД и БЗ «Пользователи», «Расчеты», «Долг».

Таблица 3.6. Описание атрибутов сущности «Подразделения» Название атрибута Обозначение атрибута Динамичность Область возможных значений Идентификатор отделения, которому платит пользователь за услуги связи DEPTID Дн Ч Идентификатор улицы StreetJD Ст Ч Идентификатор пункта приема оплаты POSID Ст Ч Код подразделения оператора связи Code Ст Ч Наименование подразделения оператора связи Name Ст Ч, Тк Расчетный счет банка BankAccount Дн Ч Дом Home Ст Ч Код предприятия по общероссийскому классификатору предприятий (ОКПО) OKPO Ст Ч Телефон юридического местоположения JPhone Дн Ч Телефон физического местоположения FPhone Дн Ч Телефон для справок (используется для АТС) RefPhone Дн Ч ИНН INN Ст Ч Номер АТС ATSJMmb Ст Ч 5 - 10492

У объекта «Подразделения» первичным ключом является атрибут Идентификатор отделения, которому платит пользователь за услуги связи, а поля Идентификатор улицы и Идентификатор пункта приема оплаты вторичные ключи для связи с таблицами «Пользователи», «Отбор дебиторов», «Долг».

Таблица 3.7. Описание атрибутов сущности «Услуга» Название атрибута Обозначение атрибута Динамичность Область возможных значений Идентификатор дебитора для периода работы с ним OperlD Ст Ч Идентификатор услуги Service ID Ст Ч Состояние услуги Status Дн ч Дата начала действия установки Date Begin Ст ч

Поле Идентификатор услуги — первичный ключ сущности «Услуга», Идентификатор дебитора для периода работы с ним — вторичный ключ, связывающий эту таблицу с объектами «Дебиторы».

Таблица 3.8.

Описание атрибутов сущности «Долг» Название атрибута Обозначение атрибута Динамичность Область возможных значений Идентификатор дебитора для периода работы с ним DbtJD Ст Ч Идентификатор отделения, которому платит пользователь за услуги связи DEPTID Дн Ч Идентификатор расчетного периода Calc ID Ст ч Идентификатор пользователя Users ID Ст Ч, Тк Величина задолженности пользователя ^ Debet Дн Мн Количество месяцев задолженности nDolg Дн Ч

Вторичные ключи объекта «Долг» Идентификатор дебитора для периода работы с ним, Идентификатор отделения, которому платит пользователь за услуги связи, Идентификатор расчетного периода связывают его с таблицами «Пользователь», «Расчеты», «Сальдо», «Подразделения» и «Дебиторы».

Таблица 3.9. Описание атрибутов сущности «Операторы» Название атрибута Обозначение атрибута Динамичность Область возможных значений Идентификатор оператора, выполнившего поиск Oper ID Ст Ч Наименование подразделения оператора связи Name Ст Тк Ввод имени оператора Login_Name Дн Тк Номер оператора OperNmb Ст Ч

Первичный ключ таблицы «Операторы», однозначно идентифицирующий каждого оператора, работающего с «Парусом», — это Идентификатор оператора, выполнившего поиск. По этому же ключу «Операторы» связывается с объектом БД «Отбор дебиторов» и «Описание абонентов».

Таблица 3.10. Описание атрибутов сущности «Дебиторы» Название атрибута Обозначение атрибута Динамичность Область возможных значений Идентификатор дебитора для периода работы с ним DbtID Ст Ч, Тк Идентификатор пользователя (дебитора) UsersJD Ст Ч, Тк Идентификатор подразделения оператора связи, чьи услуги будут отключены DEPTID Ст Ч Тип услуг, об отключении которых предупреждается дебитор SvcType Дн Тк Количество высланных предупреждений об отключении OtklCounter Дн Ч Дата посылки предупреждения об отключении OtklWDate Дн Дт Дата подтверждения получения предупреждения об отключении GetOtklWDate Дн Дт Дата включения в список на отключение OtklListDate Дн Дт КоличесТвеизысланных предупреждений о снятии RemCounter Дн Ч Дата посылки предупреждения о снятии услуг, расторжение договора RemWDate Ст Дт Дата подтверждения получения предупреждения о снятии GetRemWD Ст Дт Дата включения в список на снятие RemListDate Ст Дт Дата погашения задолженности PayDate Дн Дт Текущая задолженность Debet Дн Ч Текущий долг nDolg Дн Ч Предприятие (физическое или юридическое лицо) isCorp Ст Ч, Тк Идентификатор типа пользователя UserTypeJD Ст Ч, Тк

Идентификатор дебитора для периода работы с ним — первичный ключ сущности «Дебиторы», а поля Идентификатор пользователя (дебитора) и Идентификатор подразде-ления оператора связи, чьи услуги будут отключены, — вторичные ключи для связи с таблицами «Пользователи», «Отбор дебиторов», «Услуга», «Долг», «Список абонентов».

5* «Список абонентов» связывается с объектами «Пользователи», «Дебиторы» и «Описание абонентов» с помощью атрибутов Идентификатор списка абонентов и Идентификатор абонента, причем последний является также первичным ключом данной сущности.

Таблица 3.11.

Описание атрибутов сущности «Список абонентов» Название Обозначение Динамичность Область возможных атрибута атрибута значений Идентификатор абонента UsersID Ст Ч, Тк Идентификатор списка абонентов UserJD Ст Ч

Первичным ключом объекта БД «Описание абонентов» является поле Идентификатор списка абонентов, а поле Идентификатор оператора, выполнившего поиск — это вторичный кчюч данной сущности. Объект «Описание абонентов» связывается с объектами «Отбор дебиторов», «Дебиторы», «Операторы» и «Список абонентов».

Сущности между собой связаны следующими отношениями (relations). Каждая услуга может быть продана нескольким клиентам. Поэтому тип отношения между этими сущностями («Дебиторы» и «Услуга») многие к одному (и: 1). Любой из зафиксированных абонентов^редприятия связи может оказаться в разряде дебиторов, отсюда и связь один к одному (1:1) между «Дебиторами» и «Пользователями». Каждый абонент, попавший в дебиторы, был выявлен в результате работы одного из операторов, что подтверждает связь один к одному (1:1) между таблицами «Дебиторы» и «Описание абонентов». Сущность «Дебиторы» и сущность «Список абонентов» имеют отношение один ко многим (1 : и), так как по каждому абоненту, зачисленному в дебиторы, может быть составлен не один список с определенным оператором, осуществляющим поиск дебиторов.

Таблица 3.12. Описание атрибутов сущности «Описание абонентов» Название атрибута Обозначение атрибута Динамичность Область возможных значений Идентификатор списка абонентов User ID Ст Ч Идентификатор оператора, выполнившего поиск Oper ID Ст Ч Наименование списка абонентов Name Дн Тк Предприятие (физическое или юридическое лицо) IsCorp Дн Ч, Тк Описание списка абонентов Info Дн Тк Дата составления списка абонентов ListDate Дн Дт

Объект «Список абонентов» образует идентифицирующие отношения с некоторыми другими объектами БД и БЗ. Отношение один к одному (1:1) связывает его с сущностью «Описание абонентов», так как в последнем и описывается составленный список. В свою очередь «Описание абонентов» имеет связь многих к одному (п : 1) с объектом «Операторы», в котором перечислены все операторы, работающие над выявлением дебиторов. «Операторы» и «Отбор дебиторов» — независимые объекты и связываются по отношению один ко многим (1 : п), что следует из факта работы одного оператора одновременно с несколькими абонентами и по нескольким периодам расчета.

Зависимая сущность «Долг» не имеет первичного ключа, но сразу три ключа других объектов БД и БЗ образуют ее составной ключ. Одно подразделение оператора связи может вести БД по нескольким суммам задолженности, которые были учтены в разные периоды по одному абоненту. Значит «Долг» связывается с сущностью «Подразделения» связью многие к одному (п : 1). Такая же связь имеется между таблицей «Долг» и таблицами «Дебиторы», «Расчеты» и «Пользователи». «Долг» имеет связь с таблицей «Дебиторы» по ключу Идентификатор дебитора для периода работы с ним, т.е. любой абонент может иметь задолженность в нескольких расчетных периодах. Таблица «Пользователи» учитывает всю информацию по абонентам, поэтому в ней также записываются сведения по одной или более задолженностям каждого абонента.

Естественно, что в одном периоде расчета должниками компании электросвязи могут стать сразу несколько абонентов. По двум ключам сущность «Долг» связывается с сущностью «Сальдо» связью один ко многим (1 : п). Это означает, что сумма задолженности одного абонента может быть распределена по нескольким соответствующим периодам задолженности. Все связи объекта «Долг» являются идентифицирующими в силу отсутствия у него собственного первичного ключа.

У сущности «Пользователи» связь с другими объектами БД и БЗ — неидентифици- рующая, так как этой сущности есть первичный уникальный ключ Идентификатор пользователя. За услугами абонент может беспрепятственно обратиться в несколько подразделений связи как ему удобно. Поэтому и отношение один ко многим (1 : п) с таблицей «Подразделения» логически вытекает из такого аргумента. Сальдо задолженности вычисляется на каждый расчетный период, а таких периодов у одного абонента может быть несколько — связь один ко многим (1 :п) объектов «Пользователи» и «Сальдо». Последний объект связан отношением многие к одному (п : 1) с сущностью «Расчеты», так как учет ведется по нескольким периодам сразу.

Когда идет отбор дебиторов, один период расчета может использоваться несколько раз по различным абонентам, следовательно, связь между объектом «Отбор дебиторов» и объектом «Расчеты» будет один ко многим (1 : п). Аналогично и для различных отделений предприятия связи: связь один ко многим (1 : п) «Отбора дебиторов» с «Подразделениями». Сущность «Отбор дебиторов» связана с объектом «Описание абонентов» отношением многие к одному (п : 1) по ключу Идентификатор оператора, выполнившего поиск, так как в отборе участвуют несколько операторов. В дебиторы записывают абонентов, у которых может быть сразу несколько задолженностей по различным периодам, поэтому связь многие к одному (п : 1) «Отбора дебиторов» с «Дебиторами» вполне оправдана.

Построенная в результате инфологического проектирования модель БД и БЗ с учетом обозначений, показанных на рис. 3.8, представлена на рис. 3.9. ПОЛЬЗОВАТЕЛИ

гН Идентификатор пользователя

Отделение банка Получатель оплаты Идентификатор типа пользователя Улица

Пункт приема оплаты № лицевого счета Имя пользователя ИНН

Дата открытия лицевого счета

Дата закрытия лицевого счета

Почтовый индекс

Дом

Корпус

Квартира

Физическое/юридическое лицо Дата заключения договора № договора на предоставление услуг связи № счета в банке

Код предприятия по классификатору Телефон

ДОЛГ

Идентификатор дебитора для работы с ним Идентификатор отделения Идентификатор периода расчета

Идентификатор пользователя Величина задолженности пользователя Количество месяцев задолженности Количество месяцев долга

УСЛУГА

Идентификатор услуги

Идентификатор дебитора для работы сним

Состояние услуги

Дата начала действия установки

САЛЬДО

Идентификатор пользователя Идентификатор периода расчета

Сальдо

В том числе налог Количество месяцев долга

ПОДРАЗДЕЛЕНИЯ

Идентификатор отделения

Улица

Получатель оплаты

Код подразделения оператора связи

Наименование подразделения

оператора связи

Расчетный счет

Дом

Код предприятия по классификатору ИНН

Телефон

Телефон для справок № АТС

СПИСОК АБОНЕНТОВ

Идентификатор пользователя

Идентификатор списка абонентов

ОПИСАНИЕ СПИСКА АБОНЕНТОВ

Идентификатор списка абонентов

Идентификатор оператора, выполняющего поиск

Наименование списка абонентов Физическое/юридическое лицо Описание списка абонентов Дата составления списка абоненте»

РАСЧЕТЫ

Идентификатор периода расчета

Дата закрытия месяца Наименование периода расчета Месяц закрытия Год закрытия Ключ завершения расчета

Идентификатор дебитора для периода работы с ним

Идентификатор пользователя (дебитора)

Идентификатор подразделения оператора

связи, чьи услуги будут отключены

Тип услуги, об отключении которых

предупреждается дебитор

Количество высланных предупреждений

об отключении абонентского устройства от сети

Дата посылки предупреждения об отключении

абонентского устройства от сети

Дата включения в список на отключение

Количество высланных предупреждений

о расторжении договора

Дата посылки предупреждения о снятии услуг,

расторжении договора

Дата подтверждения получения

предупреждения о снятии

Дата включения в список на снятие

Дата погашения задолженности

Текущая задолженность

Текущий долг

ДЕБИТОРЫ

Предприятие (физическое или юридическое лицо) Идентификатор типа пользователя

ОТБОР ДЕБИТОРОВ

Идентификатор выборочной процедуры отбора

Получатель оплаты Список пользователей Идентификатор периода расчета Идентификатор оператора, выполняющего поиск Тип услуги, об отключении которой дебитор предупреждается Физическое/юридичекое лицо Величина долга для населения (абсолютная величина) Величина долга для населения (% к начислению) Количество месяцев долга для населения

ОПЕРАТОРЫ

Дата проведения процедуры поиска Дата печати предупреждений Ключ завершения поиска дебиторов Посылать на отключение Отключить телефон Список дебиторов на отключение Посылать на удаление телефона Снять телефон Список телефонов на снятие Обзвон дебиторов Предварительное снятие телефона Список снятых телефонов

Идентификатор оператора, выполняющего поиск

Наименование подразделения оператора связи Ввод имени оператора Номер оператора

Рис. 3.9. ER-диаграмма объектов БД

<< | >>
Источник: В.К. Чаадаев. Бизнес-процессы в компаниях связи. 2005

Еще по теме 3.3. Пример проектирования инфологической модели: