Информационная система подготовки и проведения выборов муниципальными органами власти

Создание автоматизированной геоинформационной системы поддержки выборов в части сбора, хранения, обработки сведений об избирателях. Сравнительный анализ CASE-средств. Выбор программного обеспечения. Построение базы данных, пользовательского интерфейса ИС.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 20.07.2014
Размер файла 4,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

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

В составе RationalRose можно выделить 6 основных структурных компонент: репозиторий, графический интерфейс пользователя, средства просмотра проекта (browser), средства контроля проекта, средства сбора статистики и генератор документов. К ним добавляются генератор кодов (индивидуальный для каждого языка) и анализатор для С++, обеспечивающий реинжиниринг - восстановление модели проекта по исходным текстам программ.

RationalRose функционирует на различных платформах: IBM PC (в среде Windows), Sun SPARC stations (UNIX, Solaris, SunOS), Hewlett-Packard (HP UX), IBM RS/6000 (AIX).

Для работы системы необходимо выполнение следующих требований:

· Платформа Windows - процессор 80386SX или выше (рекомендуется 80486), память8Mб (рекомендуется 12Mб), пространство на диске 8Mб + 1-3Mб для одной модели.

· Платформа UNIX - память 32+(16*число пользователей) Mб, пространство на диске 30Mб + 20 при инсталляции + 1-3Mб для одной модели.

Совместимость по версиям обеспечивается на уровне моделей.

Для сравнения CASE- средств рассмотрим таблицу характеристик существующих систем (табл. 2.2.)

Таблица 2.2. Сравнительная таблица характеристик существующих систем

Наименование критерия

Silverrun

VantageTeamBuilder

ERwin

BPwin

S-Designor

CASE. Аналитик

RationalRose

Контроль и обеспечение целостности

+

+

+

+

+

+

+

Обработка ошибок

+

+

+

+

+

+

+

Простота работы с CASE-средством

+

+

+

+

+

+

+

Качество документации

+

+

+

+

+

+

+

Доступность обучения

+

+

+

+

+

+

+

Требования к техническим средствам

процессор не ниже i486, оперативная память не менее 8 Мб, дисковая память - 20 Мб

процессор не ниже 486, оперативная память не менее 16 Мб, дисковая память - 25 Мб

процессор Celeron 1100, оперативная память не менее 64 Мб, дисковая память - 350 Мб

процессор Celeron 1100, оперативная память не менее 64 Мб, дисковая память - 250 Мб

процессор не ниже 486, оперативная память не менее 32 Мб, дисковая память - 125 Мб

процессор - 386 и выше, основная память - 4 Мб, дисковая память - 5 Мб

процессор 80386SX или выше, память 8Mб, пространство на диске 8Mб + 1-3Mб для одной модели

Совместимость обновлений

+

+

+

+

+

+

+

Переносимость данных между различными версиями

+

+

+

+

+

+

+

Операционная среда функционирования

MS Windows, Macintosh, OS/2

UNIX

MS Windows

MS Windows

MS Windows

MS Windows 3.1, 95

Windows, UNIX

Стоимость

4500$

5700$

3295 $

2495 $

3900$

605$

6000$

Анализ таблицы характеристик CASE- средств показал, что наиболее существенными критериями при выборе являются операционная среда функционирования и стоимость продукта. Наилучшая цена предлагается разработчиками системы CASE-аналитик, но этот продукт работает на морально устаревших операционных системахMS Windows 3.1, MS Windows 95. Наилучшими средствами с точки зрения цены представляются CASE- средства Erwin и Bpwin, которые использовались в настоящей работе.

2.2 Функциональное моделирование ИС

Для моделирования данной информационной системы использовалось инструментальное средство Bpwin [9,10,11,12]. Главное преимущество BPwin перед другими продуктами, разработанными для работы с IntegratedComputerAidedManufacturingDEFinition (IDEF), является удобный интерфейс, большие функциональные возможности и простота в работе.

В BPwin используются методологий IDEF0, DFD и IDEF3[15]. Все они содержат графические и текстовые средства моделирования: первые - для удобства демонстрирования основных компонент модели, вторые - для обеспечения точного определения ее компонент и связей. Основной из трех методологий, является IDEF0. Она может быть использована для моделирования широкого класса систем. Для новых систем применение IDEF0 имеет своей целью определение требований и указание функций для последующей разработки системы, отвечающей поставленным требованиям и реализующей выделенные функции.

Методология IDEF0 предписывает построение иерархической системы диаграмм - единичных описаний фрагментов системы. Сначала проводится описание системы в целом и ее взаимодействия с окружающим миром (контекстная диаграмма), после чего проводится функциональная декомпозиция - система разбивается на подсистемы и каждая подсистема описывается отдельно (диаграммы декомпозиции). Затем каждая подсистема разбивается на более мелкие и так далее до достижения нужной степени подробности.

2.2.1 Модель действующей системы поддержки выборов «Как есть»

Контекстная диаграмма системы поддержки выборов, которая существует в настоящее время, построенная в рамках IDEF0 приведена на рис. 2.2. При определении механизмов функционирования системы использовалась структура администрации г. Таганрога, которая приведена в приложении №1.

Рис. 2.2. Контекстная диаграмма системы поддержки выборов модели “Как есть”

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

Рис. 2.3. Организация деятельности по поддержке выборов модели “Как есть”

Входная информация поступает на модуль “Анализа и обработки данных об избирателях”, в котором специалистами контрольно-организационного отдела с учетом требований нормативных документов различного уровня формируется запрос к базе данных. Этот запрос поступает в модуль “Ведения базы данных об избирателях”, в котором специалисты муниципальной избирательной компании на основе документов ЦИК, постановлений правительства и документов местных органов власти осуществляют обслуживание базы данных и формируют данные для составления списков избирателей и последующего анализа. На основе данных для списков с учетом требований федеральных законов формируются официальные списки избирателей для избирательных комиссий.

2.2.2 Модель системы поддержки выборов «Как надо»

Контекстная диаграмма системы поддержки выборов, построенная в рамках IDEF0 приведена на рис. 2.4.

Рис. 2.4. Контекстная диаграмма системы поддержки выборов

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

Рис. 2.5. Организация деятельности по поддержке выборов

Входная информация поступает на модуль “Анализа и обработки данных об избирателях”, в котором специалистами контрольно-организационного отдела с учетом требований нормативных документов различного уровня формируется запрос к базе данных. Этот запрос поступает в модуль “Ведения базы данных об избирателях”, в котором специалисты муниципальной избирательной компании и комитета социального анализа, прогнозирования и информации на основе документов ЦИК, постановлений правительства и документов местных органов власти осуществляют обслуживание базы данных и формируют данные для составления списков избирателей и последующего анализа. На основе данных для списков с учетом требований федеральных законов формируются официальные списки избирателей для избирательных комиссий, а данные для анализа совместно с данными о явке избирателей на избирательный участок обрабатываются комитетом социального анализа, прогнозирования и информации, обобщаются и передаются в сектор координации отраслей социальной сферы, который формирует рекомендации органам муниципальной власти для повышения явки избирателей при проведении следующих выборов.

Основной функцией модуля “Анализа и обработки данных” (рис. 2.6) является экспертиза потока документов, которые поступают из различных органов и ведомств. При рассмотрении документов, которые поступают из городских судов, принимаются решения о внесении сведений в части вменяемости или невменяемости избирателей. Анализ данных из регистрационных служб, военных комиссариатов, ЗАГСов, органов исполнения наказаний позволяет корректировать место жительства избирателя, зафиксировать факт нахождения на воинской службе или в местах лишения свободы, а также добавлять новые данные при рождении человека или помещать в архив в случае смерти.

Рис. 2.6. Анализ и обработка данных об избирателях

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

Процедура ведения базы данных об избирателях (рис. 2.7) заключается в том, что специалист муниципальной избирательной компании получает запрос на корректировку базы данных, конкретизирует процедуру, которую необходимо выполнить и в рамках своих полномочий корректирует базу на физическом уровне. Кроме этого в соответствии с требованиями постановлений правительства и документов в ЦИК он производит отбор данных необходимых для составления списков избирателей. К этой базе данных так же имеют доступ работники комитета социального анализа, прогнозирования и информации, которые производят выборку данных для анализа явки избирателей исходя из требований документов местных органов власти.

Рис. 2.7. Ведение базы данных об избирателях

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

Рис. 2.8. Формирование списковизбирателей

Обработка данных о явке избирателей (рис. 2.9) основывается на выборке из существующей базы данных и на сведениях о фактической явке на избирательные участки при проведении предыдущих выборов. Основная цель работы сотрудников социального анализа (Приложение №1), прогнозирования и информации состоит в выявлении закономерностей в числе проголосовавших от различных факторов, на которые может оказывать влияние администрация муниципального образования. Это расположение границ избирательных участков, качество дорожного покрытия, тротуаров и т.д. Результаты анализа обобщаются и служат основой для формирования рекомендаций муниципальным органам власти. Такую работу проводит сектор координации отраслей социальной сферы, опираясь на нормативные документы местных органов власти.

Рис. 2.9. Обработка данных о явке избирателей

2.2.3 Математическая модель системы поддержки выборов

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

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

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

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

M = {m1,..,mi}i - множество микрорайонов в которых планируется организовать избирательный участок, где i-номер микрорайона;

A = {a1,..,ai} - Множество адресов в i-ом микрорайоне и смежных микрорайонов не имеющих избирательных участков;

P = {p1,..pi} - множество людей проживающих в населенном пункте, тогда множество избирателей данного i-ого микрорайона будет определятся следующим условием:

p(a1,..,an)I - a1& a2V&a3G,

где a1 - атрибут отражающий, адрес места жительства гражданина;

a2- атрибут отражающий возраст гражданина;

a3 - атрибут отражающий гражданство гражданина;

V - множество возрастов, при которых избирателю разрешено голосование;

G - гражданство Российская Федерация;

I - множество потенциальных избирателей;

В соответствии изложенными выше проблемами и предложенными определениями складывается следующая задача, подобрать такое оптимальное k - количество персонала, урн для голосования (как правило на одну урну достаточно одного обслуживающего человека). Оптимальность заключается в таком минимальном количествеkпри котором не будет скапливаться очередь длиннее, чем 3 человека на каждую урну.

Решить эту задачу поможет математический аппарат систем массового обслуживания (СМО).

В данной задаче СМО состоит из какого-то числа обслуживающих единиц (урн), которые в дальнейшем будут называться каналами обслуживания. В общем случае для получения итого решения необходимо определить необходимое количество каналов обслуживания. Избирательный пункт это СМО предназначенная для обслуживания какого-то потока потенциальных избирателей (Общее количество которых равно количеству элементов множества I),поступающих в какие-то случайные моменты времени. Обслуживания избирателя продолжается какое-то, вообще говоря, случайное время Tоб, после чего урна освобождается и готова к приему следующей заявки. Случайный характер потока избирателей и времен обслуживания приводит к тому, что в какие-то периоды времени на входе СМО скапливаются излишне большое число избирателей (они становятся в очередь, длина которой ограничена, либо покидают СМО необслуженными); в другие же периоды СМО будет работать с недогрузкой или вообще простаивать.

Рис. 2.10 -канальная СМО с ожиданием»

Процесс работы СМО представляет собой случайный процесс с дискретным состоянием и непрерывным временем; Состояние СМО меняется скачком. Для решения нашей задачи необходимо использовать многоканальную систему массового со следующими характеристиками.

Сведем характеристики n-канальной СМО и представим их в виде таблицы.

Таблица 2.3

Обоз.

Физический смысл

Формула для вычисления

Размерность

л

Интенсивность поступления потока избиратлей

Исходные данные

Людей/час

м

Интенсивность обслуживания

м =

Людей /час

tобс

Время обслуживания одной заявки

Случайная величина (5-30 минут)

Минуты

Ротк

Вероятность отказа обслуживания избирателя

Исходные данные

с

Количество обслуженных заявок в единицу времени n каналами

с =

людей

ч

Количество обслуженных заявок в единицу времени одним каналом

ч =

людей

n

Количество каналов

Выходные данные

шт.

Р0

Вероятность простоя системы

P0=

t0

Время простоя системы, возникающее с вероятностью Р0

Р0*Т

минуты

T

Период

Исходные данные

минуты

q

Относительная пропускная способность

q = 1 - Pотк

людей

А

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

A = л*q

людей

z

Среднее число занятых каналов

z = A/м

шт.

r

Среднее число заявок в очереди

r =

людей

k

Среднее число заявок в системе

k = r + z

людей

tож

Среднее время ожидания в очереди

tож =

минуты

tсмо

Среднее время пребывания заявки в СМО (включая время ожидания и время обслуживания)

tсмо = tож+ tобс

минуты

Используя полученные формульные выражения и подставляя исходные данные в дальнейшем необходимо подобрать такое количество каналов обслуживания, при котором бы длина очереди на каждом из каналов не превышала 3 человека, и вероятность отказа не превышала бы значения 0,2.

2.3 Разработка информационной модели информационной системы

Для информационного моделирования удобно использовать средство моделирования ERwin [7].

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

ERwin имеет два уровня представления модели:

- логический

- физический.

Логический уровень - это абстрактный взгляд на данные, на нем данные представляются так, как выглядят в реальном мире, и могут называться так, как они называются в реальном мире, например "Постоянный клиент", "Отдел" или "Фамилия сотрудника". Объекты модели, представляемые на логическом уровне, называются сущностями и атрибутами. Логическая модель данных является универсальной и никак не связана с конкретной реализацией СУБД.

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

Создание модели данных, как правило, начинается с создания логической модели [13,14].

Для этого создадим сущности и атрибуты. Выделим следующие необходимые сущности:

- Избиратель;

- Документ избирателя;

- Орган регистрации;

- Результаты посещения выборов;

- Карточка регистрации места жительства;

- Суд;

- Решение суда;

- Военный комиссариат;

- Карточка воинского учета;

- Орган записи актов гражданского состояния (ЗАГС);

- Свидетельство о рождении;

- Свидетельство о смерти;

- Орган уголовно - исполнительной системы;

- Карточка учета осужденных.

Для сущности “Избиратель” выделим следующие атрибуты:

- ID избирателя;

- фамилия;

- имя;

- отчество;

- пол;

- гражданство;

- качество пути.

Для сущности “Документ избирателя” выделим следующие атрибуты:

- ID документа;

- ID избирателя;

- вид документа, удостоверяющего личность;

- серия документа;

- номер документа;

- код органа, выдавшего документ;

- дата выдачи документа.

Для сущности “Орган регистрации” выделим следующие атрибуты:

- ID органа регистрации;

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

- адрес органа регистрации.

Для сущности “Результаты посещения выборов” выделим следующие атрибуты:

- ID записи о посещении;

- ID избирателя;

- дата проведения выборов.

Для сущности “Карточка регистрации места жительства” выделим следующие атрибуты:

- ID карточки;

- ID органа регистрации;

- ID избирателя;

- адрес места жительства;

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

- дата снятия с регистрационного учета.

Для сущности “Суд” выделим следующие атрибуты:

- ID суда;

- наименование суда;

- адрес суда.

Для сущности “Решение суда” выделим следующие атрибуты:

- ID решения суда;

- ID суда;

- ID избирателя;

- дата вступления в силу;

- ФИО судьи;

- факт признания недееспособности.

Для сущности “Военный комиссариат” выделим следующие атрибуты:

- ID комиссариата;

- наименование;

- адрес.

Для сущности “Карточка воинского учета” выделим следующие атрибуты:

- ID карточки;

- ID комиссариата;

- ID избирателя;

- дата призыва;

- дата увольнения;

- дата заключения контракта;

- дата завершения контракта.

Для сущности “Орган записи актов гражданского состояния” выделим следующие атрибуты:

- ID ЗАГС'а;

- наименование;

- адрес.

Для сущности “Свидетельство о рождении” выделим следующие атрибуты:

- ID свидетельства;

- ID ЗАГС'а;

- ID избирателя;

- дата рождения;

- место рождения;

- ФИО матери;

- ФИО отца;

- реквизит документа.

Для сущности “Свидетельство о смерти” выделим следующие атрибуты:

- ID свидетельства;

- ID ЗАГС'а;

- ID избирателя;

- дата смерти;

- реквизит документа.

Для сущности “Орган уголовно - исполнительной системы ” выделим следующие атрибуты:

- ID органа УИС;

- наименование;

- адрес.

Для сущности “Карточка учета осужденных” выделим следующие атрибуты:

- ID карточки;

- ID органа УИС;

- ID избирателя;

- дата прибытия;

- дата убытия;

- статья осуждения.

После создания всех сущностей и атрибутов, необходимых для описания всего документооборота начинается разработка логической модели базы данных. После описания сущностей описываются свойства всех атрибутов. Свойства атрибутов включают текстовое описание атрибута, его тип данных, признак первичного (PK), альтернативного (AK) ключ.

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

При установлении идентифицирующей связи атрибуты первичного ключа родительской сущности автоматически переносятся в состав первичного ключа дочерней сущности (миграция атрибутов). В дочерней сущности они помечаются как внешний ключ - (FK).

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

информационный автоматизированный интерфейс избиратель

3. Проектирование информационной системы поддержки выборов

3.1 Общие сведенья об ArcGis

Программное обеспечение для географических информационных систем ArcGIS - это мощный, легкий в использовании инструмент для обеспечения доступа к географической информации, который дает возможности для отображения, изучения, выполнения запросов и анализа пространственных данных [24].

ArcGISразработана Институтом исследований систем окружающей среды (EnvironmentalSystemsResearchInstitute, ESRI, США).

Средства ArcGIS, осуществляют:

- создание карт из существующих источников пространственных данных;

- импорт табличных данных и их географическую привязку;

- использование языка запросов SQL для получения записей из базы данных и последующей работы с ними в географической среде;

- создание собственных пространственных данных для представления географических объектов, которые следует отображать и анализировать в ArcInfo.

В ArcGIS работа осуществляется с географическими (распределенными в пространстве) данными на интерактивных картах, называемых видами. Каждый вид ArcGIS представляет уникальную географическую таблицу содержания, похожую на обычную легенду, облегчающую понимание отображаемых данных. Табличные данные могут включать практически любой набор данных, содержит он или нет географическую информацию.

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

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

АгсGIS предоставляет масштабируемую среду для работы с ГИС как отдельных пользователей, так и групп пользователей, на серверах, через Web и в полевых условиях, это интегрированный набор программных ГИС-продуктов для создания полноценной ГИС. В его состав входит ряд структурных компонентов для создания прикладной ГИС решения специализированных задач в организации:

· АгсGISDesktop -- набор настольных ГИС приложений;

· АгсGISEngine -- встраиваемые компоненты разработчика для создания пользовательских ГИС-приложений;

· ArcSDE, АгсIMS и АгсGISserver - серверные ГИС;

· АгсPad, а также АгсGISDesktop и Engine для Tablet РС - Мобильные ГИС.

В состав настольных продуктов ArcGISDesktop входит интегрированный набор приложений АгсCatalog, АгсМар, АгсGlobe и АгсScene, а так же окно АгcТооlbox и графический интерфейс построения моделей - ModelBuilder. Посредством этих приложений и их интерфейсов можно выполнить любую задачу ГИС, простую или сложную, включая картографирование, географический анализ, редактирование и компиляцию данных, управление данными, их визуализацию и геообработку.

Продукты АгсGISDesktop обеспечивают потребности разных групп пользователей. Они доступны в трех вариантах с наращиваемым уровнем функциональности (рис. 3.1.):

· АгсViewсфокусирован на разноплановом использовании данных, их картографировании и анализе. ArcView предоставляет современные инструменты картографирования, использования данных и их анализа, а также начальные возможности редактирования и обработки геоданных.

Рис. 3.1. Функциональность продуктов АгсGISDesktop

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

· АгсInfo- самый мощный из настольных продуктов АгсGIS, предназначенный для ГИСпрофессионалов. Обеспечивает продвинутую ГИС-функциональность, в том числе разнообразные инструменты геообработки.

Поскольку АгсView, АгсEditor и АгсInfo имеют общую архитектуру, пользователи, применяющие любой из этих настольных продуктов, могут совместно выполнять общую работу и напрямую использовать полученные результаты. К картам, данным, символам, слоям карт, пользовательским инструментам и интерфейсам, отчетам, метаданным и прочим ресурсам можно обращаться и обмениваться ими при работе с любым из этих продуктов.

Для структурирования, поиска и использования данных ГИС, а также при каталогизации наборов данных на основе стандартных метаданных используется АгсCatalog. Администратор баз данных ГИС использует АгсCatalog при определении и построении баз геоданных. Администратору ГИС-сервера АгсCatalog нужен для администрирования архитектуры ГИС сервера.

Основным приложением АгcGISDesktop для выполнения всех картографических задач, таких как создание и публикация карт, анализ карт и редактирование данных является АгсМар.

В АгсМар есть два способа просмотра карты: в виде географических данных и в виде компоновки.

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

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

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

В настоящей работе на базе ArcGIS создается геоинформационная система поддержки выборов.

3.2 Структурная схема проектируемой информационной системы поддержки выборов

Структурная схема геоинформационной системы поддержки выборов приведена на рис. 3.2.

Рис. 3.2 Структурная схема системы

Графическая база данных (ГБД) представляется файлом tag_9.1.mxd, созданных в ArcGIS и представляет собой многослойную карту города, на которой изображены кадастровые кварталы, жилые массивы, транспортная инфраструктура города, здания и жильцы в соответствии с данными органов регистрации города (рис. 3.3.). Для решениязадач поддержки выборов на карте города созданы дополнительные слои, на которых с геодезической точностью нанесены избирательные округа, избирательные участки и центры избирательных участков.

Семантическая база данных (СБД) представляет собой файл tag.mdb, созданный в Microsoft Access. Эта база данных представляет собой компиляцию таблиц существовавшей ранее графической БД и физической модели разработанной в настоящей работе. Связующим звеном является таблица «Избиратель», которой соответствует графический слой «Жители». Эта таблица содержит как поля необходимые для системы поддержки выборов, так и поля свойственные графическому слою ArcGIS. Геометрия данного объекта - точка, то есть одна пара координат.

Рис. 3.3 Слои графической базы данных

Работа с СБД организована на основе языка программирования VisualBasic. Пользователь работает с ГИС через пользовательский интерфейс, который состоит из графического окна ArcGIS; панелей инструментов, предназначенных для вызова функций, и форм, предназначенных для вызова семантической информации.

Функциональный набор ГИС включает следующие функции:

1. Обслуживание данных об избирателях;

2. Обслуживание данных по результатам выборов;

3. Подготовка данных для избирательных комиссий;

4. Анализ посещаемости выборов в зависимости от удаленности проживания от избирательных участков;

5. Анализ посещаемости выборов в зависимости от качества пути от места проживания до избирательных участков;

6. Авторизации пользователя.

3.3 Построение базы данных системы

На физическом уровне семантическая база данных системы реализована в файле формата MDB приложения Microsoft Access. Последующая интеграция в ArcGIS выполнена с помощью приложения ArcCatalog. При переходе от логической модели база данных к физической реализации в конкретном приложении возникла особенность, связанная с невозможностью использования кириллицы при наименовании таблиц и информационных полей. Поэтому использовалась латиница. Соответствие имен таблиц и полей логической модели ее физической реализации приведено в табл. 3.1.

Таблица 3.1. Соответствие имен таблиц и полей логической модели ее физической реализации

Наименование таблицы (логическая модель)/ Наименование таблицы (физическая реализация)

Наименование поля (логическая модель)/ Наименование поля (физическая реализация)

1.

Избиратель / Citizen_p

ID избирателя / OBJECTID

Фамилия / NAME

Имя / FNAME

Отчество / TNAME

Пол / SEX

Гражданство / CITIZENSHIP

Качество пути / Road_Quality

2.

Документ избирателя / _Citizen_Document

ID документа / ID_DOCUMENT

ID избирателя / ID_CITIZEN

Вид документа / DOCUMENT_TYPE

Серия документа / DOCUMENT_SERIA

Номер документа / DOCUMENT_NUMBER

Код органа, выдавшего документ / ORGANIZATION_CODE

Дата выдачи документа / PAYMENT_DATE

3.

Орган регистрации / _Registration_Organization

ID органа регистрации / ID_ORGANIZATION

Наименование органа регистрации / ORGANIZATION_NAME

Адрес органа регистрации / ORGANIZATION_ADDRESS

4.

Результаты посещения выборов / _Election_Results

ID записи о посещении / ID_Results

ID избирателя / ID_CITIZEN

Дата проведения выборов / Election_Date

5.

Карточка регистрации места жительства / _Registration_Card

ID карточки / ID_CARD

ID органа регистрации / ID_ORGANIZATION

ID избирателя / ID_CITIZEN

Адрес места жительства / ADDRESS

Дата регистрации по месту жительства / REGISTRATION_DATE

Дата снятия с регистрационного учета / RETIRE_DATE

6.

Решение суда /_Judgement

ID решениясуда / ID_JUDGEMENT

ID суда / ID_JUSTICE

ID избирателя / ID_CITIZEN

Дата вступления в силу / BEGINE_DATE

ФИО судьи / JUDGE_NAME

Факт признания недееспособным / STUPID

7.

Военный комиссариат / _Army_Commissariat

ID комиссариата / ID_ARMY_COM

Наименование / NAME_COM

Адрес / ADDRESS_COM

8.

Карточка воинского учета / _ARMY_COM_CARD

ID карточки / ID_CARD

ID комиссариата / ID_ARMY_COM

ID избирателя / ID_CITIZEN

Датапризыва / SELECTION_DATE

Дата увольнения / RETIRE_DATE

Дата заключения контракта / START_CONTRACT_DATE

Дата завершения контракта / FIN_CONTRACT_DATE

9.

Свидетельство о рождении / _Birth_Certificate

ID свидетельства / ID_CERTIFICATE

ID ЗАГС / ID_WACS

ID избирателя / ID_CITIZEN

Дата рождения / BIRTH_DATE

Место рождения / BIRTH_PLACE

ФИО матери / MATHER_NAME

ФИОотца / FATHER_NAME

Реквизитдокумента / CERTIFICATE_NUMBER

10.

Свидетельство о смерти / _Death_Certificate

ID свидетельства / ID_CERTIFICATE

ID ЗАГС / ID_WACS

ID избирателя / ID_CITIZEN

Датасмерти / DEATH_DATE

Реквизитдокумента / CERTIFICATE_NUMBER

11.

Орган уголовно - исполнительной системы / _Jail

ID органа УИС / ID_JAIL

Наименование / JAIL_NAME

Адрес / JAIL_ADDRESS

12.

Карточка учета осужденных / _Jail_Card

ID карточки / ID_CARD

ID органа УИС / ID_JAIL

ID избирателя / ID_CITIZEN

Дата прибытия / ARRIVAL_DATE

Дата убытия / RETIRE_DATE

Статья осуждения / ARTICLE

13.

Суд / _Justice

ID суда / ID_JUSTICE

Наименование суда / JUSTICE_NAME

Адрес суда / JUSTICE_ADDRESS

3.4 Разработка функций обработки данных об избирателях

Эта функция предназначена для оперативного облуживания данных об избирателях.После начала работы функции (рис. 3.4.) формируется список избирателей, которые проживают на территории данного муниципального образования. При этом выполняется SQL запрос «Select * FromCitizen_p». Кроме этого, с помощью запросов "SELECT DISTINCT Str_Type FROM Citizen_p", "SELECT DISTINCT Str_Name FROM Citizen_p", "SELECT DISTINCT Sex FROM Citizen_p", "SELECT DISTINCT CitizenShip FROM Citizen_p", "SELECT DISTINCT UCH FROM Citizen_p", "SELECT DISTINCT Road_quality FROM Citizen_p" формируются вспомогательные классификаторы возможных значений типов и наименований улиц, пола избирателей, номеров избирательных участков и оценок качества пути от места жительства до участка при последующей работе с данными избирателя. После этого пользователь выбирает требуемого избирателя из списка и производит нажатие функциональной кнопки. Если нажата кнопка «Выход», то работа функции прекращается. Если нажата кнопка «Пуск», то по фамилии имени и отчеству определяется идентификатор ObjectID2 избирателя и формируются запросы на получение подробных сведений из нескольких таблиц «Select * FromCitizen_pWhereObjectID=ObjectID2», «Select * From _Army_CardWhereObjectID=ObjectID2», «Select * From _JudgementWhereObjectID=ObjectID2» и «Select * From _Jail_CardWhereObjectID=ObjectID2». Полученные данные отображаются на экране монитора, а также активизируется возможность выбора новых значений из классификаторов и ввода непосредственно с клавиатуры.

Рис. 3.4. Алгоритм функции обработки данных об избирателях

Если нажата кнопка «Сохранить», то по заданным пользователем данным формируется запрос на обновление записи об избирателе «UpdateCitizen_psetStr_Type=ComboBox2, Str_Name=ComboBox3, A_Number=TextBox1, Ext_Num=TextBox2, Apart=TextBox3, Sex=ComboBox4, Age=TextBox4, CitizenShip=ComboBox5, Uch=ComboBox6, Road_Quality=ComboBox7 WhereObjectID=ID_Citizen». После этого функция переходит в режим ожидания действий пользователя.

3.5 Разработка функции обработки даных данных по результатам выборов

Эта функция предназначена для оперативного наполнения системы данными о посещении избирателями уже прошедших выборов.

После начала работы функции (рис. 3.5.) формируется список избирателей, которые проживают на территории данного муниципального образования. При этом выполняется SQL запрос «Select * FromCitizen_p». После этого пользователю предлагается осуществить ввод даты проведения выборов Election_Date, данные о которых планируется обработать. Далее пользователь выбирает требуемого избирателя из списка и производит нажатие функциональной кнопки. Если нажата кнопка «Выход», то работа функции прекращается. Если нажата кнопка «Сохранить», то выполняется анализ контроля даты проведения выборов.

Если дата не указана, то пользователю выдается сообщение «Не указана дата выборов!» и функция переходит в режим ожидания действий пользователя. Если дата указана, то производится контроль наличия выбранного избирателя. Если избиратель не выбран, то пользователю выдается сообщение «Не выбран избиратель!» и функция переходит в режим ожидания действий пользователя. Если избиратель выбран, то по его фамилии имени и отчеству определяется идентификатор ObjectID избирателя и в таблицу данных о посещении выборов «_Election_Results» добавляется новая запись с помощью SQL запроса «Insert Into _Election_Results (ID_CITIZEN, Election_Date) values (ObjectID, Election_Date)». После этого функция переходит в режим ожидания действий пользователя.

Рис. 3.5. Алгоритм функции обработки данных по результатам выборов

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

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

1. Списки избирателей для избирательной комиссии в соответствии с требованиями федеральных законов;

2. Списки граждан, не вошедших в списки избирателей;

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

4. Списки избирателей, голосующих впервые.

После начала работы функции (рис. 3.6.) формируется список участков для выборов, которые функционируют на территории данного муниципального образования. Приэтомвыполняется SQL запрос «Select Distinct UCH From Citizen_p». После этого пользователю предлагается осуществить ввод даты проведения выборов Election_Date и выбрать избирательный участок UCH, для которого будут формироваться списки. После этого с помощью переключателей CheckBox пользователь может установкой «галочек» выбрать списки, которые будут формироваться функцией. CheckBox1 установлен по умолчанию и позволяет формировать “Основной список», CheckBox2 позволяет «Вывести список не включенных», CheckBox3 - «Указать причину невключения», а CheckBox4 - сформировать «Список голосующих впервые».

Далее, если нажата кнопка «Выход», то работа функции прекращается. Если нажата кнопка «Построение списка», то открывается файл начальных установок «Path.ini», из которого считывается путь формирования списков PathToList. После этого, если CheckBox1 не установлен, то функция переходит в режим ожидания действий пользователя. Если CheckBox1 установлен, то по адресу PathToList на запись открываются файлы List.txt - для основного списка, List_x.txt - для списка не включенных, List_x+.txt - для списка не включенных с указанием причин невключения, List_18.txt - для голосующих впервые. Затем формируется запрос на отбор данных об избирателях по заданному участку UCH2 «Select * FromCitizen_pWhereUch=Uch2». В результате образуется набор данных DbRecordSet, каждый элемент которого представляет собой запись таблицы Citizen_p, которая удовлетворяет заданным условиям.

Для набора DbRecordSet организуется цикл по всем элементам, для которых выполняется следующее. Если возраст DbRecordSet(Age) меньше 18-ти лет и гражданство DbRecordSet(CitizenShip) не «Российская Федерация», то выполняется переход к следующему элементу набора данных. Если возраст и гражданство удовлетворяют требованиям закона, то если CheckBox4 установлен (требуется список голосующих впервые) и DbRecordSet(Age)=18, то в файл List_18 выводятся сведения о текущем гражданине.

После этого, формируется запрос на дееспособность «Select * From _JudgementWhereID_Citizen= DbRecordSet(ObjectID)». Если гражданин недееспособен и CheckBox2 установлен (требуется список не включенных), то в файл List_x выводятся сведения. Если гражданин недееспособен и CheckBox3 установлен (требуется список не включенных с указанием причин), то в файл List_x+ выводятся сведения о текущем гражданине. Далее выполняется переход к следующему элементу набора данных.

Если гражданин дееспособен, то формируется запрос на судимость «Select * From _Jail_CardWhereID_Citizen= DbRecordSet(ObjectID)». Если гражданин осужден и CheckBox2 установлен (требуется список не включенных), то в файл List_x выводятся сведения. Если гражданин осужден и CheckBox3 установлен (требуется список не включенных с указанием причин), то в файл List_x+ выводятся сведения о текущем гражданине. Далее выполняется переход к следующему элементу набора данных.

Если гражданин не осужден, то формируется запрос на службу в вооруженных силах «Select * From _Army_CardWhereID_Citizen= DbRecordSet(ObjectID)». Если гражданин в армии и CheckBox2 установлен (требуется список не включенных), то в файл List_x выводятся сведения. Если гражданин в армии и CheckBox3 установлен (требуется список не включенных с указанием причин), то в файл List_x+ выводятся сведения о текущем гражданине. Далее выполняется переход к следующему элементу набора данных.

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

Если же гражданин не в армии (причины непопадания в список избирателей отсутствуют), то в файл List_x+ выводятся сведения о текущем гражданине.

После прохода по всем элементам набора DbRecordSet производится закрытие файлов List.txt, List_x.txt, List_x+.txt и List_18.txt, после чего функция переходит в режим ожидания действий пользователя.

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

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

Рис. 3.7. Пространственная информация о расположении центра избирательного участка

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

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

После начала работы функции сначала формируются массивы для хранения общего числа избирателей kkk(10) и числа проголосовавших vvv(10) в зоне, а также задаются координаты нижнего левого и правого верхнего углов экрана для отображения итогового графика LeftX, LeftY, RightX и RightY. Затем формируются список избирательных участков для выборов, которые функционируют на территории данного муниципального образования и список доступных в системе дат выборов. Приэтомсоответственновыполняются SQL запросы «Select Distinct UCH From Citizen_p» и «Select Distinct Election_DateFrom _Election_Results».

Рис. 3.9. Зоны для пространственного анализа зависимости посещения выборов от удаленности до избирательного участка

После этого пользователю предлагается выбрать избирательный участок ComboBox1, для которого будет строиться график (рис. 3.10), требуемую дату проведения выборов ComboBox2 и число разбиений в пространстве ComboBox3, на которое будет делиться территория участка. Кроме этого, оператор определяет вид представления результатов в виде графика или гистограммы - OptionButton1 и OptionButton2, соответственно. Далее, если нажата кнопка «Выход», то работа функции прекращается. Если нажата кнопка «Пуск», то если хотя бы один из необходимых для работы параметров ComboBox1, ComboBox2 или ComboBox3 пользователем не задан, то выдается сообщение «Недостаточно данных!» и функция переходит в режим ожидания действий пользователя. Если все данные заданы, то с помощью запроса «Select * FromElection_Centre_pWhereNumber_Ele=Combobox1» определяются координаты центра избирательного участка Centre_x и Centre_y. Затем формируется запрос на отбор данных об избирателях по заданному участку ComboBox1 «Select * FromCitizen_pWhereUch=ComboBox1». В результате образуется набор данных DbRecordSet, каждый элемент которого представляет собой запись таблицы Citizen_p, которая удовлетворяет заданным условиям. По данным этого набора определяется максимальное расстояние от жителей избирательного участка до его центра DistMax и ширина кольца зоны:

Step=. (3.1)

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

Dist=. (3.2)

По этому расстоянию рассчитывается номер зоны

nnn=, (3.3)

для которой в соответствующий элемент массива kkk(nnn) добавляется единица. Потом с помощью SQL запроса «Select *From _Election_ResultsWhereID_Citizen=DbRecordSet(ObjectID) andElection_Date=Combobox2» определяется участие избирателя в рассматриваемых выборах. Если избиратель принимал участие, то также наращивается соответствующий зоне nnn элемент массива vvv(nnn).

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

Если пользователь выбрал построение графика (OptionButton1=1), то формируется цикл по всем зонам анализа ComboBox3, в котором для первой зоны производится установка точки в координату (LeftX, LeftY-(LeftY-RightY)*vvv(nnn)/kkk(nnn)-1), а для всех последующих выполняется построение линии от предыдущей точки в точку (LeftX+nnn*(RightX-LeftX)/ComboBox3, LeftY-(LeftY-RightY)*vvv(nnn)/kkk(nnn)-1).

Рис. 3.10

Если пользователь выбрал построение гистограммы (OptionButton2=1), то также формируется цикл по всем зонам анализа ComboBox3, в котором строится прямоугольник с координатой нижнего левого угла (LeftX + nnn * (RightX - LeftX)/ComboBox3, LeftY) и правого верхнего угла (LeftX+ (nnn+1) * (RightX-LeftX) / ComboBox3, LeftY - (LeftY -RightY) * vvv(nnn) / kkk(nnn) - 1).

После построения графика функция переходит в режим ожидания действий пользователя.

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

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

После начала работы функции (рис. 3.11.) сначала формируются массивы для хранения общего числа избирателей kkk(5) и числа проголосовавших vvv(5) в категории, а также задаются координаты нижнего левого и правого верхнего углов экрана для отображения итогового графика LeftX, LeftY, RightX и RightY. Затем формируются список избирательных участков для выборов, которые функционируют на территории данного муниципального образования и список доступных в системе дат выборов. Приэтомсоответственновыполняются SQL запросы «Select Distinct UCH From Citizen_p» и «Select Distinct Election_Date From _Election_Results». После этого пользователю предлагается выбрать избирательный участок ComboBox1, для которого будет строиться график и требуемую дату проведения выборов ComboBox2.

Далее, если нажата кнопка «Выход», то работа функции прекращается. Если нажата кнопка «Пуск», то если хотя бы один из необходимых для работы параметров ComboBox1 или ComboBox2 пользователем не задан, то выдается сообщение «Недостаточно данных!» и функция переходит в режим ожидания действий пользователя. Если все данные заданы, то формируется запрос на отбор данных об избирателях по заданному участку ComboBox1 «Select * FromCitizen_pWhereUch=ComboBox1». В результате образуется набор данных DbRecordSet, каждый элемент которого представляет собой запись таблицы Citizen_p, которая удовлетворяет заданным условиям.

После этого, для набора DbRecordSet организуется цикл по всем элементам, для которых наращивается число попаданий в категорию по качеству пути kkk(DbRecordSet(Road_Quality). Потом с помощью SQL запроса «Select *From _Election_ResultsWhereID_Citizen=DbRecordSet(ObjectID) andElection_Date=Combobox2» определяется участие избирателя в рассматриваемых выборах.

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

Если избиратель принимал участие, то также наращивается соответствующий зоне DbRecordSet(Road_Quality элемент массива vvv(DbRecordSet(Road_Quality).

После завершения обработки всего набора данных DbRecordSet начинается построение графической части отображения результата. Для этого формируется цикл по всем пяти категориям анализа, в котором строится прямоугольник с координатой нижнего левого угла (LeftX + nnn * (RightX - LeftX)/ComboBox3, LeftY) и правого верхнего угла (LeftX+ (nnn+1) * (RightX-LeftX) / ComboBox3, LeftY - (LeftY -RightY) * vvv(nnn) / kkk(nnn) - 1).

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.