Автоматизированная система анализа государственных контрактов
Разработка автоматизированной системы анализа исполнения государственных контрактов и договоров отдела информатизации Управления Федеральной службы судебных приставов. Технология создания программных средств и баз данных. Безопасность приложения.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 11.04.2012 |
Размер файла | 1,2 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Введение
Задача накопления, обработки и распространения (обмена) информации стояла перед человечеством на всех этапах его развития. В течение долгого времени основными инструментами для ее решения были мозг, язык и слух человека. Первое кардинальное изменение произошло с приходом письменности, а затем изобретением книгопечатания. Поскольку в эпоху книгопечатания основным носителем информации стала бумага, то технологию накопления и распространения информации естественно стали называть «бумажной информатикой». [8]
Положение в корне изменилось с появлением электронных вычислительных машин (ЭВМ). Первые ЭВМ использовались как большие автоматические арифмометры. Принципиально новый шаг был совершен, когда от применения ЭВМ для решения отдельных задач перешли к их использованию при комплексной автоматизации тех или иных законченных участков деятельности человека по переработке информации.
Одним из первых примеров подобного системного применения ЭВМ в мировой практике были так называемые административные системы обработки данных: автоматизация банковских операций, бухгалтерского учета, резервирования и оформления билетов и т.п. Решающее значение для эффективности систем подобного рода имеет то обстоятельство, что они опираются на автоматизированные информационные базы. Это означает, что в памяти ЭВМ постоянно сохраняется информация, нужная для решения тех задач, на которые рассчитана система. Она и составляет содержимое информационной базы соответствующей системы.
При решении очередной задачи система нуждается во вводе только небольшой порции дополнительной информации, остальное берется из информационной базы. Каждая порция вновь вводимой информации изменяет информационную базу системы. Эта база (информационная, или база данных) находится, таким образом, в состоянии непрерывного обновления, отражая все изменения, происходящие в реальном объекте, с которым имеет дело система.
Хранение информации в памяти ЭВМ придает этой информации принципиально новое качество динамичности, т.е. способности к быстрой перестройке и непосредственному ее использованию в решаемых на ЭВМ задачах. Устройства автоматической печати, которыми снабжены современные ЭВМ, позволяют в случае необходимости быстро представить любую выборку из этой информации в форме представления на бумаге.
По мере своего дальнейшего развития административные системы обработки данных перерастают в автоматизированные системы управления соответствующими объектами, в которых, как правило, не ограничиваются одной ЭВМ, а в составе двух и более ЭВМ объединяют в вычислительный комплекс.
В настоящее время деятельность организаций напрямую зависит от информированности и способности эффективно использовать имеющуюся информацию. Для этого необходимо провести большую работу по сбору, упорядочиванию, переработке информации, а также ее анализу. При большом количестве информации такая работа становится очень трудоемкой и требует большого количества времени и кадровых ресурсов.
Использование современных компьютерных технологий облегчает эту задачу. Компьютер играет роль усилителя интеллектуальных возможностей человека и общества в целом, а коммуникационные средства, интегрируемые с компьютерами, служат для связи и передачи необходимой информации. Внедрение компьютерных технологий позволяет существенно увеличить производительность труда и снизить затраты.
Поэтому перед организациями на первом плане стоит задача внедрения современных информационных технологий. Разработка автоматизированных систем сбора, обработки и анализа информации позволит облегчить труд специалистов. Сейчас многими организациями ведутся работы по созданию автоматизированных рабочих мест для реализации необходимых функций.
Одной из таких организаций является Федеральная служба судебных приставов. Необходимостью создания автоматизированной системы послужило увеличение объема документации, большая затрата времени на обработку, анализ результатов по различным параметрам.
Программа, которая будет создана в ходе выполнения работы должна систематизировать данные по техническим заданиям, государственным контрактам и договорам, счет-фактурам, так же на основе этих данных проводить анализ по различным параметрам (интенсивность ремонта и использования орг. техники, частоту заправки картриджей и т.д.). Полученные данные будет удобно использовать для различных отчетов.
В Службе судебных приставов не существует программных средств, автоматизирующих работу отдела информатизации по анализу исполнения государственных контрактов и договоров. Это определяет актуальность выбора темы выпускной квалификационной работы.
Автоматизация процесса анализа исполнения государственных контрактов и договоров привода позволит сотрудникам отдела избавиться от рутинной работы, быстро и эффективно производить учет выполненных работ, осуществлять анализ и получать отчеты с использованием собственной базы данных.
Целью данной работы является разработка системы автоматизации анализа исполнения государственных контрактов и договоров отдела информатизации УФССП по Архангельской области.
Задачи, поставленные перед выполнением работы:
· Проанализировать область деятельности отдела информатизации;
· Проанализировать литературу и выбрать средства реализации;
· Спроектировать и разработать систему;
· Провести тестирование и ввести систему в эксплуатацию.
Последовательное решение поставленных задач ведет к достижению выработанной цели.
1. Анализ существующей проблемы
В субъектах Российской Федерации (республиках, краях, областях) образованы Службы судебных приставов органов юстиции, возглавляемые Главными судебными приставами субъектов Российской Федерации, которые по занимаемой должности одновременно являются заместителями руководителей органов юстиции субъектов Российской Федерации.
В составе Служб судебных приставов субъектов Федерации действуют районные, межрайонные или соответствующие им территориальные подразделения судебных приставов, возглавляемые старшими судебными приставами. Данные подразделения являются основным звеном Службы судебных приставов и включают в себя должности судебных приставов-исполнителей и судебных приставов по обеспечению установленного порядка деятельности судов.
В настоящее время соответствующие структурные образования Службы судебных приставов (за исключением Службы судебных приставов Управления военных судов Министерства юстиции России) созданы на всей территории Российской Федерации, за исключением Чеченской Республики.
Воссоздание службы судебных приставов было осуществлено в 1997 году в соответствии с Федеральными законами «О судебных приставах» и «Об исполнительном производстве». В результате административной реформы, проведенной в соответствии с Указами Президента Российской Федерации от 09.03.2004 №314 «О системе и структуре федеральных органов исполнительной власти» и от 13.10.2004 №1316 «Вопросы службы судебных приставов», департамент судебных приставов в структуре Минюста России был упразднен, и создана Федеральная служба судебных приставов (ФССП России). Основными задачами ФССП России являются: обеспечение установленного порядка деятельности Конституционного Суда Российской Федерации, Верховного Суда Российской Федерации, Высшего Арбитражного Суда Российской Федерации, судов общей юрисдикции и арбитражных судов; организация принудительного исполнения судебных актов судов общей юрисдикции и арбитражных судов, а также актов других органов, предусмотренных законодательством Российской Федерации об исполнительном производстве; управление территориальными органами ФССП России.
Исполнение судебных решений является неотъемлемой частью основного права человека на судебное разбирательство, поэтому эффективность системы исполнения судебных решений имеет первостепенную важность для функционирования судебной системы в целом. Только реальное обеспечение права гражданина на справедливый суд в разумные сроки, может сохранить и повысить доверие общества к власти, обеспечивающей воплощение восстановленной судом справедливости. Эффективность мер по обеспечению исполнения судебных решений так же, как и статус, и уровень подготовки судебных исполнителей, являются ключевыми в организации всей системы. [9]
Управление Федеральной службы судебных приставов по Архангельской области является территориальным органом Федеральной службы судебных приставов Российской Федерации. Управление территориальным органом Федеральной службы судебных приставов (далее - территориальный орган ФССП России) и контроль за его деятельностью осуществляет руководство и центральный аппарат Федеральной службы судебных приставов (далее - ФССП России), подведомственной Министерству юстиции Российской Федерации.
В территориальный орган ФССП России входят:
- аппарат управления территориального органа ФССП России;
- структурные подразделения территориального органа ФССП России, состоящие из государственных служащих, технического и обслуживающего персонала, возглавляемые начальниками отделов - старшими судебными приставами.
Основными задачами территориального органа ФССП России являются:
1. Обеспечение установленного порядка деятельности судов общей юрисдикции и арбитражных судов, находящихся на территории соответствующего субъекта Российской Федерации;
2. Организация принудительного исполнения судебных актов судов общей юрисдикции и арбитражных судов (далее - судебные акты), а также актов других органов, предусмотренных законодательством Российской Федерации об исполнительном производстве (далее - акты других органов);
3. Управление районными, межрайонными и специализированными отделами (далее - структурные подразделения территориального органа ФССП России. [4]
В состав Управления ФССП по Архангельской области входят 52 структурных подразделения. Одним из них является отдел информатизации и обеспечения информационной безопасности, который занимается организацией единой системы информационно-телекоммуникационного обеспечения Управления и его структурных подразделений. Кроме этого данный отдел выполняет следующие функции:
· Обеспечивает функционирование информационных систем в установленной сфере деятельности.
· Обеспечивает справочно-информационное сопровождение деятельности структурных подразделений Управления.
· Организует и обеспечивает в пределах своей компетенции защиту сведений, составляющих государственную и иную охраняемую законом тайну.
· Создает и сопровождает в установленном порядке электронные банки данных.
Объектом информатизации в данном случае является процесс анализа исполнения государственных контрактов и договоров. Объект информатизации взаимодействует с внешней средой посредством получения данных. Также необходима обработка информации, поступающей из внешней среды и анализ выполненных действий.
Таким образом, структуру системы анализа исполнения государственных контрактов и договоров можно представить в следующем виде:
1. Получение информации из внешней среды.
2. Занесение информации в базу данных.
3. Формирование отчетов на основании поступившей информации и анализ деятельности отдела.
Взаимосвязь информационных потоков, средств обработки, хранения и анализа данных и составляет информационную систему. Термин «информационная система» можно применить для описания разработанного программного средства, так как оно относится к классу программных продуктов, облегчающих или автоматизирующих работу пользователей, а также выполняет более одной функции, например:
а) сбор информации из внешней среды посредством внесения сведений;
б) хранение информации в базе данных;
в) обработка полученной информации, составление отчетов;
г) поиск нужной информации.
Для создания собственной информационной системы необходимо обеспечить должное хранение сведений об объектах предметной области.
Данные, к которым требуется доступ на высоком уровне детализации со стороны нескольких пользователей, или данные, которые должны переноситься на многие платформы, обычно размещают в базах данных.
Так как предметная область гармонично укладывается в модель базы данных, поэтому было принято решение использовать для хранения информации базу данных. Набором информации, входящей в состав базы данных, управляет специальная системная программа, называемая «системой управления базами данных» (СУБД), которая обладает знаниями по поводу связи между разнородными данными, а также обладает целостностью. Проведенный анализ показал, что использование базы данных для хранения необходимой информации дает следующие преимущества:
1. СУБД берет на себя ответственность за поддержание ограничений целостности данных. При разработке базы данных нужно только сообщить СУБД, какого рода ограничения целостности система должна поддерживать в базе данных, так как механизм обеспечения целостности баз данных интегрируется с механизмом управления транзакциями - последовательностью операций модификации базы данных, воспринимаемыми СУБД как одна атомарная операция.
2. Вторым важным преимуществом использования баз данных является то, что есть возможность обеспечения выполнения так называемых «незапланированных» запросов к базе данных.
3. Еще одной важной причиной выбора базы данных является обеспечение так называемого «режима мультидоступа». В Службе судебных приставов г. Архангельска существует локальная вычислительная сеть с сервером и клиентскими рабочими станциями, которая обеспечивает совместное использование ресурсов. Поэтому важно, чтобы СУБД дала возможность любому пользователю любой момент времени воспользоваться услугами приложения. СУБД поддерживает возможность параллельно выполнить операции, задаваемые несколькими пользователями одновременно (или очень близко во времени), избавляя разработчиков от необходимости заботиться об обеспечении режима мультидоступа.
При выполнении этих функций СУБД должна использовать различные описания данных. Для создания описаний сначала нужно создать проект базы данных.
Любой процесс разработки любого проекта должен быть документирован. На сегодняшний день разработано несколько методик проектирования и документирования процессов разработки систем. Наиболее популярный метод проектирования системы основан на традиционном подходе к разработке приложений с помощью построения модели процесса разработки приложений MSF (MSF Process Model Application Development). Модель процесса разработки - составная часть структуры, описывающая жизненный цикл проекта разработки программного обеспечения. Она позволяет создавать продукт в постоянном контакте с заказчиком и адаптировать процесс в соответствии с его пожеланиями. Кроме того, этот метод способен обеспечить саму быструю реализацию ключевых составляющих проекта.
Любой проект разработки программного обеспечения в своем развитии проходит определенный жизненный цикл - последовательность этапов и совокупность действий, в результате которых создается первая версия продукта.
Для разработки программного продукта применим традиционную модель разработки приложений - модель водопада. Модель водопада представляет процесс разработки в виде строго упорядоченной последовательности этапов.
На этапе «сбора требований к системе» была собрана информация о предметной области из множества источников и были сформулированы основные требования к системе:
1. Система должна поддерживать механизмы занесения и хранения входящих данных: о технические задания; о государственных контрактах и договорах; о счет-фактурах; справочники; приложения.
2. Поиск в хранящихся данных различных сведений.
3. Анализ хранящихся сведений и составление отчетов за требуемый период.
На этапе анализа были проанализированы и сформулированы требования к приложению с точки зрения разработчика приложения.
По завершении анализа можно приступать к проектированию. На этом этапе выявляются сущности и описывается их поведение, создается проект базы данных.
Проект базы данных нужно начинать с анализа предметной области и выявления требований к ней пользователей, для которых создается база данных (в данном случае сотрудников отдела информатизации). Проектирование обычно поручается администратору базы данных (АБД). Им может быть как специально выделенный сотрудник организации, так и будущий пользователь базы данных, достаточно хорошо знакомый с машинной обработкой данных.
Объединив представления о содержимом базы данных, полученные на этапе сбора требований и анализа, сначала было создано обобщенное неформальное описание разрабатываемой базы данных. Это описание, выполненное с использованием естественного языка, математических формул, таблиц, графиков и других средств, понятных всем людям, работающих над проектированием базы данных, называют инфологической моделью данных (рис. 1).
Такая человеко-ориентированная модель полностью независима от физических параметров среды хранения данных. Поэтому инфологическая модель не должна изменяться до тех пор, пока какие-то изменения в реальном мире не потребуют изменения в ней некоторого определения, чтобы эта модель продолжала отражать предметную область.
Остальные модели являются компьютеро-ориентированными. С их помощью СУБД дает возможность программам и пользователям осуществлять доступ к хранимым данным лишь по их именам, не заботясь о физическом расположении этих данных.
Использование трехуровневой архитектуры (инфологический, даталогический и физический уровни) при разработке модели данных позволит обеспечить независимость хранимых данных от разработанного приложения, которое будет использовать эти данные. Также это позволит переписать хранимые данные на другие носители информации или реорганизовать их физическую структуру, изменив лишь физическую модель данных.
Рис. 1. Уровни моделей данных
2. Основные идеи по реализации поставленной цели
Технология создания и развития программных средств и баз данных опирается на модели жизненного цикла информационных систем, программных средств и баз данных. В моделях жизненный цикл структурируется рядом крупных фаз или этапов, каждый из которых характеризуется достаточно определенными целями и результатами. Модели жизненных циклов определяются выделением наиболее важных процессов, а также способами их группирования и отображения.
Каждая программа проходит свой жизненный путь от задумки до прекращения работы с ней по разным причинам. Согласно разработке программного продукта по стадиям жизненного цикла необходимо выбрать методику, в соответствии с которой будет разрабатываться и тестироваться программа. Наиболее приемлемой и эффективной, в данном случае, является технология нисходящего проектирования, кодирования и тестирования [5], которая позволит реализовать все требуемые функции на каждом из этапов.
В соответствии с жизненным циклом на начальном этапе необходимо сформировать требования к программному продукту, а также проанализировать предметную область, определить модели данных существующей информационной системы.
На стадии «анализа» будет проанализированы и сформулированы требования к приложению.
По завершении этапа «анализа» необходимо спроектировать приложение и базу данных.
Результат данного этапа - проектная модель, описывающая все классы с их поведением, свойствами и методами, и их взаимосвязи - в течение жизненного цикла проекта остается практически неизменной.
Процесс реализации циклически продолжается до тех пор, пока все необходимые функции не реализованы. Этап «Реализация» представляет собой практическое воплощение этапа «Проектирование»; в частности, должно существовать однозначное соответствие между проектными классами и кодом, созданным на этапе разработки.
Этап реализации состоит из следующих процессов:
а) реализация прототипа архитектуры;
б) реализация компонентов;
в) тестирование компонентов;
г) интеграция компонентов;
д) сборки приложения;
е) создание текстов на основе схем использования;
ж) проверка архитектуры;
з) планирование следующей сборки;
и) переход к следующей итерации.
Цель тестирования - сверка достигнутых результатов с ожидаемыми. Тестирование начинается по окончании этапа реализации. На каждой стадии итерации тестовая модель уточняется: из нее изымают тесты, утратившие актуальность, создаются схемы регрессионного тестирования и добавляются тесты для будущих сборок.
Проектирование данных играет ключевую роль при разработке информационных систем - ведь от качества выполнения этой работы зависят затраты, связанные с созданием приложений для конечных пользователей, а также с последующим сопровождением и модернизацией созданного продукта. Результатом этого этапа является «пустая» база данных.
Следующий этап жизненного цикла информационной системы - разработка приложения. Результатом этого этапа является готовый продукт, состоящий из ряда приложений, позволяющих пользователям вводить данные в таблицы либо редактировать уже существующие данные, анализировать введенные и представлять их в более удобном для восприятия виде - сводных таблиц или отчетов.
2.1 Использование архитектуры клиент-сервер
При разработке системы автоматизации анализа исполнения государственных контрактов и договоров отдела информатизации Службы судебных приставов по Архангельской области предполагалось, что в пределах отдела с программным средством будут работать несколько пользователей.
В Службе судебных приставов существует локальная вычислительная сеть на основе выделенного сервера под управлением Firebird SQL Server, к которому подключены рабочие станции. В пределах подразделения с разработанным приложением будет работать несколько пользователей. Поэтому есть две возможности использования базы данных: локальная база данных и база данных на основе архитектуры клиент-сервер.
При использовании локальной базы данных доступность данных может привести к появлению проблем, связанных с чрезмерной нагрузкой (трафик является узким место при получении данных). Поэтому целесообразнее при разработке приложения использовать архитектуру клиент-сервер [3], потому что она обладает следующими преимуществами:
1. Допускает независимый групповой доступ к данным, что позволяет отдельным пользователям обрабатывать только ту часть данных, которая нужна им для работы.
2. Обеспечивает эффективный доступ к данным сотрудникам, нуждающимся в информации, и позволяет извлекать информацию в наиболее удобном для них виде.
3. Повышает возможности централизованного управления многоуровневой моделью с целью обеспечения целостности данных, что позволяет уменьшить остроту проблемы централизованного контроля и анализа использования данных.
4. Устанавливает правила целостности базы данных для всей базы данных.
5. Обеспечивает более высокий уровень разделения труда между клиентом и сервером (каждый выполняет задачи, для решения которых он приспособлен).
6. Позволяет использовать улучшенные средства поддержки целостности данных.
7. Уменьшает нагрузку на сеть, поскольку клиенту возвращаются подмножества данных, а не целиком все таблицы, как в случае локальных баз данных.
Разрабатываемая база данных будет обрабатываться на сервере, что позволит сделать базу данных доступной нескольким пользователям. И сервер (в данном случае сервером является Firebird Server 2.1) будет предоставлять сервис клиенту. Он ждет, пока клиент сделает запрос, а затем обрабатывает этот запрос. Причем, сервер обладает способностью обрабатывать одновременно несколько запросов от нескольких клиентов, а также умеет распределять эти запросы по приоритетам.
Firebird Server Service Manager постоянно работает, обеспечивая непрекращающийся доступ к ее услугам.
Клиентская часть разрабатываемой системы автоматизации анализа исполнения государственных контрактов и договоров должна представлять собой приложение, обеспечивающее графический интерфейс с пользователем, и представляющее пользователю интерфейс для управления данными на сервере. Именно через разработанное клиентское приложение пользователь получает доступ к функциональным возможностям сервера.
Также на выбор архитектуры клиент-сервер повлияло то, что она поддерживает требования защиты данных и обеспечивает их целостность. Защита данных реализуется посредством назначения привилегий доступа на уровне пользователей к различным объектам базы данных. А для обеспечения целостности данных было использовано ограничение действий, которые могут выполняться над данными за счет применения множества проверок. Поэтому при обслуживании обращений к общим данным разрабатываемая база данных должна обеспечивать, по крайней мере, два основных метода доступа: монопольный и коллективный.
Монопольный доступ будет использоваться в двух случаях:
· во-первых, когда требуется исключить доступ к объектам со стороны других пользователей;
· во-вторых, когда производятся ответственные операции с БД, не допускающие других действий, например, изменение структуры БД.
Также необходимо реализовать режим коллективного доступа, где полная блокировка на используемые объекты не будет устанавливаться. Коллективный доступ возможен, например, при одновременном просмотре таблиц. Для организации коллективного доступа к СУБД применяется механизм блокировок. Суть блокировки состоит в том, что на время выполнения какой-либо операции в БД доступ к используемому объекту со стороны других потребителей временно запрещается или ограничивается.
2.2 Программная реализация базы данных
На современном рынке программных продуктов существует большой выбор СУБД: Oracle, Sybase, Informix, IBM и многие другие. В нашем случае эффективнее использовать СУБД Firebird SQL Server 2.1.
Главным аргументом в пользу данной СУБД было то, что на предприятии необходимо придерживаться единого стандарта, то есть создание баз данных необходимо производить на единой платформе. Службы судебных приставов централизованно перешли на платформу Windows 2000 и Firebird 2.1, и базы данных были реализованы на СУБД Firebird 2.1. СУБД Firebird - это универсальный пример системы клиент-сервер, которая может быть установлена на платформе Windows NT, а также на платформе Windows 95/98 [3].
Кроме того, на выбор данной СУБД повлияли следующие моменты:
1. Данный программный продукт полностью обеспечивает программиста инструментами для проектирования базы данных, а также данное условие реализации в итоге сэкономило время для разработки программы.
2. Система предназначена для работы с данными, которые хранятся в базах данных. Процесс обработки данных включает хранение, обработку и выборку информации.
3. В SQL Server нет ограничения на количество строк в таблице.
4. Использование структурированного языка запросов Transact-SQL.
5. Дистрибутивы Firebird существуют под Windows, Linux, Unix, Solaris, MacOS, под 32-х и 64-х битную архитектуру.
6. Firebird SQL Server - сервер баз данных основанный на открытом исходном коде Interbase 6.0. Распространяется бесплатно и не имеет лицензионных ограничений.
2.3 Использование языка запросов
Transact-SQL - это диалект языка реляционных баз данных. Transact-SQL добавляет к базовому языке SQL ключевые слова, позволяющие производить формирование инструкций выборки, сохранения данных и манипуляций с ними.
Формирование инструкций, выполняющих все базовые операции по сохранению данных, их считыванию и манипуляциями производится с помощью четырех основных слов, которые были использованы для оперирования данными таблиц разработанной базы данных:
1. INSERT - используется для добавления новой строки в таблицу базы данных.
2. DELETE - используется для удаления строки из таблицы.
3. UPDATE - используется для изменения строки таблицы в базе данных.
4. SELECT - используется для формирования различных инструкций при считывании данных из таблицы или множества таблиц.
Также язык SQL использовался при создании таблиц базы данных.
Строки таблицы базы данных не упорядочены, если не создать для таблицы специальный кластерный индекс. После того, как для таблицы создан индекс такого типа, строки хранятся упорядоченными по одному или двум столбцам, которые выбраны при создании индекса.
Основной принцип теории реляционных баз данных состоит в том, что каждый кортеж любого отношения может быть однозначно идентифицирован. Атрибут или сочетание атрибутов, обеспечивающих однозначность идентификации, называется первичным ключом (primary key). В таблице может быть определен только один первичный ключ. Firebird SQL Server использует ограничение Primary Key для гарантии, что уникальность значений в указанных полях никогда не будет нарушена.
Реляционная модель требует, чтобы каждая строка была уникальна, это требуется для решения проблем избыточности данных и предохраняет от случайного добавления одной или нескольких повторяющихся строк в таблицу. Так, для таблицы «Исполнитель» необходимо устранить повторяющиеся строки, поэтому был использован уникальный ключ unique, который помогает однозначно идентифицировать исполнителя по названию и адресу (вероятность того, что будут обращаться к двум разным исполнителем с одинаковыми названиями и адресом очень мала):
CREATE TABLE ISPOLN (
ID_ISP INTEGER NOT NULL,
NAZV VARCHAR(30) CHARACTER SET UTF8 NOT NULL,
ADRESS VARCHAR(30) CHARACTER SET UTF8,
DIRECTOR VARCHAR(30) CHARACTER SET UTF8,
INN INTEGER,
KPP INTEGER,
R_S INTEGER,
BANK VARCHAR(30) CHARACTER SET UTF8,
K_S INTEGER
);
/*** Primary Keys ***/
ALTER TABLE ISPOLN ADD CONSTRAINT PK_ISPOLN PRIMARY KEY (ID);
/*** Unique Constraints ***/
ALTER TABLE ISPOLN ADD CONSTRAINT UNQ1_ISPOLN UNIQUE KEY (ID);
Для поддержания логических связей между таблицами Firebird SQL Server использует внешний ключ, который соответствует первичному ключу другой таблицы. Например, между двумя таблицами «Подразделение» и «Государственные контракты» существует связь один-ко-многим между полями id (код подразделения) и podr. Между таблицами «Исполнитель» и «Государственные контракты» также существует связь по полям id (код исполнителя) и isp, а также между таблицей «Государственные контракты» и «Вид работ» существует еще одна связь по полям id (код вида работ) и vid_rab. Таким образом, таблица «Государственные контракты» связана с тремя таблицами, связь между которыми была определена при создании таблицы:
CREATE TABLE GOS_CONTR (
ID INTEGER NOT NULL,
N VARCHAR(20) CHARACTER SET UTF8,
DATA DATE,
ISP VARCHAR(20) CHARACTER SET UTF8,
VID_RAB VARCHAR(30) CHARACTER SET UTF8,
PODR1 VARCHAR(20) CHARACTER SET UTF8,
SUMM INTEGER
);
/*** Primary Keys ***/
ALTER TABLE GOS_CONTR ADD CONSTRAINT PK_GOS_CONTR PRIMARY KEY (ID);
/*** Foreign Keys ***/
ALTER TABLE GOS_CONTR ADD CONSTRAINT FK_GOS_CONTR_1 FOREIGN KEY (ISP) REFERENCES ISPOLN (ID) ON DELETE SET NULL ON UPDATE CASCADE;
ALTER TABLE GOS_CONTR ADD CONSTRAINT FK_GOS_CONTR_2 FOREIGN KEY (VID_RAB) REFERENCES VID_RAB (ID) ON DELETE SET NULL ON UPDATE CASCADE;
ALTER TABLE GOS_CONTR ADD CONSTRAINT FK_GOS_CONTR_3 FOREIGN KEY (PODR1) REFERENCES PODRAZDELENIYA (ID) ON DELETE SET NULL ON UPDATE CASCADE;
2.4 Механизмы доступа к данным
Для соединения физических и логических проектов приложения необходимо реализовать доступ к данным посредством SQLdb. Пакет SQLdb включает в себя набор модулей для доступа к различным SQL базам данных
Компонент IBConnection используется для соединения с хранилищем данных SQLdb.
Пакет SQLdb включает следующие компоненты:
· TSQLQuery потомок TDataset и он представляет данные из SQL запроса в виде таблицы. Также этот компонент можно использовать для выполнения запроса, не возвращающих данных.
· TSQLTransaction. Создает транзакцию на сервере базы данных. Он имеет методы для фиксации и отката транзакции.
· TXXXConnection.
· Где XXX название базы данных к которой необходимо подключиться. Каждый из этих компонентов переводит стандартные запросы от SQLQuery и SQLTransaction в запросы к конкретной базе данных, сглаживая их различия. [5]
В нашем случае наиболее оптимальным является использование компонента IBConnection. Он может быть связан с несколькими наборами данных с целью совместного использования соединения для выполнения команд, извлечения данных и выполнения операций с метаданными. Для установления соединения с источником данных SQLdb используется следующая строка соединения:
dm.IBConnection1. DatabaseName:=FileNameEdit1. FileName;
Компонент SQLQuery используется для выполнения запросов SQL, возвращающих результирующий набор, но с этим набором нужно оперировать с помощью другого компонента доступа к данным Dataset:
DBGrid1. DataSource. DataSet. Close;
dm.SQLQuery12.SQL. Clear;
dm. SqlQuery12.SQL. Add ('select * from isp_gk where PODR='+chr(39)+DBLookupComboBox1. Text+chr(39)+' AND DATA Between '+chr(39)+DateEdit1. Text+chr(39)+' AND '+chr(39)+DateEdit2. Text+chr(39)+' Order By DATA;');
DBGrid1. DataSource. DataSet. Open.
2.5 Обеспечение безопасности приложения
В настоящее время технологии доступа к данным, создавая объективные предпосылки для повышения эффективности деятельности общества, порождает целый ряд проблем, связанных с обеспечением надежности и установленного статуса использования информации, циркулирующей в программных средствах автоматизации процессов.
Модификация данных контролируется клиентским приложением программного средства, то есть средствами Lazarus, что обеспечивает показатель доверия к информации. При попытке внесения некорректной информации выдается предупреждение пользователю, а некорректная информация не вносится в базу данных.
Безопасность информации осуществляется с помощью средств аутентификации Firebird SQL Server, установленной на сервере.
Для управления доступом пользователей к серверу Firebird использует базу данных безопасности security.fdb. Во время инсталляции эта база данных содержит одного пользователя SYSDBA. Пароль пользователя SYSDBA masterkey.
Пользователь SYSDBA имеет полные привилегии ко всем базам данных на сервере.
2.6 Выбор средств разработки
Для разработки программной части системы автоматизации исполнения государственных контрактов и договоров отдела информатизации была выбрана среда разработки приложений Lazarus 0.9.28.2 [5]. В настоящее время Lazarus практически полностью поддерживает виджеты Win32, GTK1, GTK2, Carbon. Интуитивно понятная среда разработки Lazarus обеспечивает очень высокую производительность труда разработчика, при ее полном изучении.
Данная среда разработки была выбрана по следующим причинам:
1. Библиотека визуальных компонентов Lazarus Component Library позволяет автоматизировать многие операции, используя компоненты - строительные блоки приложения, используя которые, разработчик создает пользовательский интерфейс и включает в приложение некоторые невизуальные компоненты;
2. Lazarus позволяет самим разрабатывать нужные компоненты;
3. Распространяется бесплатно и не имеет лицензионных ограничений.
4. Поддерживает преобразование проектов Delphi
5. Поддерживаемые ОС: GNU/Linux, Microsoft Windows, Mac OS X, FreeBSD, WinCE.
6. Lazarus поддерживает работу с базами данных и обеспечивает доступ к файлам внешних баз данных из приложения: Firebird, Paradox, dBASE, Access, FoxPro, ODBC, Microsoft SQL Server, Oracle и Informix.
7. Lazarus - это, прежде всего, среда разработки приложений клиент-сервер и традиционной архитектуры для баз данных.
8. Lazarus обладает гибкостью и масштабируемостью используемой архитектуры баз данных;
9. Визуальная технология разработки программ позволяет быстро создавать приложения путем размещения в форме стандартных компонентов. При этом соответствующий код программы автоматически генерируется Lazarus. Такая технология освобождает от рутинной работы по созданию пользовательского интерфейса и позволяет уделить больше внимания внутренней организации программы и обработке данных;
10. Библиотека компонентов содержит множество стандартных компонентов, которые можно использовать при создании приложений.
11. 32-битовый компилятор Lazarus генерирует исполняемые EXE-файлы. Компилирование приложений занимает весьма незначительное время.
Данный пакет позволяет быстро и эффективно разрабатывать приложения различной степени сложности, в том числе программировать интерфейсы для различных баз данных.
3. Технико-экономическое обоснование работ по проекту
3.1 Цель проектирования
Применение новых информационных технологий в УФССП Архангельской области продиктовано ростом требований к качеству территориальным органам. В связи с необходимостью повышения эффективности работы служащих отдела информатизации требуется автоматизировать систему анализа исполнения государственных контрактов и договоров.
Можно выделить несколько основных целей проектирования:
- сокращение затрат рабочего времени сотрудников на поиск, создание, обработку необходимых документов и проверку;
- ускорение обмена информацией между различными государственными организациями.
3.2 Совокупность условий, при которых предполагается эксплуатировать будущий программный продукт
На самой ранней стадии проектирования следует учитывать клиентские операционные системы. Приложения, клиентская часть которых обращается к средствам операционной системы, называют «родными» для этой операционной системы. Для выполнения своих функций эти приложения используют прикладные интерфейсы операционной системы. При написании 32-разрядных Windows-приложений для операционных систем Windows 98, Windows NT и Windows 2000, применяется API Win32. таким образом, можно создать «родное» приложение для выбранной клиентской платформы.
В Службе судебных приставов была выбрана клиентская платформа на основе Windows NT. Среда Win32 предоставляет приложениям все возможности операционной системы высокого уровня при помощи таких средств, как многопоточные процессы, синхронизация, защита от несанкционированного доступа, ввод-вывод и управление объектами.
Перечислим основные качества платформы WinNT, которые повлияли на ее выбор в качестве основной клиентской платформы:
расширяемость;
переносимость - в соответствии с требованиями рынка код легко переносится с одного процессора на другой;
надежность и устойчивость - система защищает себя как от внутренних сбоев, так и от внешнего вторжения;
совместимость - пользовательский интерфейс и API совместимы с существующими системами Microsoft;
5) производительность - максимально быстрая и обеспечивает минимальное время отклика на каждой аппаратной платформе.
Также среда Win32 предоставляет большие возможности для создания пользовательского интерфейса. Специализированные Win32-приложения доступны большому количеству пользователей. Операционные системы располагают мощными средствами поддержки дополнительных технологий, которые можно применять в приложениях:
а) технологии поддержки мультимедиа DirectX;
б) технология доступа к данным Open Database Connectivity (ODBC) и OLE DB.
Так же на предприятии необходимо придерживаться единого стандарта, то есть создание баз данных необходимо производить на единой платформе. Службы судебных приставов централизованно перешли на Firebird SQL Server 2.1, и базы данных были реализованы на СУБД Firebird SQL Server 2.1. Firebird SQL Server - это универсальный пример системы клиент-сервер, которая может быть установлена на платформе Windows NT, а также на платформе Windows 95/98 [3].
Firebird SQL Server - сервер баз данных основанный на открытом исходном коде Interbase 6.0. Дистрибутивы Firebird существуют под Windows, Linux, Unix, Solaris, MacOS, под 32-х и 64-х битную архитектуру. Firebird SQL Server распространяется бесплатно и не имеет лицензионных ограничений.
Разработка интерфейса проектируемой системы будет производится с помощью пакета Lazarus 0.9.28.2. В настоящее время Lazarus практически полностью поддерживает виджеты Win32, GTK1, GTK2, Carbon. Интуитивно понятная среда разработки Lazarus обеспечивает очень высокую производительность.
3.3 Описание выполняемых программным продуктом функций
Система автоматизации анализа исполнения государственных контрактов и договоров должна включать следующие этапы:
добавление записей в базу данных;
редактирование записей в базе данных;
поиск данных по различным критериям;
выполнение различных запросов в базе денных.
Проектируемая система должна отвечать следующим требованиям:
ввод данных с клавиатуры персонального компьютера;
данные учитываются в виде таблицы с нарастающим итогом;
простой и понятный интерфейс для использования в других отделах УФССП связанных с административно хозяйственной деятельностью;
возможность проводить анализ данных по различным параметрам.
Пользователями проектируемой системы являются: Отдел информатизации и обеспечения безопасности информации, Отдел материально-технического обеспечения, Отдел реализации имущества должников.
3.4 Информационные объекты программного продукта
Ранее вся информация хранилась на бумажных носителях, что создавало неудобство и поиске и анализе необходимой информации. Сведений об аналогах данного программного продукта в доступной литературе не обнаружено. Разработка автоматизированных систем сбора, обработки и анализа информации позволит облегчить труд специалистов. Программа систематизирует данные по техническим заданиям, государственным контрактам и договорам, счет-фактурам, так же на основе этих данных удобно проводить анализ по различным параметрам (интенсивность ремонта и использования орг. техники, частоту заправки картриджей и т.д.). Полученные данные будет удобно использовать для различных отчетов.
3.5 Перспективы и планы развития проекта
В дальнейшем, если будет необходимо, возможно расширение базы данных, т.е. создание новых таблиц, так же создание и модернизация пользовательского интерфейса.
4. Выработка технического задания
4.1 Наименование программного продукта
Система автоматизации исполнения государственных контрактов и договоров отдела информатизации Управления Федеральной Службы Судебных приставов по Архангельской области.
4.2 Назначение программного продукта
Автоматизировать процесс анализа исполнения государственных контрактов и договоров. Что позволит сотрудникам отдела избавиться от рутинной работы, быстро и эффективно производить учет выполненных работ, осуществлять анализ и получать отчеты с использованием собственной базы данных.
4.3 Характеристика объекта автоматизации
Отдел информатизации и обеспечения информационной безопасности занимается организацией единой системы информационно-телекоммуникационного обеспечения Управления и его структурных подразделений. Кроме этого данный отдел выполняет следующие функции:
· Обеспечивает функционирование информационных систем в установленной сфере деятельности.
· Обеспечивает справочно-информационное сопровождение деятельности структурных подразделений Управления.
· Организует и обеспечивает в пределах своей компетенции защиту сведений, составляющих государственную и иную охраняемую законом тайну.
· Создает и сопровождает в установленном порядке электронные банки данных.
4.4 Требования к программному продукту
1. Система должна содержать
· Форму подключения к базе данных;
· справочники: Подразделения, Наименование изделия, Вид работ, Исполнитель, Предмет.
· Таблицы: Техническое задание, Государственные контракты, Приложения, Счет-фактуры.
· Запросы: Журнал счет-фактур, Исполнение Государственных контрактов и договоров.
2. Поддерживать механизмы занесения и хранения входящих данных: о технические задания; о государственных контрактах и договорах; о счет-фактурах; справочники; приложения.
3. Использование архитектуры клиент-сервер;
4. Возможность выбора файла базы данных.
5. Сортировка по всем столбцам таблицы.
6. Возможность редактирования уже существующих данных.
7. Присутствие в таблицах выпадающих полей. Данные полей берутся из справочников.
8. На форме Государственные контракты так же отображать таблицу приложения. Данные этой таблицы должны соответствовать только выбранному государственному контракту.
9. Поля «Сумма» в таблицах «Приложение» и «Счет-фактуры» должны вычисляться по формуле: Количество * Стоимость = Сумма.
10. Система должна содержать запрос, результатом которого является таблица, в поле «Сумма» которой содержится общая сумма всех счет-фактур соответствующих одному номеру Государственного контракта.
11. Система должна анализировать исполнение государственных контрактов по подразделениям и периоду заключения контракта. Так же считать общую сумму выбранных государственных контрактов и соответствующих им счет-фактур.
4.5 Этапы и срок создания программного продукта
Общий срок создания программного продукта составляет 3 месяца.
· Анализирование предметной области (7 дней)
· Проектирование базы данных (7 дней)
· Формирование физической модели данных (7 дней)
· Разработка базы данных (14 дней)
· Разработка программного модуля (30 дней)
· Тестирование программного продукта (7 дней)
· Доработка ошибок (7 дней)
5. Разработка программного продукта
Цель моделирования данных состоит в обеспечении разработчика ИС концептуальной схемой базы данных в форме одной модели или нескольких локальных моделей, которые относительно легко могут быть отображены в любую систему баз данных.
Наиболее распространенным средством моделирования данных являются диаграммы «сущность-связь» (ERD), нотация которых была впервые введена П. Ченом. Базовыми понятиями ERD являются:
Сущность (Entity) - реальный или воображаемый объект, имеющий существенное значение для рассматриваемой предметной области.
Каждая сущность должна обладать уникальным идентификатором. Каждый экземпляр сущности должен однозначно идентифицироваться и отличаться от других экземпляров данного типа сущности. Каждая сущность должна обладать некоторыми свойствами:
- каждая сущность должна иметь уникальное имя, и к одному и тому же имени должна всегда применяться одна и та же интерпретация. Одна и та же интерпретация не может применяться к различным именам, если только они не являются псевдонимами;
- обладать одним или несколькими атрибутами, которые либо принадлежат сущности, либо наследуются через связь;
- обладать одним или несколькими атрибутами, которые однозначно идентифицируют каждый экземпляр сущности.
Каждая сущность может обладать любым количеством связей с другими сущностями модели.
Связь (Relationship) - поименованная ассоциация между двумя сущностями, значимая для рассматриваемой предметной области. Связь - это ассоциация между двумя сущностями, при которой каждый экземпляр одной сущности ассоциирован с произвольным (в том числе нулевым) количеством экземпляров второй сущности, и наоборот.
Связи может даваться имя, выражаемое грамматическим оборотом глагола и помещаемое возле линии связи. Имя каждой связи между двумя данными сущностями должно быть уникальным, но имена связей в модели не обязаны быть уникальными. Имя связи всегда формируется с точки зрения родителя, так что предложение может быть образовано соединением имени сущности-родителя, имени связи, выражения степени и имени сущности-потомка.
Степень связи и обязательность графически изображаются следующим образом (рисунок 5.1).
Рисунок 5.1 - Степени связи
Атрибут - любая характеристика сущности, значимая для рассматриваемой предметной области и предназначенная для квалификации, идентификации, классификации, количественной характеристики или выражения состояния сущности. Атрибут представляет тип характеристик или свойств, ассоциированных с множеством реальных или абстрактных объектов (людей, мест, событий, состояний, идей, предметов и т.д.). Экземпляр атрибута определяется типом характеристики и ее значением, называемым значением атрибута. В ER-модели атрибуты ассоциируются с конкретными сущностями. Таким образом, экземпляр сущности должен обладать единственным определенным значением для ассоциированного атрибута.
При проектировании данных рекомендуется создавать атомарные атрибуты, например, страна и город - отдельные атрибуты при описании адреса.
Для обеспечения связи между сущностями используются понятия ключей:
- первичный ключ:
- альтернативный ключ;
- внешний ключ.
Первичный ключ (главный ключ) - атрибут или группа атрибутов, однозначно идентифицирующая каждый экземпляр сущности. При выборе первичного ключа следует отдавать предпочтение наиболее простым ключам, имеющим числовой тип значений.
Первичный (главный) ключ должен обладать следующими свойствами:
- должен имет уникальные значения;
- не должен содержать пустых (неопределенных) значений:
- должен быть компактным, т.е. должен содержать только такие атрибуты, удаление любого из которых может привести к утрате уникальности.
Внешний ключ - существует только для дочерней сущности и является ссылкой на значение ключа родительской сущности. При создании связей (отношений) между сущностями в дочернюю сущность передаются атрибуты, составляющие первичный ключ родительской сущности. Эти атрибуты и составляют внешний ключ. [3]
5.1 Схема данных
База данных BASE.FBD состоит из 9 таблиц, связанных между собой.
Таблица PODRAZDELENIYA используется для хранения данных о названиях подразделений ФССП по Архангельской области и имеет следующие поля (таблица 1):
Таблица 1
Имя |
Описание |
Тип |
|
Id |
идентификатор подразделения (первичный ключ) |
INTEGER |
|
Podr |
название подразделения |
VARCHAR |
|
GOS_CONTR_ID |
внешний ключ на таблицу GOS_CONTR |
INTEGER |
|
TEX_ZAD_ID |
внешний ключ на таблицу TEX_ZAD |
INTEGER |
|
SCH_F_ID |
внешний ключ на таблицу SCH_F |
INTEGER |
Таблица NAIM_IZD используется для хранения данных о наименовании изделий и имеет следующие поля (таблица 2):
Таблица 2
Имя |
Описание |
Тип |
|
Id |
идентификатор изделия (первичный ключ) |
INTEGER |
|
NAIM_IZD |
наименование изделия |
VARCHAR |
|
VID_RAB_ID |
внешний ключ на таблицу VID_RAB |
INTEGER |
|
PRILOZH_ID |
внешний ключ на таблицу PRILOZH |
INTEGER |
|
SCH_F_ID |
внешний ключ на таблицу SCH_F |
INTEGER |
Таблица ISPOLN используется для хранения данных об исполнителях и имеет следующие поля (таблица 3):
Таблица 3
Имя |
Описание |
Тип |
|
Id |
идентификатор исполнителя (первичный ключ) |
INTEGER |
|
NAZV |
Название исполнителя |
VARCHAR |
|
ADRESS |
Адрес исполнителя |
VARCHAR |
|
DIRECTOR |
Директор |
VARCHAR |
|
INN |
ИНН исполнителя |
INTEGER |
|
KPP |
КПП исполнителя |
INTEGER |
|
R_S |
Расчетный счет исполнителя |
INTEGER |
|
BANK |
Банк |
VARCHAR |
|
K_S |
Кассовый счет |
INTEGER |
|
GOS_CONTR_ID |
внешний ключ на таблицу GOS_CONTR |
INTEGER |
|
SCH_F_ID |
внешний ключ на таблицу SCH_F |
INTEGER |
Таблица PREDM используется для хранения данных о предметах государственных контрактов и имеет следующие поля (таблица 4):
Таблица 4
Имя |
Описание |
Тип |
|
Id |
идентификатор предмета договора, государственного контракта (первичный ключ) |
INTEGER |
|
PREDM |
предмет договора, государственного контракта. |
VARCHAR |
|
PRILOZH_ID |
Подобные документы
Разработка автоматизированной системы с использованием программных продуктов: 1С: Предприятие 8.2 (для создания автоматизированной системы) и CASE средство BPwin (для проектирования структуры системы). Обучение пользователей работе с конфигурацией.
курсовая работа [3,6 M], добавлен 04.11.2014Общая характеристика использования информационных технологий на предприятии. Обоснование выбора программных средств разработки приложения. Логическое и физическое моделирование базы данных. Построение диаграммы классов автоматизированной системы учета.
дипломная работа [12,5 M], добавлен 13.06.2015Автоматизированные информационные системы и их структура. Обзор существующих автоматизированных информационных систем "Расписание". Структурный подход к проектированию автоматизированной системы "Расписание", построение моделей данных и анализ внедрения.
дипломная работа [3,1 M], добавлен 29.06.2010Создание математической модели расчета показателей в отчете метрологического отдела по учету средств измерений компании. Разработка базы данных информации, пользовательского интерфейса. Техническое обеспечение автоматизированной информационной системы.
дипломная работа [3,7 M], добавлен 14.01.2018Обоснование решений по автоматизированному решению информационных задач. Реализация расширения схем данных. Используемые классификаторы и системы кодирования. Структурные единицы сообщений. Нормативно–справочная информация. Описание программных модулей.
курсовая работа [1,9 M], добавлен 11.06.2014Этапы создания автоматизированной системы учета договоров на предприятии: определение входной и выходной информации, проектирование базы данных методом "сущность-связь" и CASE-средствами, разработка интерфейса, составление руководства пользователя.
курсовая работа [2,5 M], добавлен 15.01.2011Создание автоматизированной системы диагностики конструктивных дефектов на основе акустических сигналов. Структурная схема автоматизированной системы. Методика анализа звукового сигнала. Алгоритм сравнения полученных данных с помощью модуля Diag.
курсовая работа [658,5 K], добавлен 14.07.2012Использование информационной системы отдела кадров предприятия для уменьшения времени выполнения функций, автоматического создания документации, проставления дат и табельных номеров, простоты поиска. Интерфейс программы и структура базы данных приложения.
курсовая работа [254,7 K], добавлен 25.03.2011Обзор медицинских информационных систем. Анализ и моделирование автоматизированной системы "Регистратура". Требования к составу и параметрам вычислительной системы. Обоснование выбора системы управления базами данных. Разработка инструкции пользователя.
дипломная работа [1,2 M], добавлен 14.10.2012Цель создания информационной системы. Автоматизированная информационная система "Строительное предприятие". Использование вычислительной техники и программного обеспечения для создания автоматизированной информационной системы управления на предприятии.
курсовая работа [2,5 M], добавлен 04.01.2011