Реферат: Контроль и учет технического состояния магистральных трубопроводов, транспортирующих огнеопасные продукты

ЗАДАНИЕ

на курсовую работу

I.         Тема работы: Контрольи учет технического состояния магистральных трубопроводов, транспортирующихогнеопасные продукты.

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

III.      Объём исодержание проекта (графических работ 2 листа). База данных, и программноесредство, состоящее из программы взаимодействующей с базой. Пояснительнаязаписка, содержащая: введение, аналитическую часть, описывающую основные концепцииразработки баз данных, конструкторскую и технологическую часть описывающихархитектуру программного средства и работу с ним, заключение и списоклитературы.


Оглавление

ВВЕДЕНИЕ1       АНАЛИТИЧЕСКАЯ ЧАСТЬ1.1    Постановка задачи1.2    Сущности, отношения и ихсвойства1.3    Условия целостности1.4    Нормальные формы таблиц1.5    Бизнес правила1.6    Требования к БД2       КОНСТРУКТОРСКАЯ ЧАСТЬ2.1    Структура системы2.2    Проектирование базы данных2.3    Хранимые процедуры2.4    Запросы2.5    Выбор модели базы данных2.6    Организация взаимодействияс пользователем3       ТЕХНОЛОГИЧЕСКАЯ ЧАСТЬ3.1    Выбор средства разработки3.2    Выбор СУБД3.3    Описание системы3.4    Синхронизация при работе всети3.5    Технические характеристикипрограммы4       ИССЛЕДОВАТЕЛЬСКАЯ ЧАСТЬЗАКЛЮЧЕНИЕСПИСОК ЛИТЕРАТУРЫПриложение 1
ВВЕДЕНИЕ

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

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

·         удобный икомпактный способ хранения данных;

·         возможностьмногопользовательского доступа упрощающего формирование базы данных;

·         возможностьудаленного доступа;

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

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

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

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

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


1         АНАЛИТИЧЕСКАЯЧАСТЬ

 

1.1     Постановка задачи

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

·         Детальнаяразработка структуры базы данных и ее основных связей;

·         Анализсуществующих СУБД. Выбор одной СУБД, отвечающей требованиям надежности иимеющие необходимы для создания такой системы инструментарий;

·         Создание базыданных.

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

·         доступ к базечерез локальную вычислительную сеть;

·         редактированиеданных в базе;

·         возможностьпроведения поисков и сортировок по атрибутам.

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

1.2     Сущности, отношения и их свойства

При описании предметнойобласти с точки зрения концептуальной модели, прежде всего, следует определитьсущности, принадлежащие этой области, и связи между ними. Под сущностью, втаком подходе, понимается то, о чем должна накапливаться и обрабатыватьсяинформация. Например, при разработке схемы функционирования факультетасущностями могут выступать студенты факультета, преподаватели, читаемыепредметы, методический и научно-исследовательский материал, разрабатываемыйфакультетом, семинары и конференции, проводимые на данном факультете и такдалее. Каждая сущность характеризуется с помощью ограниченного набора свойств исвязей с другими сущностями. Группа сущностей, характеризующаяся одним и тем женабором свойств, образует набор сущностей. Так, например, список студентовобразует набор сущностей, который мы назовем СТУДЕНТ, и он будет характеризоватьсяследующими свойствами: фамилия, имя и отчество; номер студенческого билета;группа; место жительства; год поступления; наличие или отсутствие стипендии итому подобное. Свойства набора сущностей называют атрибутами, а множестводопустимых значений атрибутов называют доменом. С точки зрения датологическоймодели при описании атрибутов каждого из набора сущностей, следует указать нетолько имя атрибута, но и тип данных, описывающих данный атрибут. Тип данных,используемых при описании атрибута, зависит от того смысла, которыйвкладывается в этот атрибут при проектировании модели объектной области.Например, если в наборе объектов СТУДЕНТ атрибут «стипендия» характеризуеттолько ее наличие или отсутствие, то есть домен этого атрибута состоит всеголишь из двух значений, то для его описания следует использовать логический тип.Если же этот атрибут описывает истинное значение стипендии, то тогда егозначение должно быть числовым или денежным. Если же этот атрибут характеризуеттип стипендии, например, обычная, повышенная, именная и так далее, то типданных, отвечающих такому атрибуту, следует задать литерным.

В качестве примера,рассмотрим набор объектов, характеризующий сотрудников некоторой фабрики. Вкачестве атрибутов можно указать следующее:

/>

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

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

Связь между наборамиобъектов может быть трех типов. Первый тип – связь один к одному (обозначение1:1), когда между записями двух наборов сущностей устанавливается связь,характеризующаяся взаимно однозначным соответствием между сущностями, входящимив каждый из наборов. Например, если один из наборов сущностей – это номерапроданный на данный рейс билетов, а другой – это список пассажиров, то связьмежду ними будет один к одному. При нарушении этого принципа должен выдаватьсясигнал ошибки, так как на одно и то же место будет продано несколько билетов.Второй тип связи – это один ко многим (1: М), или обратный вариант – многие кодному (М:1). Например, если один набор сущностей это клиенты некоторого банка,а другой – счета банка, то если у клиента в банке допускается несколько счетов,то будет установлена связь один ко многим. В случае, когда первичнымрассматривается счет, то связь будет трактоваться как многие к одному. Третийвид связи – это многие ко многим (M:N), когда нескольким записям одного наборасущностей соответствует несколько записей другого набора. В качестве примераможно рассмотреть список студентов некоторого факультета и список предметов, читаемыхна этом факультете. Связь между этими наборами сущностей будет как разопределяться как многие ко многим, причем она усложнится, если для студентов нафакультете допускается некоторый выбор изучаемых предметов.

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

1.3     Условия целостности

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

·         категорийная целостность;

·         ссылочная целостностью

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

При использовании SQL Server2000 для построения базы данных отношения трансформируются в таблицы, а приустановлении связей с помощью схемы данных необходимо позаботиться обобеспечении целостности и каскадном обновлении и удалении данных.

1.4     Нормальные формы таблиц

Первая нормальная форма.

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

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

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

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

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

Вторая нормальная форма.

Для определения второй нормальной формы необходимо ввестиконцепцию функциональной зависимости. Это зависимость, связывающая атрибуты водной таблице с единственным значением в другой таблице. Функциональнуюзависимость для таблиц А и В принято обозначать как А--В. Это понятие подводит«на один шаг» к родственной концепции объединения таблиц в отношениятипа 1:1 или 1: М.

Таблица представлена во второй нормальной форме (2НФ) тогда итолько тогда, когда она представлена в 1НФ каждый не ключевой атрибут полностьюопределяется первичным ключом. Атрибут полностью определяется первичным ключом,если он находится в правой части выражения, описывающего функциональнуюзависимость, а левую часть этого выражения представляет первичный ключ иликакое-либо выражение, которое может быть вычислено на его основе с использованиемтранзитивных свойств функциональной зависимости.

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

Третья нормальная форма.

Если A является элементом кандидатного ключа, то будемназывать A первичным атрибутом. Под тривиальной функциональной зависимостьюздесь понимается зависимость типа xA -> A. Эта зависимость тривиальна,поскольку Х не принимает участия в идентификации первичного атрибута, лишьподразумевается в его определении.

Это определение — всего лишь оригинальный способ выразитьнеобходимость представления системы связанных таблиц в таком виде, чтобыатрибуты каждой таблицы непосредственно определялись либо суперключом, либокандидатным ключом этой таблицы. В предыдущем примере реализация определенияЗНФ состоит в выделении таблицы Контролирующие лица.

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

Таблица Х представлена в нормальной форме Бойса-Кодда (БКНФ),если в каждой нетривиальной функциональной зависимости В -> А, В являетсясуперключом.

Уместно сделать несколько замечаний о недостатках, присущихдаже таблицам, представленным в ЗНФ. Существуют варианты, когда имеет смыслразделить таблицу на более мелкие таблицы, если часть представленных в нейданных непостоянна и часто обновляется, а остальные данные пассивны иизменяются в редких случаях. Также есть смысл объединить таблицы, когданеобходимо обеспечить высокую скорость реакции на запрос. Можно даже пойти надублирование данных в таблицах, если это позволит снизить затраты на обработкузапросов, хотя формально не следовало бы этого делать. Иногда приходитсяотступить от принципа полной нормализации данных проекта. Это может бытьвызвано следующими причинами:

·         временемвыполнения запросов;

·         временемпроведения обновлений;

·         общим необходимымобъемом хранилища данных;

·         аномалиямиудаления, которые могут вызвать потерю целостности данных.

И ЗНФ и БКНФ являются теоретическими конструкциями, в товремя как большинство разработчиков баз данных работают в реальном мире.

Четвертая и пятая нормальные формы.

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

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

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

Прежде всего, для существования многозначной зависимоститребуется существование пар строк. А и В могут быть как отдельными атрибутами,так и объединением некоторого набора атрибутов. Тривиальная многозначнаязависимость для А -> В существует в случае, когда В является подмножеством Аили А объединяет B = xS (более крупная таблица содержит исходную таблицу).Существование многозначной зависимости порождает аномалию обновления. Четвертаянормальная форма устраняет нетривиальную многозначную зависимость в таблицепосредством создания меньших таблиц. Процесс нормализации представляет собойсоздание как можно большего числа все более мелких таблиц в целях сокращенияизбыточности данных.

Определим четвертую нормальную форму.

Таблица Х представлена в 4НФ тогда и только тогда, когда онапредставлена в БКНФ и для любой многозначной зависимости А -> В в этойтаблице можно сказать, что эта зависимость либо является тривиальной, либо Аявляется суперключом таблицы X.

И последнее. Рассмотрим пятую нормальную форму.

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

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

1.5     Бизнес правила

         I.            Факты

·         При созданиитрубопровода создается участок трубопровода.

       II.            Ограничения

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

·         Пользователь неможет сохранить изменения в базе пока не введет все необходимые данные.

      III.            Активаторы

·         Если срокэксплуатации участка трубопровода истек, то необходимо уведомить пользователяоб этом.

·         Если в базехранятся не все необходимы данные о трубопроводе, то необходимо уведомитьпользователя об этом.

     IV.            Вывод

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

·         Если удаляетсяучасток трубопровода, то удаляются все его испытания, ревизии, отказы, ремонты,диагностики.

       V.            Вычисления

·         Общая длинатрубопровода вычисляется как сумма длин участков трубопровода.

·         При вводе датыпоследнего обследования и выбора периодичности обследования, вычисляется датаследующего обследования.

1.6     Требования к БД

·         доступ черезлокальную вычислительную сеть;

·         вся информациядолжна представляться в определенном виде в соответствии с разработаннойструктурой;

·         в БД долженпредусмотрен поиск;

·         в качествеминимальных входных данных должны рассматриваться:

Ø   вид трубопровода;

Ø   тип трубопровода;

Ø   наименование трубопровода.

·         предупреждатьпользователя если он не ввел все данные о трубопроводе или участкетрубопровода;

·         выдавать сообщенияпользователю о наиболее важных изменениях в состоянии трубопровода и невведенных наиболее важных данных.


2         КОНСТРУКТОРСКАЯЧАСТЬ 2.1     Структура системы

Для реализации поставленной задачи необходимо разработать триподсистемы:

·         подсистемахранения данных;

·         подсистемадоступа к базе данных;

Подсистема хранения данных представляет собой реляционнуюбазу данных.

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

2.2     Проектирование базы данных

Для реализации поставленной задачи необходимо создатьтаблицы:

·         «Трубопроводы»,

·         «Участкитрубопроводов»,

·         «Примечание»,

·         «Обследование сцелью продления срока службы»,

·         «Ремонт научастках»,

·         «Ревизия участковтрубопроводов»,

·         «Диагностикаучастков трубопроводов»,

·         «Испытаниеучастков трубопроводов»,

·         «Отказы научастках».

«Трубопроводы». В этой таблице хранятся основные данные.

-         «Вид». Значениеэтого атрибута является вид трубопровода. Вид трубопровода выбирается пользователемиз справочника «Виды трубопровода».

-         «Наименованиетрубопровода». Значением этого атрибута является название трубопровода,задаваемое пользователем.

-         «Наименованиеначала линии(трубы)». Значением этого атрибута является название начала линии,задаваемой пользователем.

-         «№ точкиподключения». Значением этого атрибута является номер точки подключения,задаваемой пользователем.

-         «Наименованиеконца линии(трубы)». Значением этого атрибута является название конца линии,задаваемой пользователем.

-         «Количествоотказов». Значением этого атрибута является числовое значение, соответствующееколичеству отказов трубопровода.

-         «Категориятрубопровода». Значением этого атрибута является категория трубопровода,выбираемая пользователем из справочника «Категория трубопровода».

-         «Транспортируемыйпродукт». Значением этого атрибута является транспортируемый продукт, выбираемыйпользователем из справочника «Транспортируемые продукты».

-         «Регистрационный№ ФСТН». Значением этого атрибута является номер регистрации в ФСТН, которыйвыдается при регистрации объекта.

-         «Дата регистрациив ФСТН». Значением этого атрибута является дата регистрации в ФСТН.

-         «Регистрационный№ СТН(ОТН)». Значением этого атрибута является номер регистрации в СТН, которыйвыдается при регистрации объекта.

-         «Дата регистрациив СТН(ОТН)». Значением этого атрибута является дата регистрации в СТН.

-         «Регистрационный№ СПК». Значением этого атрибута является номер регистрации в СТН, которыйвыдается при регистрации объекта

-         «Дата регистрациив СПК». Значением этого атрибута является дата регистрации в СПК.

-         «Дата снятия срегистрации в ФСТН». Значением этого атрибута является дата снятия срегистрации в ФСТН.

-         «Дата снятия срегистрации в СТН(ОТН)». Значением этого атрибута является дата снятия срегистрации в СТН.

-         «Дата снятия срегистрации в СПК». Значением этого атрибута является дата снятия регистрации вСПК.

-         «Организацияместоположения». Значением этого атрибута является полный список организаций,которым принадлежит трубопровод.

-         «Месторождение».Значением этого атрибута является наименования месторождение, выбираемоепользователем из справочника «Месторождения».

-         «Местоустановки». Значением этого атрибута является наименование предприятия, гдеустановлен трубопровод.

-         «Отношение к ОПО».Значением этого атрибута является наименование опасных промышленных объектов,который выбирается пользователем.

-         «Владелец».Значением этого атрибута является наименование владельца предприятия которомупринадлежит трубопровод.

-         «Дополнительнаяинформация». Значением этого атрибута является дополнительные сведения отрубопроводе, вводимые пользователем.

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

-         «Трубопровод».Значением этого атрибута является указатель на трубопровод к которомупринадлежит примечание.

-         «Наименованиеучастка». Значением этого атрибута является название участка трубопровода,задаваемое пользователем.

-         «Дата врезки».Значением этого атрибута является дата, когда была осуществлена врезкатрубопровода.

-         «Протяженность(м)». Значением этого атрибута является протяженность участка трубопровода.

-         «Марка стали,ГОСТ или ТУ». Значением этого атрибута является марка стали из которой сделантрубопровод.

-         «Наружный диаметр(мм)». Значением этого атрибута является наружный диаметр трубопровода.

-         «Рабочеедавление, кгс/кв.см(Мпа)». Значением этого атрибута является рабочее давлениетрубопровода.

-         «Рабочаятемпература стенки, град. С». Значениме этого атрибута является рабочаятемпература стенки участка трубопровода.

-         «Тип изоляции».Значением этого атрибута является тип изоляции, выбираемый пользователем изсправочника «Тип изоляции».

-         «Тип попутногообогрева». Значением этого атрибута является тип попутного обогрева, выбираемыйпользователем из справочника «Тип попутного обогрева».

-         «Марка ингибитора».Значением этого атрибута является марка ингибитора, выбираемая пользователем изсправочника «Марка ингибитора».

-         «Номинальнаятолщина (мм)». Значением этого атрибута является номинальная толщина участкатрубопровода.

-         «Фактическаятолщина стенок (мм)». Значением этого атрибута является фактическая толщинастенок, которая вычисляется при проведении экспертизы.

-         «Скоростькоррозии, мм/год». Значением этого атрибута является скорость коррозиитрубопровода.

-         «Номер проекта».Значением этого атрибута является номер проекта.

-         «Наименованиепроектной организации». Значением этого атрибута является наименованиепроектной организации, которая выбирается пользователем из справочника«Проектные организации»

-         «Наименованиестроительно-монтажной организации». Значением этого атрибута является наименованиестроительно-монтажной организации, которая выбирается пользователем изсправочника «Строительно-монтажные организации».

-         «Дата окончаниястроительства». Значением этого атрибута является дата окончания строительстваучастка трубопровода.

-         «Дата ввода вэксплуатацию». Значением этого атрибута является дата ввода в эксплуатациюучастка трубопровода.

-         «Дата окончанияслужбы». Значением этого атрибута является дата окончания срока службы участкатрубопровода.

-         «Выявленныеотклонения от технических параметров». Значением этого атрибута являетсявыявленные отклонения от технических параметров в ходе эксплуатации.

-         «Дата вывода изэксплуатации». Значением этого атрибута является дата вывода участкатрубопровода из эксплуатации.

-         «Причина выводаиз эксплуатации». Значением этого атрибута является информации содержащаяпричины вывода участка трубопровода из эксплуатации.

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

-         «Трубопровод».Значением этого атрибута является указатель на трубопровод к которомупринадлежит примечание.

-         «Дата примечания».Значением данного атрибута является дата, когда примечание было добавлено.

-         «Примечание».Значением этого атрибута является дополнительные сведения о трубопроводе,вводимые пользователем.

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

-         «Трубопровод».Значением этого атрибута является указатель на трубопровод к которомупринадлежит обследование.

-         «Датаобследования с целью продления службы». Значением этого атрибута является датапроведения обследование для продления срока службы трубопровода.

-         «Наименование организации,проводившей обследование». Значением этого атрибута является наименованиеорганизации проводившей обследование.

-         «Ф.И.О.эксперта». Значением этого атрибута является Ф.И.О. эксперта, который проводилобследование трубопровода.

-         «Выявленные отклоненияот технических параметров». Значением этого атрибута является выявленныеэкспертом отклонения от нормы.

-         «Дата завершенияэксплуатации». Значением этого атрибута является дата завершения эксплуатациитрубопровода.

-         «Заключение».Значением этого атрибута является заключение составленное экспертом врезультате обследования трубопровода.

-         «Номерзаключения». Значением этого атрибута является номер заключения.

-         «Регистрационныйномер заключения в ФСТН». Значением этого атрибута является номер заключения вФСТН, которое регистрируется после обследования трубопровода и составленияэкспертом заключения.

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

-         «Участоктрубопровода». Значением этого атрибута является указатель на участоктрубопровода к которому относится ревизия.

-         «Датаобследования». Значением этого атрибута является дата проведения ревизии научастке трубопровода.

-         «Наименованиеорганизации, проводившей обследование». Значением этого атрибута являетсянаименование организации проводившей ревизию участка трубопровода.

-         «Ф.И.О.эксперта». Значением этого атрибута является Ф.И.О. эксперта, который проводилревизию участка трубопровода.

-         «Дата следующегообследования». Значением этого атрибута является дата следующего проведенияревизии.

-         «Периодичность».Значением этого атрибута является периодичность проведения ревизий на участкетрубопровода.

-         «Датазаключения». Значением этого атрибута является дата заключения, когда былосделано заключение на основе ревизии.

-         «Номерзаключения». Значением этого атрибута является номер заключения.

-         «Заключение».Значением этого атрибута является заключение которое было сделано экспертом входе проведения ревизии.

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

-         «Участоктрубопровода». Значением этого атрибута является указатель на участоктрубопровода к которому относится испытание.

-         «Дата обследования».Значением этого атрибута является дата проведения испытания на участкетрубопровода.

-         «Наименованиеорганизации, проводившей обследование». Значением этого атрибута являетсянаименование организации проводившей испытание участка трубопровода.

-         «Ф.И.О.эксперта». Значением этого атрибута является Ф.И.О. эксперта, который проводилиспытание участка трубопровода.

-         «Дата следующегообследования». Значением этого атрибута является дата следующего проведенияиспытания.

-         «Периодичность».Значением этого атрибута является периодичность проведения испытаний на участкетрубопровода.

-         «Датазаключения». Значением этого атрибута является дата заключения, когда былосделано заключение на основе испытания.

-         «Номерзаключения». Значением этого атрибута является номер заключения.

-         «Заключение».Значением этого атрибута является заключение которое было сделано экспертом входе проведения испытания.

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

-         «Участоктрубопровода». Значением этого атрибута является указатель на участоктрубопровода к которому относится диагностика.

-         «Датаобследования». Значением этого атрибута является дата проведения диагностики научастке трубопровода.

-         «Наименованиеорганизации, проводившей обследование». Значением этого атрибута являетсянаименование организации проводившей диагностику участка трубопровода.

-         «Ф.И.О.эксперта». Значением этого атрибута является Ф.И.О. эксперта, который проводил диагностикуучастка трубопровода.

-         «Дата следующегообследования». Значением этого атрибута является дата следующего проведения диагностики.

-         «Периодичность».Значением этого атрибута является периодичность проведения диагностик научастке трубопровода.

-         «Датазаключения». Значением этого атрибута является дата заключения, когда былосделано заключение на основе диагностики.

-         «Номерзаключения». Значением этого атрибута является номер заключения.

-         «Заключение».Значением этого атрибута является заключение которое было сделано экспертом входе проведения диагностики.

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

-         «Участоктрубопровода». Значением этого атрибута является указатель на участоктрубопровода к которому относится ремонт.

-         «Дата поломки».Значением этого атрибута является дата поломки участка трубопровода.

-         «Дата началаремонта». Значением этого атрибута является дата начала ремонта участкатрубопровода.

-         «Заключение ополомке». Значением этого атрибута является заключение о поломке участкатрубопровода.

-         «Дата концаремонта». Значением этого атрибута является дата окончания ремонта участкатрубопровода.

-         «Выполненныеработы». Значением этого атрибута является информация которая содержит переченьвсех выполненных работ в ходе ремонта участка трубопровода.


Описанные сущности представлены на ER-диаграмме на рис. 1.

/>


Рис. 1. ER –диаграмма.


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

·          сущностипреобразуются в таблицы,

·          связи один комногим преобразуются во внешние ключи,

·          связи многие комногим преобразуются в таблицы.

Полученная по этим правилам схема базы данных расположена нарисунке 2.


/>

Рис. 2.

2.3     Хранимые процедуры

Хранимая процедура для удаления записи из таблицы«Трубопроводы»:

CREATE PROCEDURE spDelPipeline(@Iduniqueidentifier) AS

DELETE FROM CommentaryPipeline

WHERE Id_Pipeline = @id

DELETE FROM InspectionPipeline

WHERE Id_Pipeline = @id

Delete from RevisionPartsPipelinewhere

RevisionPartsPipeline.id_RevisionPartsPipelinein

(selectRevisionPartsPipeline.id_RevisionPartsPipeline from

((Pipeline inner join PartsPipelineon Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

RevisionPartsPipeline onPartsPipeline.id_PartsPipeline = RevisionPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

Delete from TestPartsPipeline where

TestPartsPipeline.id_TestPartsPipelinein

(selectTestPartsPipeline.id_TestPartsPipeline from

((Pipeline inner join PartsPipelineon Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

TestPartsPipeline onPartsPipeline.id_PartsPipeline = TestPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

Delete from RefusalPartsPipelinewhere

RefusalPartsPipeline.id_RefusalPartsPipelinein

(selectRefusalPartsPipeline.id_RefusalPartsPipeline from

((Pipeline inner join PartsPipelineon Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

RefusalPartsPipeline onPartsPipeline.id_PartsPipeline = RefusalPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

Delete from DiagnosticPartsPipelinewhere

DiagnosticPartsPipeline.id_DiagnosticPartsPipelinein

(select DiagnosticPartsPipeline.id_DiagnosticPartsPipelinefrom

((Pipeline inner join PartsPipelineon Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

DiagnosticPartsPipeline onPartsPipeline.id_PartsPipeline = DiagnosticPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

Delete from RepairPartsPipeline where

RepairPartsPipeline.id_RepairPartsPipelinein

(selectRepairPartsPipeline.id_RepairPartsPipeline from

((Pipeline inner join PartsPipelineon Pipeline.id_Pipeline = PartsPipeline.id_Pipeline) inner join

RepairPartsPipeline onPartsPipeline.id_PartsPipeline = RepairPartsPipeline.id_PartsPipeline)

where Pipeline.id_Pipeline=@id)

DELETE FROM PartsPipeline

WHERE Id_Pipeline=@id

DELETE FROM Pipeline

WHERE Id_Pipeline=@Id

GO

Хранимая процедура для удаления записи из таблицы«Транспортируемые продукты» :

CREATE PROCEDURESPDelDic_ClassTransportProductTE(@idrec uniqueidentifier) AS

DECLARE @ins_error int, @ROWCOUNT int

BEGIN TRANSACTION TranName

DELETE FROMDIC_CLASSTRANSPORTPRODUCTTE

WHERE Id_Dic_ClassTransportProductTE= @idrec

select @ROWCOUNT=@@ROWCOUNT,@ins_error=@@error

if @ins_error=0

 begin

 COMMIT TRANSACTION TranName

 return (0)

 end

 else

 begin

 ROLLBACK TRAN TranName

 return (1)

 end

GO

2.4     Запросы

Запрос на добавления записи в таблицу «Трубопроводы»:

SQLStr.Add('INSERT INTOdbo.PartsPipeline (Id_PartsPipeline, Id_Pipeline, '+

'NameParts, NameProjectOrganizations,DateEndConstract, DatePutting, '+ 'DateEndServiceLife, DateLeavePutting,DepartureTehPar, '+ 'Id_Dic_ClassDBAOrganizationsTE,'Id_Dic_ClassTypeIsolationTE, '+ Id_Dic_ClassTypeHeatingTE,Id_Dic_ClassTypeInhibitorTE, '+

'IncutDate, Length, StellGrade,OuterDiameter, WorkingPressure, WorkingTemperature, '+

'NominalThickness, ActualThickness,VelocityCorrosion, '+

'MotiveLeavePutting, NumberProject)'+

'VALUES ('''+ Id_PartsPipeLine +''','+

          ''''+ Id_Pipeline +''', '+

          ''''+ memNameParts.text+''', '+

          ''''+memNameProjectOrg.text +''','+

 ''+ DateTimeToStrDB(deDateEndConstract.Date,': ') +', '+

 ''+DateTimeToStrDB(deDatePutting.Date,': ') +', '+

 ''+DateTimeToStrDB(deDateEndServiceLife.Date,': ') +', '+

 ''+DateTimeToStrDB(deDateLeavePutting.Date,': ') +', '+

 ''''+ memDepartureTehPar.text +''','+

 Id_ClassDBAOrganizations +', '+

 Id_ClassTypeIsolation +', '+

 Id_ClassTypeHeating +', '+

 Id_ClassTypeInhibitor +', '+

 ''+DateTimeToStrDB(deIncutDate.Date,': ') +', '+

 ''''+ edtLength.text +''', '+

 ''''+ edtStellGrade.text +''', '+

 ''''+ edtOuterDiameter.text +''', '+

 ''''+ edtWorkingPressure.text +''','+

 ''''+ edtWorkingTemperature.text+''', '+

 ''''+ edtNominalThickness.text +''','+

 ''''+ edtActualThickness.text +''','+

 ''''+ edtVelocityCorrosion.text+''', '+

 ''''+ memMotiveLeavePutting.text+''', '+

 ''''+ edtNumberProject.text +''')');

Запрос на обновление записи примечания к трубопроводу втаблице «Примечания»:

MemberCommentary.Add('UPDATEdbo.CommentaryPipeline SET '+

'Commentary = '''+ Data.Commentary+''', '+

'DateCommentary = '+ConvertFormatDate(Data.DateCommentary) +' '+

' WHERE Id_CommentaryPipeline = '''+Data.Id_Commentary +''' ');

2.5     Выбор модели базы данных

Существую три дореляционных подхода к организации баз данных:

·    системы,основанные на инвертированных списках,

·    иерархическиесистемы,

·    сетевые системы.

Одними из современных подходов к организации баз данныхявляются объектно-ориентированный и реляционный.

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

2.6     Организация взаимодействия с пользователем

 

Пользовательский интерфейс должен предоставлять следующиефункции:

·         поиск по типу;

·         поиск по виду;

·         поиск понаименованию трубопровода;

·         поиск покатегории трубопровода;

·         поиск потранспортируемым продуктам;

·         поиск порегистрационному номеру ФСТН;

·         поиск по датерегистрации в ФСТН;

·         поиск порегистрационному номеру СТН;

·         поиск по датерегистрации в СТН;

·         поиск поместорождению;


3. ТЕХНОЛОГИЧЕСКАЯЧАСТЬ

 3.1 Выборсредства разработки

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

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

3.2 Выбор СУБД

Для решения поставленной задачи СУБД должна отвечатьследующим требованиям:

·    реляционнаямодель представления данных,

·    поддержкамногопользовательского режима работы,

·    работа наплатформе Windows 2000 и выше.

Предъявленным требованиям отвечают следующие СУБД:

·    MicrosoftSQL Server 2000,

·    Oracle,

·    IBMDB-2.

СУБД DB-2может обслуживать до 64 000, а Oracleдо 10 000 одновременно работающих пользователей [8]. Использование их в рамкахданного проекта является не целесообразным расходованием ресурсов.

На этапе разработки системы была построена реализация сиспользованием базы данных на MS Access. Тестовая эксплуатация в сетиИнтернет показала правильность выбранных методов решения поставленной задачи.Было выявлено, что MS Access не выдерживает необходимые нагрузки,это выражается в увеличении времени ответа системы. Система интерактивная иподобные задержки недопустимы.

Из выше перечисленного следует, что в данном проектенеобходимо использовать СУБД MS SQL Server 2000.

 3.3 Описаниесистемы

Для настройки работы программы формируется файл DataBase.ini. В этом файле необходимо прописать провайдера, имябазы данных и имя сервера к которому будет происходить обращение. Такженеобходимо указать путь к справочникам, к которым происходит обращение приработе пользовательского приложения. Пример файла конфигурации представлен вприложении 1.

Пользовательский интерфейс

Пользовательский интерфейс системы состоит из трех панелей. Вверхней части экрана расположена «Инструментальная» панель. Панель содержиткнопки для управления записями в базе данных.

На верхней панели расположена форма «Трубопроводы». Формапредназначена для отображения основных сведений о трубопроводе.

На нижней панели расположена форма «Участки трубопровода». Впроцессе работы с системой отображает все участки выделенного трубопровода.

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

/>

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

/>

Форма добавления нового «Трубопровода».

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

Внизу находятся две кнопки управления: ОК, Отмена. Принажатии кнопки Отмена, пользователь отказывается от добавления новоготрубопровода. При нажатии ОК, пользователь подтверждает добавление новоготрубопровода и правильность введенных данных.

/>

Форма редактирования «Трубопровода».

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


/>

Форма просмотра «Трубопровода».

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

/>

Форма добавления нового «Участка трубопровода».

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

Внизу находятся две кнопки управления: ОК, Отмена. Принажатии кнопки Отмена, пользователь отказывается от добавления новоготрубопровода. При нажатии ОК, пользовательподтверждает добавление нового трубопровода и правильность введенных данных.

/>

Форма редактирования «Участка трубопровода».

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


/>

Форма просмотра «Трубопровода».

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

/>

Форма поиска «Трубопровода».

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

/>

3.4 Синхронизация при работе в сети

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

 

3.5 Технические характеристики программы

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

Минимальные требования:

·         микропроцессорпятого или шестого поколения (производителей AMD, Intel)

·         16 MB ОЗУ

·         20 Мб на диске

·         остальноеиспользуемое оборудование должно удовлетворять требованиям, накладываемымвыбранной ОС семейства Microsoft Windows (2000 ивыше)

Рекомендуемые требования:

·         микропроцессоршестого поколения и выше (производителей AMD, Intel)

·         64 MB ОЗУ

·         50 Мб на диске

·         остальноеиспользуемое оборудование должно удовлетворять требованиям, накладываемымвыбранной ОС семейства Microsoft Windows (2000 ивыше)


ЗАКЛЮЧЕНИЕ

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

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

Возможно расширение созданного программного средства, включивв него возможность автоматического создания отчетов и актов.


СПИСОК ЛИТЕРАТУРЫ

1.        Методическоепособие по выполнению курсового проекта по курсу “Базы данных”, Просуков

2.        Дейт К. Дж.Введение в системы баз данных, 7-е изд. — М.: Издательский дом«Вильямс», 2001.

3.        Проектирование иреализация баз данных Microsoft SQL Server 2000. Учебный курсMCAD/MCSE, MCDBA.- Пер. с англ.-2-е изд., испр.- М.: Издательско-торговый дом «Русскаяредакция», 2003.-512 стр.: ил.

4.        Программированиев SQL-Server 2000. Ребекка М. Риордан, ЭКОМ, Москва, 2002.

5.        MicrosoftMSDN.

6.        Информационные иучебные ресурсы Интернет.


/>Приложение1.

 

/>Файл конфигурации Database.ini.

 

[Database]

Provider=SQLOLEDB.1

Database=PIPELINE

ServerName=KONTORA

[DLL]

DLLPath=C:\БД\bin

еще рефераты
Еще работы по информатике, программированию