Разработка информационной системы 'Обработка текста на естественном языке'
РЕФЕРАТ
Дипломный проект состоит из введения, пяти разделов основной части
пояснительной записки, библиографического списка.
В первом разделе пояснительной записки определяется характеристика
объекта, процесса, предметной области как объекта информатизации. Анализируется
информационное обеспечение объекта информатизации. Рассматривается актуальность
создания системы, подсистемы, задачи.
Во втором разделе пояснительной записки рассмотрены вопросы об
обосновании выбора программных средств решения задачи. Разработаны формы
входных и выходных данных, модели задачи, алгоритм решения задачи. Описаны
модули программы, процесс отладки программы. Разработаны меры защиты информации
от несанкционированного доступа. Показывается, в какой среде был разработан
программный продукт. Приводятся результаты тестирования программного продукта.
В третьем разделе пояснительной записки рассматривается расчетно-
экономическая часть, прибыльность создания подобных информационных систем.
Рассчитаны показатели экономической эффективности его использования в условиях
бизнеса.
В четвертом разделе рассматриваются техника безопасности, рассматривается
способы заземления компьютеров с установленным ПП.
В пятом разделе пояснительной записки сделаны выводы, заключения и
рекомендации по применению полученных результатов.
Библиографический список содержит перечень из источников информации.
1. ОБЩАЯ (ТЕОРЕТИЧЕСКАЯ) ЧАСТЬ
.1 Введение
На сегодняшний день вопросы, касающиеся построения подобных систем
являются очень актуальными. Это прежде всего связано с возросшими
информационными потребностями современного общества. Накопление больших
массивов информации создаёт необходимость в конструировании систем,
ответственных за её обработку и хранение. Сегодня рынок информационных услуг
предлагает множество готовых решений для реализации подобных информационных
систем от различных производителей, начиная с мелких фирм и заканчивая крупными
корпорациями. Например, такие системы управления базами данных, как MS Access,
MS SQL от компании Microsoft, MySQL от компании Sun Microsystems, PostgreSQL от
PostgreSQL Global Development Group и множество других. Однако несмотря на
большое разнообразие программных продуктов, всё же некоторые проблемы остались
нерешёнными. К примеру, все существующие на данный момент информационные
системы такого типа имеют крайне сложный интерфейс, поэтому работать в них
могут только высококвалифицированные специалисты, когда обыкновенным
пользователям необходимо обращаться за их помощью. Понятно, что крупные
корпорации всегда могут нанять таких специалистов, но как быть тем, у кого
такой возможности нет? Так как потребности в обработке и хранении информации
испытывают все, поэтому возможность их удовлетворения должна быть предоставлена
каждому.
Словарь же в качестве конкретной реализации такой информационной системы
подходит как нельзя лучше. Во-первых, структуру любого словаря очень легко
реализовать в виде базы данных. Во-вторых, все готовые программные продукты,
предназначенные для ведения своего электронного словаря, либо являются системами
закрытого типа (т.е. позволяют только добавлять новые словарные статьи в уже
имеющиеся словари), либо не предназначены для неквалифицированного
пользователя. Наконец, открытый электронный словарь, сконструированный на
основе актуальных технологий, удовлетворяет все информационные потребности
современного общества.
Цель данного дипломного проекта - сконструировать программное
обеспечение, позволяющее создавать и вести множество электронных словарей.
Причём такой программный продукт не должен требовать от своего пользователя
каких-либо особых знаний в области работы с базами данных. Это достигается за
счёт комбинирования двух программных интерфейсов - графического и
естественно-языкового. Причём последний освобождает пользователя от изучения
специального языка запросов SQL, используемого по-умолчанию практически в любой
современной базе данных, и позволяет формулировать запросы на русском языке.
Задачи данного дипломного проекта:
– Изучить язык программирования Java.
– Изучить способы построения баз данных в СУБД SQLite.
– Разработать модель базы данных «Электронный словарь».
– Сконструировать программное обеспечение, позволяющее работать с базой
данных «Электронный словарь».
– Разработать естественно-языковой интерфейс к этой базе данных.
Данный проект состоит из общей части, расчётно-технической части,
расчётно- экономической части, части, посвящённой охране труда и безопасности
жизнедеятельности, выводов и списка используемой литературы. В общей части
кратко излагается характеристика словаря как объекта информатизации, даётся
анализ информационного обеспечения, а также описывается актуальность создания
системы и подсистемы. В расчётно-технической части описан процесс создания
программного продукта, основанного на компактной встраиваемой реляционной базе
данных SQLite
В расчётно-экономической части разрабатывается график организации
проектирования, определяется трудоёмкость разработки программного обеспечения,
а также рассчитывается сметная стоимость и экономическая эффективность проекта.
Практическая значимость проекта заключается в применении данного
программного продукта для обработки и хранения любых типов информации.
.2 Характеристика объекта, процесса, предметной области как объекта
информатизации
В данном дипломном проекте в качестве объекта информатизации
рассматривается словарь как носитель информации.
Словарь - справочная книга, содержащая собрание слов (или морфем,
словосочетаний, идиом и т. д.), расположенных по определенному принципу, и
дающая сведения об их значениях, употреблении, происхождении, переводе на др.
язык и т. п. (лингвистические словари) или информацию о понятиях и предметах,
ими обозначаемых, о деятелях в каких-либо областях науки, культуры и др.
Словари играют большую роль в современной культуре, в них отражаются
знания, накопленные обществом на протяжении веков. Они служат целям описания и
нормализации языка, содействуют повышению правильности и выразительности речи
его носителей.
Словари принято делить на два типа: энциклопедические и лингвистические.
Энциклопедические (от греческого enkyklios paideia - обучение по всему
кругу знаний) словари содержат экстралингвистическую информацию об описываемых
языковых единицах; эти словари содержат сведения о научных понятиях, терминах,
исторических событиях, персоналиях, географии и т.п. В энциклопедическом
словаре нет грамматических сведений о слове, а даётся информация о предмете,
обозначаемом словом.
Объект описания лингвистических (языковых) словарей - языковые единицы
(слова, словоформы, морфемы). В таком словаре слово (словоформа, морфема) может
быть охарактеризовано с разных сторон, в зависимости от целей, объёма и задач
словаря: со стороны смыслового содержания, словообразования, орфографии ,
орфоэпии, правильности употребления. В зависимости от того, сколько признаков
слова описаны в словаре, различают словари одноаспектные и многоаспектные.
Любой словарь состоит из словарных статей. Словарная статья - основная
структурная единица словаря; текст, разъясняющий заголовочную единицу в словаре
и описывающий ее основные характеристики. Структура словарной статьи
определяется задачами словаря. Но словарная статья любого словаря начинается с
заглавного слова [по-иному: заголовочное слово, лемма, черное слово (от
полужирного шрифта, которым обычно выделено заглавное слово)]. Совокупность заглавных
статей образуют словник, или левую часть словаря.
Правая часть словаря - та, в которой объясняется заголовочная единица.
Правая часть толкового словаря, как правило, включает зоны: грамматическая
характеристика слова, толкование, тип значения (прямое, переносное);
иллюстрации (цитаты, речения); словообразовательное гнездо; так называемая
«заромбовая» часть (фразеологизмы) и др. Зоны правой части разрабатываются для
каждого словаря. Совокупность всех словарных статей образует корпус словаря.
Кроме корпуса, в любом словаре есть предисловие, раздел «Как пользоваться
словарем», список условных сокращений и др.
Итак, каждый словарь, независимо от своего типа и содержания, имеет
следующую структуру:
– предисловие: Содержит краткую характеристику, описание и назначение
словаря.
– раздел «Как пользоваться словарём»: Описывает структуру словарной статьи
и её правую часть. Объясняет назначение специальных символов, используемых в
этой части.
– словарная статья: Основная единица словаря. Разъясняет левую часть и
описывает её основные характеристики.
– список условных сокращений: Расшифровывает сокращённые выражения,
используемые в словарных статьях.
.3 Анализ информационного обеспечения объекта информатизации
Наибольшее количество электронных лексикографических продуктов в
настоящее время создается в области переводческой деятельности. Существовать
переводные словари могут как в самостоятельном формате, в виде скачиваемой и
устанавливаемой отдельно программы, так и в формате интерактивном, т.е.
интегрированными в какой-либо электронный ресурс: иначе говоря, пользоваться
таким словарем можно в режиме on-line, посетив нужный сайт в сети Интернет. Как
правило, способы представления материала в таких словарях однотипны и
достаточно просты: пользователю нужно в максимально короткие сроки получить
точный перевод отдельной лексемы или выражения, это, в свою очередь, диктует
специфику навигации: в таком словаре всегда есть поле для ввода переводимого
слова и поле, в котором появляются перевод либо варианты перевода. Практически
все двуязычные словари, существующие в электронном формате, подразумевают
подобный способ работы с материалом. Специально для создания словарей
переводческого типа компанией ABBYY - одним из наиболее известных в России
разработчиков, занимающихся созданием электронных словарей, - был придуман язык
DSL (Dictionary Specification Language). Широко известных аналогов данного
языка в рамках российской электронной лексикографии в настоящий момент не
применяется: связано это, прежде всего, с тем, что большинство компьютерных
приложений для использования в разных областях - и электронная лексикография не
является исключением - до сих создается за рубежом.
Однако, программные продукты, предоставляемые компанией ABBYY, во-
первых, не позволяют создавать свои собственные словари и, во-вторых, являются
коммерческими и проприентарными. Это значит, что их исходный код закрыт и за их
использование нужно заплатить. К примеру, программа ABBYY Lingvo,
предназначенная для перевода слов с одного языка на другой, стоит пять тысяч
девятьсот девяносто рублей за одну многоязычную копию.
На сегодняшний день существует очень мало бесплатного программного
обеспечения, позволяющего создавать и вести свой электронный словарь. Самым
лучшим из них является сетевой ресурс «Викисловарь».
Викисловарь - свободно пополняемый многофункциональный многоязычный
словарь и тезаурус, основанный на вики-движке. В нём содержатся грамматические
описания, толкования и переводы слов. Кроме того, в статьях может отражаться
информация об этимологии, фонетических свойствах и семантических связях слов.
Таким образом, Викисловарь - попытка объединить в одном продукте
грамматический, толковый, этимологический и многоязычный словари, а также
тезаурус.
Викисловарь работает по принципу т. н. «вики»: любой желающий,
соблюдающий правила вики-сообщества, может свободно отредактировать любую
статью, и изменения будут сразу же учтены и отображены на сайте. Кроме
отдельных слов в статьях Викисловаря также могут описываться другие языковые
единицы: устойчивые словосочетания (фразеологизмы, пословицы, поговорки,
крылатые выражения, народные приметы, загадки, скороговорки, палиндромы,
аббревиатуры и т. д.), отдельные морфемы (корни, суффиксы, приставки,
трансфиксы и т. д.). Кроме описания самих языковых единиц здесь собирается
сопутствующая информация об их омонимах, омографах, анаграммах, метаграммах и
рифмах (в том числе, межъязыковых). Викисловарь предполагает жёсткую
стандартизованную структуру описания языковых единиц. Сообщество Викисловаря
выработало ряд общих правил оформления, задающих структуру статьи.
Однако, у такого подхода есть два недостатка. Во-первых, к словарным
статьям Викисловаря можно получить доступ только при наличии подключения к сети
Интернет, так как возможности скачать словарь данный сетевой ресурс не
представляет. Во-вторых, у пользователя Викисловаря нет возможности создавать
свой словарь, содержащий только те статьи, которые добавит этот пользователь.
Таким образом, на данный момент рынок информационных услуг не предоставляет
свободного программного обеспечения, эффективно удовлетворяющего информационные
потребности общества в сфере компьютерной лингвистики и лексикографии.
.4 Актуальность создания информационной системы «Электронный словарь»,
подсистемы, задачи
Особую актуальность и востребованность в настоящее время приобрело такое
направление в сфере информационных технологий, как компьютерная лексикография:
сейчас разработка и создание электронных словарей, корпусов и баз данных
являются наиболее продуктивными ее областями. Ценность данного направления
заключается не только в разработке наглядных и удобных методов представления и
классификации материала, но и в том, что электронные словари и компьютерные
корпусы позволяют сохранить для дальнейшей обработки уже собранный (иногда на
протяжении очень долгого времени) материал, хранившийся ранее в менее удобной и
неустойчивой к внешним воздействиям форме (бумажные картотеки, рукописные
источники, аудио, а также видео-носители, уязвимые перед внешними пагубными
факторами, - аудиокассеты, видеокассеты, дискеты и т.д.). В то же время
словарь, существующий в электронном формате, это не просто электронная
(отсканированная, оцифрованная) версия уже созданного бумажного словаря, это
полностью самостоятельный продукт, и форма его бытования логично продолжает и
дополняет содержательную составляющую.
Актуальным представляется замечание о том, что компьютерная лексикография
является особым направлением в практической лексикографии со своими
собственными подходами не только к отображению, но и к содержанию словаря.
Безусловно, электронный словарь не только особый лексикографический
объект, в котором могут быть реализованы и введены в обращение многие
продуктивные идеи, невостребованные по разным причинам в бумажных словарях, но
также и эффективный исследовательский инструмент, использование которого может
способствовать более продуктивному накапливанию и обработке информации.
Можно противопоставить электронные словари традиционным, опираясь на
несколько основных проблем. Во-первых большой объем бумажного словаря
(являющийся следствием богатой лексической базы и полноты словарных статей)
выступает серьезным препятствием для удобного пользования: многотомный (или же
просто очень объемный) словарь становится буквально непригодным для быстрого
поиска информации - не говоря уже о том, что он абсолютно не мобилен в процессе
использования. Таким образом, высокое качество словаря на содержательном уровне
является непосредственной причиной низкого качества удобства его использования.
Вторая проблема касается актуальности представленной в словаре
информации: необходимо отметить, однако, что данное замечание справедливо в
первую очередь для двуязычных (переводных) словарей, а также словарей
терминологических. Чрезвычайно долгий цикл создания и модификации
фундаментальных бумажных словарей приводит к тому, что образ мира, который они
фиксируют в системе своих значений, примеров и переводов, уже заметно
отличается от действительности.
Еще один недостаток бумажных (традиционных) словарей - отсутствие удобной
навигации: в данном вопросе наиболее объективной представляется позиция
пользователя, работающего со словарем; при этом чем больше объем словаря, тем
сильнее данный недостаток проявляется. Основным навигационным инструментом,
используемым в словарях, является способ расположения материала: в алфавитном
порядке или по тематическому принципу. Возможен и смешанный вариант данных
способов подачи материала, но этим возможности бумажного словаря исчерпываются.
Возможности же компьютерной лексикографии позволяют успешно преодолеть перечисленные
трудности и противоречия. Так, первая проблема в рамках электронной
лексикографии разрешается благодаря возможности поместить большой объем данных
на легкий и мобильный носитель информации, а также разместить созданный словарь
(корпус) в сети Интернет. Таким образом, к словарю можно будет обращаться
практически в любое время и любом месте. Неблагоприятные последствия, связанные
с долгим циклом создания словаря, можно нейтрализовать, если программа, в
которой создается лексикографический продукт, допускает возможность внесения
новой информации и корректировки уже имеющейся. Эта же опция позволяет
пополнять базу словаря: таким образом, лексикографический объект перестает быть
статичным, застывшим во времени и пространстве, и получает возможность обновляться,
если таковая потребность возникает.
В отличие от бумажной, электронная лексикография обладает весьма
обширными навигационными возможностями. Помимо традиционных способов
организации материала - в алфавитном порядке и по тематическому принципу
лексикограф получает возможность выстроить максимально удобные для
пользователя словаря связи между объектами: лексикографируемыми единицами,
статьями, комментариями, списками источников и литературы, списком составителей
и т.д.
Однако давно назрела необходимость создания электронных словарей не
только переводного и толкового, но и других типов: перечисленные ранее проблемы
актуальны для всех лексикографических областей; не являются исключением словари
лингвокультурологического и этнолингвистического типов. Закономерным выглядит
предположение о том, что организация материала в словарях этого типа
предполагает принципиально иной подход, отличающийся от подхода к организации
материала толковых и двуязычных словарей; следовательно, и модель базы данных
для них будет строиться иных на принципах.
Помимо всего прочего, с помощью электронного словаря решается множество
задач, связанных с обработкой текста, написанного на естественном языке. В их
число входят:
- машинный
перевод на основе правил;
– распознавание и синтез речи, где электронный словарь выступает в роли
источника данных для автоматического построения словаря произношений;
– построение онтологий и баз знаний;
– отображение онтологий;
– упрощение текста;
– частеричная разметка;
– анализ тональности текста;
Наконец, электронные словари можно использовать в образовательном
процессе, например, при изучении иностранных языков.
Таким образом, актуальности создания информационной системы
«Электронный словарь» определяется возрастающими информационными
потребностями современного общества в подобном программном обеспечении.
2. ПРАКТИЧЕСКАЯ ЧАСТЬ
.1 Постановка задачи
Итак, сформулируем и обоснуем основные требования к создаваемой
информационной системе.
Во-первых, программа должна быть совместима со следующими версиями
операционной системы Microsoft Windows: MS Windows XP, MS Windows Vista, MS
Windows 7, MS Windows 8, MS Windows 10.Windows сегодня - это самая популярная
операционная система на рынке информационных услуг. Проверенная годами
надёжность, простота и удобный дизайн позволяют по праву считать её одной из
лучших операционных систем для серверов и персональных компьютеров, поэтому в
качестве основной операционной системы для нашей программы естественно выбрать
именно её. Это не только даст возможность многим людям пользоваться нашей
программой, но и существенно упростит её создание, отладку и тестирование.
Во-вторых, программа должна уметь эффективно создавать, удалять,
обрабатывать и хранить электронные словари любого типа и размера.
Под обработкой словаря понимается добавление, удаление и редактирование
его словарных статей. Это основания задача нашей программы, поэтому данный
функционал должен быть реализован как можно лучше.
В-третьих, программа должна быть простой и удобной в использовании.
Необходимо добиться того, чтобы пользоваться этой программой мог любой,
обладающий только базовыми навыками работы за персональным компьютером.
Это задача вполне понятна. В соответствии с написанным выше, одной из
главный проблем любого программного обеспечения подобного типа является именно
сложность в работе с ним, поэтому решение этой проблемы является основным
требованием, предъявляемым к разрабатываемой программе.
В-четвёртых, программа должна уметь выполнять команды, написанные на
естественном языке. Понятно, что никакое современное программное обеспечение не
в силах выполнять абсолютно все такие команды, поэтому было решено ограничиться
некоторым подмножеством выбранного естественного языка. Это значительно
упростит разработку программы, но, в то же время, потребует от пользователя
краткого ознакомления с основами её работы.
В-пятых, программа должна иметь многопользовательский интерфейс. Это
значит, что она будет предназначена для нескольких пользователей, каждый из
которых будет иметь собственный набор словарей и настроек.
Наконец, программа должна предоставлять комплексную защиту
пользовательских данных от всех видов внешних и внутренних информационных
угроз.
Это требование необходимо для полноценного функционирования любой
многопользовательской системы. Это не только защитит информационную систему от
потери данных, но и даст возможность пользователям работать более удобно, более
эффективно и более безопасно.
.2 Обоснование выбора программных средств решения задачи
Для разработки заявленной информационной системы были выбраны следующие
программные решения:
В качестве основного языка программирования используется Java. Это
объектно-ориентированный язык программирования, разработанный компанией Sun
Microsystems (в последующем приобретённой компанией Oracle). Программы на Java
транслируются в байт-код, выполняемый виртуальной машиной Java (JVM) -
программой, обрабатывающей байтовый код и передающей инструкции оборудованию
как интерпретатор.
Достоинством подобного способа выполнения программ является полная
независимость байт-кода от операционной системы и оборудования, что позволяет
выполнять Java-приложения на любом устройстве, для которого существует
соответствующая виртуальная машина. Другой важной особенностью технологии Java
является гибкая система безопасности, в рамках которой исполнение программы
полностью контролируется виртуальной машиной. Любые операции, которые превышают
установленные полномочия программы (например, попытка несанкционированного
доступа к данным или соединения с другим компьютером вызывают немедленное
прерывание.
Таким образом, выбрав Java, решается задача портирования готовой
программы на различные операционные системы, в том числе и на Microsoft
Windows. Однако у такого подхода имеется и свой недостаток: пользователю
придётся дополнительно скачать и установить виртуальную машину Java - Java
Runtime Environment (либо любую другую).
В качестве основной среды разработки была выбрана Eclipse. Это свободная
интегрированная среда разработки модульных кроссплатформенных приложений.
Eclipse служит в первую очередь платформой для разработки расширений, чем она и
завоевал популярность: любой разработчик может расширить Eclipse своими
модулями. Уже существуют Java Development Tools (JDT), C/C++ Development Tools
(CDT) и средства для языков Ada, COBOL, FORTRAN, PHP, и пр. от различных
разработчиков. Множество расширений дополняет среду Eclipse диспетчерами для
работы с базами данных, серверами приложений и др.Java Development Tools -
наиболее известный модуль, нацеленный на групповую разработку: среда интегрирована
с системами управления версиями - CVS, GIT в основной поставке, для других
систем существуют плагины. Также предлагает поддержку связи между IDE и
системой управления задачами (ошибками). В силу бесплатности и высокого
качества, Eclipse во многих организациях является корпоративным стандартом для
разработки приложений. Eclipse написана на Java, потому является
платформо-независимым продуктом, за исключением библиотеки SWT, которая
разрабатывается для всех распространённых платформ (см. ниже). Библиотека SWT
используется вместо стандартной для Java библиотеки Swing. Она полностью
опирается на нижележащую платформу (операционную систему), что обеспечивает
быстроту и натуральный внешний вид пользовательского интерфейса.
В качестве основной системы управления базами данных была выбрана SQLite
- компактная встраиваемая реляционная база данных. Слово
«встраиваемый»
означает, что SQLite не использует парадигму клиент-сервер, то есть движок
SQLite не является отдельно работающим, взаимодействующим с программой
процессом, а предоставляет библиотеку, с которой программа компонуется,
следовательно движок становится составной частью программы. Такой подход
уменьшает накладные расходы, время отклика и упрощает программу. SQLite хранит
всю базу данных (включая определения, таблицы, индексы и данные) в единственном
стандартном файле на том компьютере, на котором исполняется программа. Простота
реализации достигается за счёт того, что перед началом исполнения транзакции
записи весь файл, хранящий базу данных, блокируется. Несколько процессов или
потоков могут одновременно без каких-либо проблем читать данные из одной базы.
Благодаря такой архитектуре возможно использовать SQLite как на встраиваемых
системах, так и на выделенных машинах с гигабайтными массивами данных.
В качестве текстового редактора для написания кода программы был выбран
Vim - свободный текстовый редактор, один из мощнейших текстовых редакторов с
полной свободой настройки и автоматизации, возможными благодаря расширениям и
дополнительным надстройкам. Пользовательский интерфейс Vim’а может работать в
чистом текстовом (консольном) режиме. Существует и модификация для
использования в графическом оконном интерфейсе - GVim.
Также было принято решение использовать при разработке программы систему
контроля версий (Version Control System), а именно: Git - популярную
распределённую систему управления версиями файлов.
Система управления версиями - программное обеспечение для облегчения
работы с изменяющейся информацией. Система управления версиями позволяет хранить
несколько версий одного и того же документа, при необходимости возвращаться к
более ранним версиям, определять, кто и когда сделал то или иное изменение, и
многое другое. Такие системы наиболее широко используются при разработке
программного обеспечения для хранения исходных кодов разрабатываемой программы.
Ситуация, в которой электронный документ за время своего существования
претерпевает ряд изменений, достаточно типична. При этом часто бывает важно
иметь не только последнюю версию, но и несколько предыдущих. В простейшем
случае можно просто хранить несколько вариантов документа, нумеруя их
соответствующим образом. Такой способ неэффективен (приходится хранить
несколько практически идентичных копий), требует повышенного внимания и
дисциплины и часто ведёт к ошибкам, поэтому были разработаны средства для
автоматизации этой работы.
2.3 Разработка формы входных и выходных данных
Данное программное обеспечение реализует четыре графические формы ввода и
вывода данных:
1) форма авторизации пользователя;
2) форма регистрации пользователя;
) форма работы с базой данных;
) табличная форма;
Рассмотрим каждую из них в отдельности.
Форма «Авторизация» предназначена для ввода регистрационных данных -
Рисунок 1 - Форма авторизации
логина и
пароля - указанных при регистрации. Данная форма состоит из следующих
компонентов:
– Текстовое поле «Имя пользователя» предназначено для ввода логина.
Может содержать только латиницу.
– Текстовое поле «Пароль» предназначено для ввода пароля. Может содержать
только латиницу и арабские символы.
– Кнопка Войти предназначена для считывания регистрационных данных и
выполнения входа в систему.
– Кнопка Регистрация предназначена для регистрации нового пользователя.
Более
детальное описание полей этой формы представлено на странице 44.
Форма «Регистрация» предназначена для регистрации нового пользователя
Рисунок 2 - Форма регистрации
с введёнными
им регистрационными данными. Эта форма состоит из следующих полей:
– Текстовое поле «Фамилия»: может содержать только кириллицу.
– Текстовое поле «Имя»: может содержать только кириллицу.
– Текстовое поле «Отчество»: может содержать только кириллицу.
– Текстовое поле «Логин»: может содержать только латиницу.
– Текстовое поле «Пароль»: может содержать любую последовательность
символов.
Если
хотя бы одно поле содержит запрещённые символы - например, пароль содержит
кириллицу - то программа укажет на ошибку и даст совет по её исправлению. Более
детальное описание полей этой формы представлено на странице 45.
Форма
работы с базой является основной частью программы. С её помощью
Рисунок
3 - Форма работы с базой данных
пользователь может добавлять,
просматривать и изменять содержимое имеющихся словарей, а также создавать и
удалять новые. Детальное описание процесса работы с этой формой представлено на
странице 46.
Табличная
форма предназначена для работы со словарными статьями. С помощью этой формы
пользователь может добавлять, просматривать и изменять содержимое имеющихся
словарей. Детальное описание процесса работы с этой формой представлено на
странице 46.
.4
Разработка модели задачи
В
этом параграфе рассматривается реляционная модель баз данных.
Модель
данных - это абстрактное, самодостаточное, логическое определение объектов,
операторов и прочих элементов, в совокупности составляющих абстрактную машину
доступа к данным, с которой взаимодействует пользователь. Эти объекты позволяют
моделировать структуру данных, а операторы - поведение данных.
В
литературе иногда встречается использование этого термина в смысле «схема базы
данных». Такое использование является неверным, на что указывают многие
авторитетные специалисты, в том числе К. Дж. Дейт, М. Р. Когаловский, С. Д.
Кузнецов. Модель данных есть теория или инструмент моделирования, в то время
как модель базы данных (схема базы данных) есть результат моделирования. По
выражению К. Дейта, соотношение между этими понятиями аналогично соотношению
между языком программирования и конкретной программой на этом языке.
Теперь
можно дать следующую классификацию баз данных по используемой в них модели
данных:
– Иерархическая
– Объектная и объектно-ориентированная
– Реляционная
– Сетевая
– Функциональная
В реализуемой информационный системе используется реляционная модель базы
данных, поэтому стоит рассмотреть её более подробно.
Как было уже сказано ранее, трактовать понятия «данные» и «база данных»
можно по-разному. На самом деле, разные трактовки этих понятий соответствуют
различным моделям данных, которые обсуждались в предыдущем разделе. Например, в
реляционной модели, данные представляют собой истинные логические высказывания.
Логическое высказывание - это утверждение, которое может быть либо истинным,
либо ложным. Таким образом, в такой интерпретации, база данных - множество
истинных высказываний. Реляционная модель данных характеризуется описанными
ниже особенностями:
1) данные представлены посредством строк в таблицах, и эти строки
могут быть непосредственно интерпретированы как истинные высказывания.
2) Для обработки строк данных предоставляются операторы, которые
напрямую поддерживают процесс логического вывода дополнительных истинных
высказываний из существующих высказываний.
Сегодня системы с реляционной моделью стали преобладающими на рынке баз
данных. Одна из важных причин такого положения дел состоит в том, что
реляционная модель обладает сильным теоретическим аппаратом. Например, в него
входит одна из областей математики, называемая «реляционной алгеброй».
Теория реляционных моделей данных на сегодняшний день - одна из самых
разработанных областей компьютерных наук (computer science). Причина, по
которой реляционная система получила своё название, состоит в том, что
английский термин «relation» (отношение), по сути, представляет собой общепринятое
математическое обозначение для таблиц.
В реляционной модели данных выполняются следующие три аспекта:
– Структурный аспект. Данные в базе воспринимаются пользователем как
таблицы и никак иначе.
– Аспект целостности. Эти таблицы отвечают определённым условиям
целостности.
– Аспект обработки. В распоряжении пользователя имеются операторы
манипулирования таблицами, которые генерируют новые таблицы на основании уже
имеющихся и среди которых есть, по крайней мере, операторы сокращения, проекции
и объединения.
Ниже представлены определения этих операций:
– Операция сокращения извлекает указанные строки из таблицы. Эту операцию
ещё часто называют выборкой.
– Операция проекции предназначена для извлечения определённых столбцов из
таблицы.
– Операция соединения предназначена для получения комбинации двух таблиц на
основе общих значений в общих столбцах.
Кроме того, все операции в реляционной модели имеют одно важное свойство
- замкнутость. Это значит, что, так как операции проводятся с таблицами и
результат этих операций тоже является таблицей, можно к результату любой
операции снова применить какую-либо операцию. Можно заметить, что три аспекта
реляционной модели во многом совпадают с аспектами понятия «модели данных». На
самом деле, эти три аспекта являются лишь частным случаем аспектов, общих для
всех баз данных. Рассмотрим теперь некоторые из них более подробно.
Сначала следует отметить, что эти аспекты являются главным отличием
реляционной модели от всех остальных. Говоря нестрого, каждый из них задаёт
некоторые правила. Например, аспект структуры задаёт то, как данные
представляются в данной модели, аспект обработки - что с этими данными можно
делать, а аспект целостности - как эти данные могут изменяться.
Для начала, рассмотрим более подробно структурный аспект. Как уже было
сказано ранее, в реляционной модели данные представляются в виде прямоугольных
таблиц. Причём, каждому элементу таблицы соответствует
Рисунок 4 - Элементы реляционной модели данных
некоторый
профессиональный термин. Это соответствие представлено на рис.4. Пользуясь
новой терминологией, можно сказать, что данные в реляционной БД хранятся в виде
значений кортежей, которые находятся в отношении друг с другом. Причём, все
значения кортежа имеют определённый тип, задаваемый значением атрибута.
Типы данных могут быть как встроенные в систему, например
целочисленный или строковой тип, так и определяемые пользователем. Обычно
последние представляют собой отношения. Чтобы осуществлять быстрый поиск
требуемых кортежей применяются специальные поля, называемые ключевыми, значения
таких полей не могут повторяться. В каждой таблице есть ключевое поле. Следует
ещё раз подчеркнуть, что таблица и отношение это два различных объекта.
Отношение это абстрактный объект, а таблица является конкретным изображением
такого абстрактного объекта. Чтобы можно было рассматривать таблицу как
корректную реализацию отношения, необходимо принять соглашение о том, что
каждый столбец характеризуется соответствующим типом, каждое значение атрибута
представляет собой значение определённого типа, а упорядочение сток и столбцов
не имеет значения и дубликаты строк не допускаются.
Одно из главных преимуществ реляционной модели является то, что её
главный объект - отношение - может быть представлен в виде таблицы. Именно
благодаря этому простому представлению реляционные системы становятся удобными
для использования и изучения, к тому же намного упрощается само обсуждение
особенностей функционирования реляционных систем.
Теперь рассмотрим аспект обработки. Для описания и анализа операций,
применимых к отношениям, используется реляционная алгебра. Реляционная алгебра
- это коллекция операций, которые принимают отношения в качестве операндов и
возвращают отношение в качестве результата. Эта алгебра включала в себя восемь
операций, которые подразделялись на описанные ниже две группы с четырьмя
операциями каждая.
1) Основные теоретико-множественные операции - объединение,
пересечение, разность и декартово произведение. Все они были модифицированы для
работы с отношениями.
2) Специальные реляционные операции, такие как сокращение, проекция,
соединение и деление.
Прежде чем начать обсуждение каждой операции, нужно провести различие
между реляционной алгеброй как одной из областей математики и как коллекции
операций. Здесь и далее этот термин будет употребляться только во втором
смысле, если не сказано обратного. Теперь можно дать определение каждой
операции.
– Объединение - A UNION B. Результатом этой операции является множество,
состоящее из кортежей, присутствующих либо в одном, либо в обоих из заданных
отношений.
– Пересечение - A INTERSECT B. Результат - множество всех таких кортежей,
что они присутствуют в обоих отношениях.
– Разность - A MINUS B. Результат - множество всех таких кортежей, что они
присутствуют только в отношении А.
– Декартово произведение - A TIMES B. Определяется как отношение, заголовок
которого представляет собой (теоретико- множественное) объединение заголовков
отношений A и B, а тело состоит из всех возможных пар элементов обоих кортежей.
При этом А и В не должны иметь общих атрибутов.
– Сокращение - A WHERE p, где p - предикат. Результатом этой операции
является такое отношение, которое включено в А и для каждого его кортежа
выполняется этот предикат.
Проекция - A {X, Y, …, Z}. Результат - отношение, из заголовка которого
удалены все атрибуты, не указанные в фигурных скобках, а тело состоит из всех
кортежей, очищенных от значений таких атрибутов.
– Естественное соединение - A JOIN B. Неформально выражаясь, результат
представляет собой отношение, кортежи которого были получены соединением всех
кортежей из А и всех кортежей из В, причём два общих атрибута заменяются на
один.
– Деление - A DIVIDEBY B PER C. Результат состоит из тех значений кортежей
А, для которых соответствующие значения кортежей в С включают все значения этих
кортежей из B.
Основное назначение рассмотренной алгебры состоит в обеспечении
возможности составления сколь угодно сложных реляционных выражений (запросов).
Понятие нормализации тесно связано с аспектом целостности в реляционной
модели. Это означает, что правильно спроектированная база данных должна
соответствовать определённым критериям. Эти критерии называются нормальными
формами, а приведение базы данных к таким формам называется нормализацией.
Существует три вида нормальных форм, они называются первой, второй, и
третьей нормальной формой соответственно. Существует ещё одна нормальная форма,
носящая название нормальной формы Бойса-Кодда, однако, на практике она
используется редко, поэтому не имеет смысла рассматривать её здесь более
подробно. Рассмотрим каждую из них по отдельности.
1) Таблица находится в первой нормальной форме, если значения всех её
полей атомарные и в ней отсутствуют повторяющиеся группы полей. Удовлетворение
этим требованиям ещё называют структурной или синтаксической нормализацией.
2) Вторая нормальная форма требует, чтобы таблица удовлетворяла
требованиям первой нормальной формы и любое неключевое поле однозначно
идентифицируется полным набором ключевых полей.
) Таблица находится в третьей нормальной форме, если она
удовлетворяет условиям второй нормальной формы и ни одно из неключевых полей
таблицы не идентифицируется с помощью другого неключевого поля.
Кроме нормализации, для создания хороших баз данных, необходимо задать
связи между таблицами.
Схема данных является графическим образом БД. Она используется различными
объектами Access для определения связей между несколькими
Рисунок 5 - Схема связей между таблицами
таблицами. Например, при
создании формы, содержащей данные из нескольких взаимосвязанных таблиц, схема
данных обеспечивает автоматический согласованный доступ к полям этих таблиц.
Она же обеспечивает целостность взаимосвязанных данных при корректировке
таблиц. Существует четыре типа связей, все они представлены на рисунке 5.
1) Связь «один-к-одному» означает, что каждой записи одной таблицы
соответствует только одна запись другой таблицы и наоборот. Такая связь между
таблицами устанавливается на основании значений совпадающих полей.
2) Связь «один-ко-многим» означает, что каждой записи одной таблицы
соответствует несколько записей другой таблицы. Устанавливается с помощью
составных первичных ключей.
) Связь «многие-к-одному» аналогична предыдущей, но соответствие
происходит в обратную сторону.
Связь «многие-ко-многим» возникает между двумя таблицами в тех случаях
когда одна запись из первой таблицы может быть связана более чем с одной записью
из первой таблицы. Таких связей следует избегать, так как реляционная модель не
позволяет непосредственно работать с ними.
Связь между таблицами устанавливает отношения между совпадающими
значениями в ключевых полях, обычно между полями, имеющими одинаковые имена в
обеих таблицах. В большинстве случаев с ключевым полем одной таблицы,
являющимся уникальным идентификатором каждой записи, связывается внешний ключ
другой таблицы.
Таким образом, реляционная модель баз данных лучше всего подходит для
разрабатываемого программного обеспечения.
.5 Разработка алгоритма решения задачи
Данное программное обеспечение реализует следующий алгоритм: Работа с
формой авторизации.
1) Открыть форму авторизации.
2) Если введённого пользователя не существует, то сообщить об
ошибке.
) Иначе - проверить введённый пароль.
) Если пароли совпадают, то открыть форму работы с базой данных.
) Иначе - сообщить об ошибке.
) Работа с командной формой:
1) Прочесть команду пользователя.
2) Пока команда не распознана делать:
) Введённая пользователем команда подходит к текущей?
) Если да, то прочесть аргументы команды.
) Аргументы достаточны?
) Если да, то выполнить команду пользователя.
) Иначе - запросить пользователя дополнить аргументы и выполнить
команду.
) Иначе - перейти к другой команде.
) Если ни одна из существующих команд не подходит к команде ,
введённой пользователем, то выполнить стандартную команду.
7) Работа с регистрационной формой:
1) Поле содержит только разрешённые символы?
) Если да, то дать возможность редактировать следующее поле
Нажатие кнопки «Регистрация»:
4) Если пароли совпадают и регистрируемого пользователя не
существует, то сообщить об ошибке
) Иначе - зарегистрировать нового пользователя.
.6 Описание модулей программы
Программа состоит из четырёх главных модулей:
1) Модуль командной формы.
2) Модуль регистрационной формы.
) Модуль формы входа.
) Модуль табличной формы
Далее будет приведён исходный код каждого из них.
Исходный
код формы авторизации. Графическая часть этой формы представлена на рисунке 1.
public class AuthForm extends JFrame { private JButton
btnEnter;JPanel rootPanel; private JTextField tfLogin; private JButton
btnOpenReg; private JPanel passwordPanel;JPasswordField pfPassword; private
JButton btnShowPassword; private final Main main;(Main main) { super("Авторизация | EssentialDict");
//Инициализация формы this.main = main; setContentPane(rootPanel); pack();
setLocationRelativeTo(null); setResizable(true);();
}
//Инициализация компонентовvoid iniComponents().setInputVerifier(new LoginVerifier());
((AbstractDocument)tfLogin.getDocument())(new
LoginDocumentFilter());.setFocusable(false);
btnEnter.setEnabled(false);
}
//Инициализация обработчиков событий
private void initListeners()
{.getDocument().addDocumentListener(new DocumentAdapter() {
@Overridevoid insertUpdate(DocumentEvent e)
public void insertUpdate(DocumentEvent e)
{(!btnEnter.isEnabled()).setEnabled(true);
}
@Overridevoid removeUpdate(DocumentEvent e)void
removeUpdate(DocumentEvent e)
{(pfPassword.getPassword().length == 0).setEnabled(false);
}
});.addActionListener(new ActionListener()void
actionPerformed(ActionEvent e)
{userName = tfLogin.getText();op =
main.getOptionsParser();(!User.isLoginValid(userName))
{.out.println("Login not valid, return.");;
}(!op.hasUser(userName))
{.out.println("No such user exists!");
}
{.out.println(String.format
("User %s OK, attempt to compare passwords",
userName));typedHash =
DigestUtils.md5Hex(String.valueOf(pfPassword.getPassword()));(typedHash.equals(op.getOption(userName,
"HASH")))
{.out.println("Password OK, attempt to read user
data...");mainUser = op.readUser(userName);.out.println(String.format(
"User`s %s data successfully read. His name is:
%s.",,.getOption(OPTIONS.FIRSTNAME) ));
}
{.out.println("Bad password, user data will not be
read!");
}
}
}
});ImageIcon eyeOpen = new
ImageIcon("res/eyeOpen.png");ImageIcon eyeCrossed = new
ImageIcon("res/eyeCrossed.png");.setIcon(eyeCrossed);.addActionListener(new
ActionListener()
{
@Overridevoid actionPerformed(ActionEvent e) {(btnShowPassword.getIcon().equals(eyeCrossed)).setIcon(eyeOpen);.setIcon(eyeCrossed);(pfPassword.echoCharIsSet()).setEchoChar((char)
0);.setEchoChar('*');
}
});.addActionListener(new ActionListener()
{
@Overridevoid actionPerformed(ActionEvent e)
{.getRegForm().setVisible(true);(false);
}
});
addWindowListener(new WindowAdapter()
{void windowClosing(WindowEvent e)
{frame = (JFrame) e.getSource();result =
JOptionPane.showConfirmDialog(,
"Выйти из программы?",
"Выход",.OK_CANCEL_OPTION
);(result == JOptionPane.OK_OPTION).setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
}
});
}
}
Исходный код формы регистрации.
package com.mycompany;(Main main) {
super("Регистрация нового пользователя | EssentialDict");
//Инициализация формы.main = main;
setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE);(rootPanel);();(null);
setResizable(false);
initComponents();();
}void showMessage(String message)
{.showMessageDialog(,,
"Ошибка регистрационных данных",.ERROR_MESSAGE
);
}
//Инициализация компонентовvoid initComponents()
{.setInputVerifier(new NameVerifier());.setInputVerifier(new
NameVerifier());.setInputVerifier(new NameVerifier());.setInputVerifier(new
LoginVerifier());
((AbstractDocument)tfFirstName.getDocument())
.setDocumentFilter(new NameDocumentFilter());
((AbstractDocument)tfSecondName.getDocument())
.setDocumentFilter(new NameDocumentFilter());
((AbstractDocument)tfThirdName.getDocument())
.setDocumentFilter(new NameDocumentFilter());
((AbstractDocument)tfLogin.getDocument())
.setDocumentFilter(new
LoginDocumentFilter());.setEnabled(false);.setFocusable(false);
}
//Инициализация обработчиков событийvoid initListeners() {
pfConfirmPassword.getDocument().addDocumentListener(new
DocumentAdapter() {
@Overridevoid insertUpdate(DocumentEvent e)
{(!btnRegister.isEnabled()).setEnabled(true);
}
});ImageIcon eyeOpen = new
ImageIcon("res/eyeOpen.png");ImageIcon eyeCrossed = new
ImageIcon("res/eyeCrossed.png");.setIcon(eyeCrossed);.addActionListener(new
ActionListener()
{
@Overridevoid actionPerformed(ActionEvent e)
{.setIcon((btnShowPass.getIcon()
.equals(eyeCrossed)) ? eyeOpen :
eyeCrossed);.setEchoChar((pfPassword.echoCharIsSet()) ? (char) 0 :
'*');.setEchoChar((pfConfirmPassword.echoCharIsSet()) ? (char) 0 : '*');
}
});.addActionListener(new ActionListener()
{
@Overridevoid actionPerformed(ActionEvent e)
{(!Arrays.equals(pfPassword.getPassword(),pfConfirmPassword.getPassword()))
{("Пароли не совпадают.");
return;
if (main.getOptionsParser().hasUser(tfLogin.getText()))
{(String.format("Пользователь с логином %s уже существует.",
tfLogin.getText()));;
}<OPTIONS, String> options = new
HashMap<>();.put(OPTIONS.HASH,.md5Hex(String.valueOf(pfPassword.getPassword())));.put(OPTIONS.FIRSTNAME,
tfFirstName.getText());.put(OPTIONS.SECONDNAME,
tfSecondName.getText());.put(OPTIONS.THIRDNAME,
tfThirdName.getText());{.getOptionsParser().addUser(new User(tfLogin.getText(),
options));.out.println(String.format("User %s successfully added.",
tfLogin.getText()));.showMessageDialog(main.getRegForm(),
"Пользователь успешно
зарегистрирован.");(new
WindowEvent(main.getRegForm(),.WINDOW_CLOSING));
} catch (IOException e1) {.printStackTrace();
}
}
});(new WindowAdapter()
{void windowClosing(WindowEvent e)
{(Component component : rootPanel.getComponents())
{
if (component instanceof JTextField) ((JTextField)
component).setText("");
}(Component component : datePanel.getComponents())
{
((JComboBox) component).setSelectedIndex(0);
}.setEchoChar('*'); pfPassword.setText("");
pfConfirmPassword.setEchoChar('*'); btnShowPass.setIcon(eyeCrossed);
main.getAuthForm().setEnabled(true);
}
});
}
}
Исходный код командной формы.
package com.mycompany; import javax.swing.*;
/**
* Инициализация формы
*/class CommandForm extends JFrame
{
private JPanel rootPanel; private JTextField tf2; private
JTextPane tp2;
private JButton btnOpenTab; private JTextPane tp1; private
JTextField tf1; private JLabel lb1;JLabel lb2;()
{("Работа с БД |
EssentialDict");(WindowConstants.HIDE_ON_CLOSE); setContentPane(rootPanel);();
setLocationRelativeTo(null); setResizable(false);
//initComponents();
//initListeners();
}
}
Исходный код командной формы. package com.mycompany;
import javax.swing.*;javax.swing.table.DefaultTableModel;
/**
* Created by A on 24.06.2015.
*/class TableForm extends JFrame
{
private JPanel rootPanel; private JTable table1;
private DefaultTableModel dtm; TableForm()
{("Орфоэпический словарь | EssentialDict"); JPanel
rootPanel = new JPanel(); rootPanel.add(table1);(rootPanel); pack();(WindowConstants.EXIT_ON_CLOSE);
setLocationRelativeTo(null);(true); setResizable(true);(); initListeners();
}void initListeners() { } private void initComponents()
{[][] items = new String[][]{
{"Салютовать", "Салютов`ать"},
{"Начала", "Начал`а"},
};[] header = new String[] { "Слово", "Ударение" }; dtm = new
DefaultTableModel(items, header); table1.setModel(dtm);
}
2.7 Описание процесса отладки программы
информационный текст словарь программа
Для тестирования системы необходимо соблюсти некоторые технические
требования.
Информационная подсистема складского учета, не предъявляет высоких
характеристик к центральному процессору. Для нормального функционирования
информационной подсистемы необходим процессор с тактовой частотой не менее 233
МГц. Это следует из того, что для работы операционной системы Microsoft Windows
2000 требуется процессор с тактовой частотой 133 МГц, а для табличного
редактора - не менее 233 МГц. Исходя из этого и выбрана тактовая частота
процессора в 233 МГц.
Требуемый объем оперативной памяти составляет 64 Мбайт. Для более быстрой
работы информационной полсистемы рекомендуется использовать объем памяти равный
128 Мбайт.
Объем жестокого диска является не менее важной характеристикой, чем объем
оперативной памяти и тактовая частота процессора.
Размер памяти W1, который занимает информационная подсистема складского
учета, равняется 5,5 Мбайт. Столько дискового пространства занимают
устанавливаемые файлы.
Параметр W2, может занимать объем памяти до 1 Мбайт. Это временные файлы,
например, отчёты.
Таким образом, минимальный объем дисковой памяти необходимый для работы
информационной подсистемы складского учета равняется:
= 5, 5 + 1 = 6, 5 Мбайт.
Рекомендовано использовать гораздо больший объем памяти. Так как в
процессе эксплуатации информационной подсистемы, размер базы данных будет
увеличиваться.
Информационная подсистема складского учета, для своей работы не требует
от монитора высоких характеристик. Для нормальной работы информационной
подсистемы подойдет любой современный монитор с разрешением не менее 1024 на
768. При этом разрешении все экранные формы будут видны, и пользователю будет
удобно работать.
Необходимо выводить на печать документы, такие, как отчеты. Для этого
требуется лазерный принтер с разрешением не менее 300 точек/дюйм. Это
минимальное разрешение печати, которое требуется для качественной печати
документов.
Тестирование информационной подсистемы проводилось предприятием-
заказчиком, методом «черного ящика». При проведении тестирования выявлено, что
информационная подсистема удовлетворяет требованиям предприятия- заказчика.
Тестирование проводилось разработчиком методом «белого ящика». Выявлено, что
информационная система ведет себя корректно. Было проведено комплексное
тестирование программы, при котором она показала себя полностью
работоспособной.
2.8 Разработка
мер защиты информации от несанкционированного доступа
Защита программного продукта построена следующим образом.
Во-первых, это парольная защита, которая обеспечивает идентификацию
пользователя по логину и паролю, выдавая при этом им необходимые роли.
Во-вторых, необходимо продумать защиту самого компьютера, его
операционной системы, так как это является второй ступенью защиты.
В-третьих, база данных сама имеет парольную защиту, что осложняет к нему
доступ извне.
В-четвертых, компьютер, подключенный к интернету, будет оснащаться
антивирусной программой, фаерволом сетевым, что затрудняет доступ к программе
извне по сети.
В-пятых, необходимо обучить персонал, работающий с этой программой, чтобы
не было утечки информации, утечки о паролях и т.д.
И, конечно же, само здание и кабинет должны быть закрыты на ключ и под
охраной во время выходных, каникул и в нерабочее время.
Выбор технических средств реализации решения Для запуска и работы с
данной информационной системой необходим персональный компьютер со следующими
характеристиками:
1) Процессор марки Intel или AMD с тактовой частотой не менее 1MGz;
2) Оперативная память не менее 512Мбайт;
3) Тип системы: 32 или 64 разрядная система;
) Место на жёстком диске не менее 256Мбайт;
) Операционная система: Windows XP SP1 или выше, либо Unix;
) Монитор с разрешением не менее 1024Х768 точек на дюйм;
) Поддержка устройства механического или оптического манипулятора
(мышь);
) Поддержка клавиатуры.
Система программирования Eclipse мною выбрана не случайно.
Система программирования Eclipse фирмы Eclipse Foundation предоставляет
наиболее широкие возможности для программирования приложений ОС Windows.
Eclipse - это продукт Eclipse Foundation для быстрого создания приложений.
Процесс создания интерфейса будущей программы очень лёгок и прост. Поэтому
RAD-среды еще называют визуальными средами разработки: какими мы видим рабочие
и диалоговые окна программы при проектировании, такими они и будут, когда
программа заработает.
Высокопроизводительный инструмент визуального построения приложений
включает в себя настоящий компилятор кода и предоставляет средства визуального
программирования, несколько похожие на те, что можно обнаружить в Microsoft
Visual Basic (она не является RAD-системой) или в других инструментах
визуального проектирования.
База данных хранится в SQLite, доступ к данным происходит через
библиотеку-коннектор SQLlite-JBDC.
.9 Инструкция пользователя
Работа с программой начинается с авторизации существующего или регистрации
нового пользователя. Для этого существуют две формы: форма
«Авторизация» и форма «Регистрация».
Чтобы авторизоваться необходимо заполнить форму «Авторизация» и нажать
кнопку «Войти». При неудачной попытке авторизации программа сообщит об ошибке и
укажет дальнейшие действия.
Описание компонентов формы «Авторизация»:
– Поле «Логин» предназначено для ввода псевдонима, указанного пользователем
при регистрации. Это поле может содержать только символы английского алфавита,
напечатанные в нижнем регистре.
– Поле «Пароль» предназначено для ввода пароля, указанного пользователем
при регистрации. Это поле может содержать только символы английского алфавита,
напечатанные в нижнем регистре.
– Кнопка «Войти» выполняет вход в систему с указанным логином и паролем.
Если данные для авторизации неверны, программа выдаст предупреждение и укажет
дальнейшие действия.
– Кнопка «Регистрация» открывает форму регистрации, в которой новый
пользователь должен ввести свои регистрационные данные.
– Кнопка «Показать пароль» позволяет посмотреть текст, введённый в поле
Пароль. Повторное нажатие снова скрывает этот текст.
Чтобы зарегистрироваться необходимо заполнить форму «Регистрация» и
нажать кнопку «Зарегистрироваться». При неудачной попытке регистрации программа
сообщит об ошибке и укажет дальнейшие действия.
Описание компонентов формы «Регистрация»:
– Поле «Фамилия» предназначено для ввода фамилии пользователя.
– Поле «Имя» предназначено для ввода имени пользователя.
– Поле «Отчество» предназначено для ввода отчества пользователя.
– Поле «Логин» предназначено для ввода логина.
– Поле «Пароль» предназначено для ввода пароля.
– Кнопка «Скрыть или Показать пароль» позволяет посмотреть текст, введённый
в поле «Пароль».
– Кнопка «Зарегистрироваться» добавляет в базу данных нового пользователя с
указанными регистрационными данными.
Совет по быстрому заполнению полей: после того, как заполнено текущее
поле, перейти на следующее можно клавишей Tab, а вернуться на предыдущее -
сочетанием клавиш Shift-Tab. Обе формы не позволят заполнить следующее поле ,
пока правильно не заполнено текущее.
После успешной авторизации пользователь попадает в главное командное окно
программы. В этом окне пользователь проводит наибольшее количество времени,
т.к. именно оно предоставляет все необходимые функции для работы с базой
словарей.
Пользователь должен осуществлять работу с командным окном в соответствии
со следующим алгоритмом:
1) Ввод запрашиваемой команды: пользователь должен ввести нужную ему
команду в предназначенное для этого поле. Все команды вводятся в верхнем
регистре. Если программа не распознала команду, введённую пользователем, она
проинтерпретирует её как слово, которое нужно найти в текущем открытом словаре.
Любая команда должна заканчиваться пробелом.
2) Ввод параметров для команды: пользователь должен ввести все
необходимые параметры, соответствующие команде. Если пользователь не ввёл всех
необходимых параметров или программа не распознала хотя бы один из них, она
перейдёт в особый, «дополнительный» режим, в котором пользователь должен будет
заполнить значения отсутствующих параметров. Параметры любой команды должны
быть отделены друг от друга пробелом.
) Просмотр результатов выполнения команды: после того, как введена
команда и её параметры, пользователь должен нажать Ctrl-Enter чтобы выполнить
эту команду. После этого на экране командного окна появится результат, которым
может быть представлен в либо в виде простого текста, либо в виде таблицы. В
последнем случае в панели результата будет размещена кнопка, при нажатии на
которую откроется форма запрашиваемой таблицы.
В табличном режиме пользователь может просматривать, изменять и
редактировать поля таблицы. Чтобы отредактировать значение некоторого поля,
пользователь должен ввести новое значение этого поля и нажать сочетание клавиш
Ctrl-Enter. Изменённое поле незамедлительно будет обновлено в словаре.
Совет по работе с таблицей: одновременно можно открыть сразу несколько
табличных форм. Перемещаться по ним от одной к другой можно сочетанием клавиш
Alt-Tab.
2.10 Натурные испытания
Процесс испытания любого программного обеспечения условно делится на два
этапа:
1) организационно-технической подготовки к проведению испытаний ПО и
ПТК;
2) проведение испытаний ПО и ПТК.
Основными задачами подготовки к проведению испытаний ПО и ПТК являются:
– составление общего плана и графика испытаний с указанием сроков
испытаний;
– разработка, согласование и утверждение программ и методик испытаний;
– накопление путем анализа представленной технической документации данных о
качестве ПО и ПТК;
– разработка технологической схемы испытаний.
Технологическая схема испытаний содержит описание процесса испытаний ПО и
ПТК с указанием последовательности и содержания действий по определению
значений показателей качества ПО и ПТК, а так же данные о программно-
инструментальных средствах поддержки испытаний.
При подготовке к испытаниям определяется нормативно-техническая база
испытаний, включающая:
– документы, устанавливающие требования к ПО и ПТК, стандарты, в том числе
международные (серия ISO/IEC), технические условия, техническое задание,
сертификация требований.
– методики оценки показателей сертификации ПО.
Общий перечень документации представляемой Заказчиком для проведения
испытаний (необходимый перечень документации определяется для каждого случая
индивидуально) :
1) Техническая документация на ПО:
– логическая модель (иерархия функций ПО);
– архитектура ПО (иерархия компонент, структура ПО);
– библиотеки;
– исходные тексты;
– коды ПО.
Покупное (коммерческое) ПО
3) Описание тестов ПО, отчеты о тестировании
4) Планы верификации, валидации, интеграционные испытания
) Отчеты о результатах верификации на всех фазах жизненного цикла
) Отчет по валидации
7) Состав и характеристики инструментальных средств разработки и
верификации ПО
8) Отчет по анализу допустимого уровня критичности и обеспечению
безопасности
9) Руководство пользователя и программиста
Проведение натурных испытаний ПО и ПТК проводятся на стенде Заказчика в
соответствии с разработанной и согласованной «Программой и методикой проведения
испытаний».
При разработке программ и методики испытаний для каждого показателя
определяется:
1) состав документации (технических материалов) обеспечивающий оценку
по каждому испытанию;
2) виды испытаний;
) критерии оценки показателей ПО.
При оценке соответствия ПО и ПТК применяются измерительный,
регистрационный и экспертный методы определения значений показателей качества
ПО и ПТК.
Критерии оценки при анализе характеристик качества ПО содержит три
категории оценок:
1) соответствует;
2) не соответствует;
) соответствует частично требованиям нормативной документации.
Оценка соответствия проводится:
1) у поставщика ПО (участие в испытаниях на аттестованной
экспериментальной базе по согласованным программам и методикам);
2) в Испытательной лаборатории Сертификационного центра АСУ.
При назначении показателей качества и дальнейшей конкретизации
требований, учитывается класс безопасности заявляемой продукции. При
сертификации ПО и ПТК приняты второй, третий и четвёртый классы безопасности.
Класс безопасности заявляемого объекта определяется из технического задания или
технических условий. Пример возможного перечня показателей сертификации ПО и
ПТК:
1) Функциональность (функциональная полнота, способность к
взаимодействию, защищенность, согласованность)
2) Надежность функционирования (уровень завершенности (отсутствия
ошибок), устойчивость к дефектам, восстанавливаемость, доступность, готовность)
) Удобство в использовании (осваиваемость, простота подготовки к
работе, удобство пользовательского интерфейса, анализируемость результатов,
документированность)
) Переносимость (адаптируемость, настраиваемость)
) Эффективность (временные характеристики, пропускная способность,
расширяемость)
Перечень атрибутов, имеющих отношение к показателям качества, уточняется
при разработке «Программы и методики проведения испытаний по оценке
соответствия».
Натурные испытания программа прошла в компании заказчика, особых
отклонении от заказа не выявлено.
3. РАСЧЕТНО-ЭКОНОМИЧЕСКАЯ ЧАСТЬ
.1 Разработка графика организации проектирования
Разработка данного пособия, так же как и разработка любого другого
программного продукта, требует определенных материальных, временных и трудовых
затрат, а следовательно должна окупаться. С экономической точки зрения затраты,
связанные с выполнением проекта, должны быть покрыты доходами от реализации
конечного продукта.
Первоначальная задача, которую необходимо решить с экономической точки
зрения, это разработка графика организации проектирования, что
продемонстрировано ниже. График организации проектирования:
1) Разработка технического задания (ТЗ):
– получение ТЗ;
2) Подготовительный этап:
– сбор информации;
– выбор объектного построения программы;
– разработка общей методики создания продукта;
3) Основной этап:
– разработка основного алгоритма;
– создание интерфейса;
– отладка;
4) Завершающий этап:
– подготовка технической документации;
– сдача продукта.
3.2 Определение трудоёмкости разработки программного обеспечения
Виды работ
|
Трудоёмкость (в
часах)
|
Получение
технического задания
|
2
|
Сбор информации
|
5
|
Разработка общей методики
создания продукта
|
5
|
Разработка
основного алгоритма
|
25
|
Создание
интерфейса
|
40
|
Отладка
|
12
|
Подготовка
технической документации
|
35
|
Сдача продукта
|
20
|
Итого
|
150
|
Упорядочим данный перечень в соответствии со смысловым содержанием
каждого вида работ и взаимосвязями между всеми видами работ.
Форма расположения работ по этапам:
1) Разработка технического задания:
– получение технического задания;
2) Подготовительный этап:
– сбор информации;
– выбор объектного построения программы;
– разработка общей методики создания продукта;
3) Основной этап:
– разработка основного алгоритма;
– создание интерфейса;
– отладка;
4) Завершающий этап:
– подготовка технической документации;
– сдача продукта.
Суммарная трудоёмкость составила 150 чел./час.
Экономическая эффективность - это получение максимума возможных благ от
имеющихся ресурсов. Для этого нужно постоянно соотносить выгоды и затраты, или,
говоря по-другому, вести себя рационально. Рациональное поведение заключается в
том, что производитель и потребитель благ стремятся к наивысшей эффективности и
для этого увеличивают выгоды и уменьшают затраты.
Экономическая эффективность - результативность экономической
деятельности, экономических программ и мероприятий, характеризуемая отношением
полученного экономического эффекта, результата к затратам факторов, ресурсов,
обусловившим получение этого результата, достижение наибольшего объема
производства с применением ресурсов определенной стоимости.
.3 Расчёт сметной стоимости проекта
Расчёт расходов на заработную плату.
На основе данных о трудоемкости и средней заработной плате по отрасли
рассчитываем основную заработную плату. Заработная плата программиста без опыта
работы составляет 15000 тысяч рублей в месяц (21 рабочий день, 8 часовой
рабочий день) или 89, 29 руб./час.
Таким образом, расходы на заработную плату по нашему проекту составляют:
осн = Cч ·
Fд · Pэ · Kпр (1)
где: Cч - средняя
часовая тарифная ставка персонала рабочих, равна 89, 29 руб./час;
Fд - действительный фонд времени работы одного рабочего, равен 150 часам;
Pэ - количество эксплуатационных рабочих, равно одному;
Kпр - коэффициент, учитывающий премиальные выплаты, равен 1, 6;
Sосн = 89, 29 · 150 · 1 · 1, 6
= 21429 рублей.
ЗП = 89, 29 · 150 = 13393.5 рублей.
Отчисления на заработную плату (Пенсионный Фонд, Фонд социального
страхования, Фонд обязательного медицинского страхования, территориальные фонды
медицинского страхования) составляют 34%. В денежном выражении это:
Осс = ЗП · 34(2)
100
где: ЗП - заработная плата техника-программиста,
Осс = 13393, 5 · 34 = 4553, 79 рублей.
100
Расчёт затрат на материалы.
Материалы,
затраченные на создание проекта, приведены в таблице 2. Расчет амортизации на
компьютер.
Амортизация оборудования рассчитываем на основе годовой нормы амортизационных
отчислений: Na = 6 %
A =
Cп · Nа (3)
об 100
где: Cп -
первоначальная стоимость оборудования;
Nа - норма амортизации, равна 6%;
A =
24000 · 6 =
1440 рублей.
об 100
Расчёт затрат на электроэнергию.
Любому персональному компьютеру для работы в среднем требуется примерно 0,
3 кВт/час. За всё время разработки программного продукта было использовано
следующее количество электроэнергии:
э = Nуст ·
Fэф (4)
где: Nуст -
установленная мощность компьютера кВт/час.;
Fэф - эффективный фонд работы оборудования, 131 час;
э = 0, 3 · 131 = 39, 3 кВт.
Таблица - Расчёт затрат на материалы.
Материальные
ресурсы
|
Единицы
измерения
|
Потребляемое
количество
|
Цена за ед.,
руб.
|
Сумма, руб.
|
Картридж
|
шт.
|
2
|
690
|
1380
|
Бумага формата
А4
|
упаковка
|
1
|
150
|
150
|
Папка
|
шт.
|
1
|
150
|
150
|
Файлы
|
шт.
|
110
|
1
|
110
|
Диск
|
шт.
|
1
|
40
|
40
|
Итого
|
|
|
|
1830
|
Рассчитать стоимость силовой электроэнергии на основе действующих тарифов
за кВт.ч. и расхода силовой электроэнергии.
эл = Sл ·
Wэ (5)
где: Sл - цена за
1 кВт/час. электрической энергии.
Cэл = 3, 25 · 39, 3 = 127, 72 рублей.
Все
результаты расчёта затрат приведены в таблице 3.
Таблица
3 - Смета затрат
Наименование
статей затрат
|
Сумма, руб.
|
Расходные
материалы
|
1830
|
Основная
заработная плата
|
13393,5
|
Расходы на
электроэнергию
|
127,72
|
Амортизационные
отчисления
|
1440
|
Отчисления на
заработную плату
|
4553,79
|
Итого
|
21345
|
стоимость затрат на создание данного программного продукта составляет
21345 рублей, следовательно, эту программу ниже данной цены продать нельзя, так
как в этом случае программа не будет экономически эффективной.
3.4 Определение трудоёмкости разработки программного обеспечения.
Созданный программный продукт актуален для организаций и учреждений,
которые в процессе своей деятельности для обмена информацией между корпусами
или компьютерами используют технологии локальных сетей, сетей интернета или
беспроводные технологии передачи данных.
Созданный программный продукт обладает следующими преимуществами:
– удобный в эксплуатации;
– создан удобный интерфейс;
разработан индивидуальный формат архива;
– разработана защита информации;
– вывод результата сжатия в удобном виде;
Рыночная цена аналогичного программного продукта составляет 35000 рублей.
Таким образом, реализовав наш программный продукт, мы можем получить
прибыль в размере 13655 рублей. Поэтому, необходимо реализовывать наш продукт в
большем количестве.
В настоящее время существует множество аналогов данного программного
продукта, которые позволяют в той или иной степени решают данную проблему.
Однако данные программы либо не учитывают специфику отдельного предприятия,
либо слишком сложны в работе, либо очень трудоемки для ЭВМ.
В отличие от имеющихся похожих программ, разработанный программный
продукт является простым в использовании, имеет относительно понятный интерфейс
для пользователя и обладает высоким быстродействием. Данная программа при
сравнительно небольших затратах в 21345 рублей позволяет максимально упростить
работу составителей словарей, библиотекарей, учителей, лингвистов и филологов.
4. ОХРАНА ТРУДА И БЕЗОПАСНОСТЬ ЖИЗНЕДЕЯТЕЛЬНОСТИ
.1 Охрана труда. Психические процессы, свойства и состояния, влияющие на
безопасность труда
Психология безопасности труда составляет важное звено в структуре
мероприятий по обеспечению безопасной деятельности человека. Проблемы
аварийности и травматизма на современных производствах невозможно решать только
инженерными методами.
Опыт свидетельствует, что в основе аварийности и травматизма (до
60 - 90%
случаев) часто лежат не инженерно-конструкторские дефекты, а организационно-психологические
причины: низкий уровень профессиональной подготовки по вопросам безопасности,
недостаточное воспитание, слабая установка специалиста на соблюдение
безопасности, допуск к опасным видам работ лиц с повышенным риском
травматизации, пребывание людей в состоянии утомления или других психических
состояний, снижающих надежность и безопасность деятельности специалиста.
В психической деятельности человека различают три основные группы
компонентов: психические процессы, свойства и состояния.
Психические процессы составляют основу психической деятельности и
являются динамическим отражением действительности. Без них невозможно
формирование знаний и приобретение жизненного опыта. Различают познавательные,
эмоциональные и волевые психические процессы (ощущения, восприятия, память и
др.).
Психические свойства (качества личности) - это свойства личности или ее
существенные особенности (направленность, характер, темперамент). Среди качеств
личности выделяют интеллектуальные, эмоциональные, волевые, моральные ,
трудовые. Эти свойства устойчивы и постоянны. Структурная организация всех
компонентов психики, выполняющая функцию активного взаимодействия человека (как
обладателя психики) с внешней средой, представленной в данный момент конкретной
ситуацией. Психические состояния отличаются разнообразием и временным
характером, определяют особенности психической деятельности в конкретный момент
и могут положительно или отрицательно сказываться на течении всех психических
процессов. Исходя из задачи психологии труда и проблем психологии безопасности
труда целесообразно выделять производственные психические состояния и особые
психические состояния, имеющие важное значение в организации профилактики
производственного травматизма и предупреждения аварийности.
.2 Техника безопасности. Требования к размещению электронной техники.
Расчет заземления
Заземлением какой-либо части электроустановки и другой установки
называется преднамеренное электрическое соединение этой части с заземляющим
устройством. Защитным заземлением называется заземление частей электроустановки
с целью обеспечения электробезопасности. Рабочим заземлением называется
заземление какой-либо точки токоведущих частей электроустановки, необходимое
для обеспечения работы электроустановки. Занулением в электроустановках
напряжением до 1 кВ называется преднамеренное соединение частей
электроустановки, нормально не находящихся под напряжением, с глухозаземленной
нейтралью генератора или трансформатора в сетях трехфазного тока, с
глухозаземленным выводом источника однофазного тока и с глухо-заземленной
средней точкой источника в сетях постоянного тока. Заземлителем называется
проводник (электрод) или совокупность металлически соединенных между собой
проводников (электродов), находящихся в соприкосновении с землей.
Глухозаземленной нейтралью называется нейтраль трансформатора или генератора,
присоединенная к заземляющему устройству непосредственно или через малое
сопротивление (например, через трансформаторы тока).
ГОСТ Р 50571.2-94 предусматривает следующие типы систем заземления
электрических сетей: TN-S, TN-C, TN-C-S, IT, ТТ. Для зданий можно встретить в
основном схемы TN-S, TN-C, TN-C-S. Схемы IT, TT характерны, как правило, для
локальных зон внутри здания и обеспечивают телекоммуникационные системы,
питающиеся постоянным током.
Заземление (зануление) средств вычислительной техники,
телекоммуникационных средств и технологического оборудования обеспечивает
решение двух основных задач:
– защиту персонала от поражения электрическим током при повреждении
изоляции и замыкании одного из проводов питающей линии на корпус оборудования
или от появления на корпусе оборудования опасного для человека потенциала по
каким-либо другим причинам (например, из-за индуктивных или емкостных связей);
– защиту оборудования и линий обмена информацией (в том числе локальных
вычислительных сетей) от помех, которые возникают со стороны питающих сетей
из-за разности потенциалов между различными точками цепей заземления и
блуждающих токов в цепях заземления вследствие воздействия внешних электромагнитных
полей и других причин.
Расчет заземления производится для того чтобы определить сопротивление
сооружаемого контура заземления при эксплуатации, его размеры и форму. Как
известно, контур заземления состоит из вертикальных заземлителей, горизонтальных
заземлителей и заземляющего проводника. Вертикальные заземлители вбиваются в
почву на определенную глубину.
Горизонтальные заземлители соединяют между собой вертикальные
заземлители. Заземляющий проводник соединяет контур заземления непосредственно с
электрощитом. Размеры и количество этих заземлителей, расстояние между ними,
удельное сопротивление грунта -- все эти параметры напрямую зависят на
сопротивление заземления.
Основные условия, которых необходимо придерживаться при сооружении
заземляющих устройств это размеры заземлителей. В зависимости от используемого
материала (уголок, полоса, круглая сталь) минимальные размеры заземлителей
должны быть не меньше:
1) полоса 12х4 - 48 мм2;
2) уголок 4х4;
) круглая сталь - 10 мм2;
стальная труба (толщина стенки) - 3.5 мм.
.3 Охрана окружающей среды. Защита от энергетических воздействий. Защита
от вибрации
В результате научно-технической революции широкое распространение
получили процессы и приборы, представляющие собой источники электромагнитных
излучений (ЭМИ), которое в настоящее время превышает естественный фон,
создаваемый излучением Солнца. Электромагнитные излучения искусственного
происхождения в совокупности с естественным солнечным излучением оказывают
значительное влияние на здоровье людей, а также на все живое в биосфере.
Электромагнитные излучения производят биологическое действие на
функционирование организма в целом, а также на отдельные его системы -
иммунную, эндокринную, кроветворную и так далее, а также на органы чувств -
глаза, уши, приводя к различным нарушениям и повреждениям. Исследователями
установлено негативное влияние электромагнитных излучений высоковольтных линий
электропередач на людей, проживающих вблизи этих линий.
Для защиты от таких энергетических воздействий они предлагается создание
буферной зоны из плотных, густых лесонасаждений, включая высокие деревья типа
кипариса и пирамидального тополя, между источниками ЭМИ и жилыми домами. Кроме
того, жилые дома и источники ЭМИ должны иметь обязательно заземляющий контур.
Подобные излучения создают телевизионные и радиоцентры (передающие устройства),
радиолокаторы.
Источниками электромагнитного излучения непосредственно в жилом или
производственном помещении, оказывающими негативное влияние на организм,
считаются холодильники, телевизоры, компьютеры, радиоприемники,
видеомагнитофоны, пылесосы, микроволновые печи и т. д. По силе воздействия
некоторых домашних электромагнитных полей на организм человека специалисты
считают их сопоставимыми с электромагнитными излучениями ЛЭП. Отмечены отрицательные
воздействия компьютеров на здоровье людей при длительной работе, проявляющиеся
в виде депрессии, стрессового состояния, головных болей , бессонницы,
раздражения кожи, усталости глаз. К примеру, переменное электромагнитное поле
мониторов - мощный источник переменных электромагнитных и электрических полей
высоких и низких частот.
По статистике проведенных исследований электрические поля высокой
интенсивности в 7 раз повышают вероятность онкологических заболеваний, а также
способствуют изменению структуры зубных пломб, что приводит к их разрушению и
выделению ядовитых веществ. Для защиты от вышеуказанных воздействий необходимо
применение фильтров класса «максимальная защита» (типа «МАХ- МР-196»). Кроме
того, экологи рекомендуют размещение комнатных декоративных растений, цветов в
помещениях, где работает различная электроаппаратура, в том числе и компьютеры.
В обязательном порядке также необходимо подключение электроприборов (включая
компьютеры) к заземляющему контуру жилых и производственных зданий.
Промышленные предприятия, объекты энергетики, связи и транспорт являются
основными источниками энергетического загрязнения окружающей среды. К
энергетическим загрязнениям относят вибрационные и акустические воздействия,
электромагнитные поля и излучения, воздействия радионуклидов и ионизирующие
излучения.
При решении задач защиты от энергетических воздействий выделяют источник,
приемник энергии и защитное устройство, которое уменьшает до допустимых уровней
поток энергии к приемнику. В общем случае защитное устройство обладает
способностями: отражать, поглощать, быть прозрачным по отношению к потоку
энергии и характеризуется энергетическими коэффициентами поглощения, отражения,
коэффициентом передачи. Поэтому можно выделить следующие принципы защиты:
1) за счет отражательной способности защитных устройств;
2) за счет поглощательной способности защитного устройства;
3) защита осуществляется с учетом свойств прозрачности защитных
устройств.
На практике принципы обычно комбинируют, получая различные методы защиты,
в частности, изоляцией и поглощением.
Методы изоляции используют, когда источник и приемник энергии, являющийся
одновременно объектом защиты, располагаются с разных сторон от защитного
устройства. В основе этих методов лежит уменьшение прозрачности среды между
источником и приемником. Различают два основных метода изоляции: метод, при
котором уменьшение прозрачности среды достигается за счет поглощения энергии
или за счет высокой отражательной способности защитного устройства.
В основе методов поглощения лежит принцип увеличения потока энергии,
прошедшего в защитное устройство. Есть два вида поглощения энергии защитным
устройством: поглощение энергии самим защитным устройством за счет ее отбора от
источника в той или иной форме, в том числе в виде необратимых потерь, и
поглощение энергии в связи с большой прозрачностью защитного устройства.
Например, в вибросистеме действуют силы инерции, трения, упругости. Для
защиты от вибрации используют метод виброизоляции, когда между источником
вибрации и ее преемником, являющимся одновременно объектом защиты,
устанавливают изолятор с малым коэффициентом передачи.
Защита от вибрации методами поглощения осуществляется в виде
динамического гашения и поглощения. В первом случае энергия поглощается
защитным устройством, отбирающим энергию от источника. Защитное устройство,
увеличивающее рассеяние энергии в результате повышения диссипативных свойств
системы, называется поглотителем вибрации. Возможно комбинирование этих двух
свойств одновременно с помощью динамических виброгасителей с трением.
ВЫВОДЫ
В данном дипломном проекте было сделано следующее:
В теоретическом разделе представлен объект и предмет исследования, дано
обоснование разработке информационной системы, показана актуальность решаемых
проблем, сформулирована цель и задачи данного проекта, показана его значимость.
В расчётно-технической части описан пошаговый процесс разработки
информационной системы. Разработана форма входных и выходных данных,
математическая модель решаемой задачи и её алгоритм, а также меры защиты
информации от несанкционированного доступа. Кроме того, дано описание модулей и
процесса отладки программы, проведено её тестирование и натурные испытания,
предоставлен контрольный пример её работы.
В расчётно-экономической части разработан график организации
проектирования, определена трудоёмкость разработки программного обеспечения,
рассчитана сметная стоимость проекта и его экономическая эффективность.
В части охраны труда и безопасности жизнедеятельности рассказано не
только о психических процессах, свойствах и состояниях, влияющих на
безопасность труда, и о требованиях к размещению электронной техники, но и о
защите как от энергетических, так и от вибрационных воздействий.
В графической части приведена математическая модель проектируемой системы,
её общий алгоритм и схема тестирования.
При создании информационной системы «Электронный словарь» использовался
язык программирования Java, среда разработки Eclipse и СУБД SQLite. Последняя,
обладая всеми чертами классической СУБД, предоставляет множество дополнительных
возможностей. SQLite - это мощная, гибкая и простая в использовании СУБД.
SQLite имеет множество областей применения: на малом предприятии, корпорации и
даже в сфере домашнего применения.
ЗАКЛЮЧЕНИЕ
С помощью SQLite можно создать приложение, работающее в среде Windows и
полностью соответствующее потребностям по управлению данными. Используя
запросы, есть возможность выбирать и обрабатывать хранящуюся в таблицах
информацию. Формы и отчеты ”наследуют” свойства базовой таблицы или запроса,
так что в большинстве случаев необходимо указать форматы, условия на значения и
некоторые другие характеристики данных только один раз.
При разработке данной информационной системы был пройден полный цикл
проектирования программы от постановки задачи заказчиком до сдачи
информационной подсистемы в эксплуатацию.
Разработанная информационная система позволяет достигнуть следующих
эффектов:
– уменьшение времени необходимого для ведения складского учета на
предприятии;
– автоматизация контроля расхода технических ресурсов;
– возможность длительного хранения информации о поставках на предприятие
большого срока давности, для возможности более полного расчета эффективности
деятельности предприятия.
На основании вышесказанного можно сделать вывод о том, что разработка
информационной системы «Электронный словарь» является целесообразной и будет
приносить реальную пользу при использовании ее на предприятии.
Рекомендации по применению полученных результатов
Алгоритмы и подходы, используемые для разработки данного программного
обеспечения, являются универсальными, поэтому их можно внедрять в любые
информационные системы, находящиеся как на стадии разработки, так и на стадии
промышленного использования.
Также стоит отметить, что разработанное программное обеспечение подходит
не только для работы с различными электронными словарями, но и с любым другим
видом структурированной информации.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1) Андон
Ф. Резниченко Л. Язык запросов SQL. - СПб.: Питер, 2010 г.
2) Артеменко
Ю.Н. SQL. Справочник по языку. - М.: Вильямс, 2011 г.
) Гамильтон
Б. ADO.NET сборник рецептов для профессионалов. - СПб.: Питер, 2012 г.
) Грабер
М. SQL. - М.: Лори, 2010 г.
5) Гутманс
Э. Стиг Баккен, Дерик Ретанс. Профессиональное программирование. - М.:
Символ-Плюс, 2012 г.
6) Дейт К.
Дж. Введение в системы баз данных - 8-е изд. - М.: Вильямс, 2012 г.
7) Дрога
А. А., Жукова П. Н., Копонев Д. Н., Лукьянов Д. Б., Прокопенко А. Н.
Информатика и математика. - Белгород: Белгородский юридический институт МВД РФ,
2013 г.
) Дубовцев
А. Microsoft .NET в подлиннике. - СПб: БХВ-Петербург, 2014
) Карпова
Т. Базы данных. Модели, разработка, реализация. - СПб: Питер, 2011 г.
) Коннолли
Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и
практика - 3-е изд. - М.: Вильямс, 2012 г.
) Стивенс
Р. Программирование баз данных. - М.: Бином-Пресс, 2011 г.
) Хомоненко
А. Д. Базы данных (5-е издание). - СПб.: Корона принт, 2011
Чиртик А.А.
Программирование в Java. - СПб: Питер, 2010 г.