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

Анализ сред разработки для веб-проектов. Система учета работы элементов информационной инфраструктуры. Создание базы данных и каркаса системы на языке HTML и CSS. Технологии использования и демонстрация работы системы. Экономическое обоснование проекта.

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

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

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

Отличительной чертой WebMatrix является то, что разработка и поддержка самого сайта выполняется на локальном ПК пользователя (в среде Windows XP, Vista и 7), который устанавливается и реплицируется на внешний сайт, с которым и работают интернет-пользователи. Публикация или модификация сайта на площадки хостинг-провайдеров выполняется через механизмы WebDeploy или FTP. Интересной функцией WebMatrix, которая может быть полезна не только начинающим Web-разработчикам, -- автоматизированное средство проверки качества оптимизации веб-сайта, который позволяет повысить видимость сайта в поисковых системах Яндекс, Bing, Google и др. Правда, нужно сказать, что такое тестирование проводится только на уровне синтаксиса HTML-страниц, а не структуры Web-сайта в целом. Данный пакет достаточно прост в освоении, чтобы начать создание собственных сайтов с нуля, но при этом предлагает весьма развитые возможности для построения сложных систем на профессиональном уровне.

Еще одним программным продуктом фирмы Microsoft является Visual Studio .NET, который включен в линейку Microsoft Visual Studio. Разработка веб-сайта в данной среде производится на языке C#, а технология называется ASP.NET, ранее просто ASP. Включет в себя .NET Framework, различные улучшения и новые возможности, которые улучшают и упрощают веб-разработку.

Существует производительная среда разработки от фирмы Microsoft линейки Microsoft Visual Studio - Visual Web Developer. Это полнофункциональная среда разработки, предназначенная для создания веб-приложений ASP.NET. Visual Web Developer предоставляет следующие функциональные возможности:

1) Конструирование веб-страниц. Мощный редактор веб-страниц, который имеет режим представления WYSIWYG и режим редактирования HTML с технологией IntelliSense и возможностью проверки;

2) Функции конструирования страниц. Целостный макет узла с главными страницами и целостное отображение страниц с темами и обложками;

3) Редактирование кода. Редактор кода, который позволяет писать код для динамических веб-страниц на Visual Basic или C#. Редактор кода имеет функции синтаксической разметки и IntelliSense;

4) Тестирование и отладка. Локальный веб-сервер для тестирования и отладчик, помогающие находить ошибки в разрабатываемых программах;

5) Развертывание. Средства автоматизации типичных задач для развертывания веб-приложений на сервере хостинга или у поставщика услуг хостинга. Visual Web Developer представляет собой идеальную среду для построения веб-узлов и их публикации на размещенных веб-узлах. Используя инструменты разработки Visual Web Developer, можно разрабатывать веб-узлы ASP.NET на собственном компьютере. В состав Visual Web Developer входит локальный веб-сервер, который обеспечивает все функции, необходимые для тестирования и отладки веб-узлов ASP.NET, и не требует установки сервера IIS. Когда веб-узел готов, его можно опубликовать на компьютере размещения при помощи встроенного средства, которое позволяет передавать файлы, готовые для совместного использования. Также можно произвести предварительную компиляцию и развернуть веб-узел. Имеется возможность запуска компилятор для всего веб-узла, а не только для файлов кода, и создание макета веб-узла, который можно развертывать на рабочем сервере. Можно использовать все преимущества встроенной поддержки протокола FTP. Используя возможности работы с протоколом FTP в Visual Web Developer, можно напрямую подключаться к компьютеру размещения, создавая и редактируя файлы прямо на сервере.

С помощью линейки Microsoft Visual Studio можно создавать различные типы проектов ASP.NET, в том числе веб-сайты, веб-приложения, веб-службы и серверные элементы управления Ajax, которые будут эффективными и производительными, за счет того, что в данной линейки достаточно инструментов для оптимизации и тестирования созданных проектов, которые выполняют свою работу на должном уровне.

Если анализировать существующий инструментарий сторонних разработчиков, то его достаточно большое количество. Для создания ИС было принято решении о использование программного средства Codelobster PHP Edition - бесплатной интегрированной среды разработки приложений (IDE) для создания веб-приложений на языке PHP. Также поддерживаются: JavaScript, HTML, XML и CSS. Редактор позволяет конвертировать HTML файлы в JSP, PHP, PL, ASP и наоборот, файлы формата JSP, PHP, PL, ASP в HTML формат. В программе реализована опция, которая позволяет просмотреть результат выполнения кода файлов с расширением: *.html, *.java,*.php, *.pl, *.asp,*.xml, *.xsl. Основные возможности данной среды:

1) Подсветка синтаксиса для SQL, PHP, HTML, CSS, JavaScript и XML;

2) Автодополнение команд, тегов, переменных для SQL, PHP, HTML, CSS, JavaScript и XML;

3) Контекстная и динамическая помощь по SQL, PHP, HTML, CSS, JavaScript и XML;

4) Встроенный собственный PHP debugger;

5) Автоматическая проверка синтаксиса;

6) Сворачивание кода;

7) HTML/CSS инспектор по типу Firebug.

Среда поддерживает подключение внешних плагинов для таких фреймворков и CMS, как:

1) CakePHP;

2) CodeIgniter;

3) Drupal;

4) Facebook;

5) JQuery;

6) Joomla;

7) Smarty;

8) Symfony;

9) WordPress;

10) Yii.

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

3. Разработка системы учета работы элементов ИТ инфраструктуры

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

Основой создания технического задания является ГОСТ 34.602.89 "Техническое задание на создание автоматизированной информационной системы".

1 Общие сведения

1.1 Информационная система УМВД России по Выборгскому району г. Санкт-Петербургу по учету оргтехники.

1.2 Исполнитель: Работа будет выполняться автором дипломной работы.

1.3 Источник финансирования создания ИС - внутреннее финансирование.

2 Назначение и цели создания ИС

Разрабатываемая ИС предназначена для учета оргтехники в УМВД России по Выборгскому району г. Санкт-Петербурга.

Основная цель создания ИС - ведение оперативного учета используемой в УМВД России по Выборгскому району г. Санкт-Петербурга оргтехники.

2.1 Требования к системе.

2.1.1 Требования к ИС в целом

2.1.1.1 Требования к структуре и функционированию ИС

2.1.1.1.1 Перечень подсистем их назначение и основные характеристики

Разрабатываемая ИС включает в себя следующие подсистемы:

1) Подсистема хранения данных;

2) Подсистема формирования отчетов.

Подсистема хранения данных предназначена для хранения данных ИС, данных для формирования отчетов, временных данных.

2.1.1.1.2 Требования к способам и средствам связи для информационного обмена между компонентами системы

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

В состав передаваемых данных входят:

1) данные о техническом оснащении;

2) данные о подразделениях и сотрудниках организации;

3) данные по ремонту и обслуживанию оргтехники;

4) другие справочные данные.

2.1.1.1.3 Требования к режимам функционирования системы

Для ИС определены следующие режимы функционирования:

1) Аварийный режим работы;

2) Нормальный режим работы.

Основным режимом работы ИС является нормальный режим работы. В данном режиме:

1) Клиентское программное обеспечение и технические средства обеспечивают возможность функционирования ИС в течение рабочего дня (с 8:00 до 17:00 часов) в течение пяти дней в неделю;

2) Серверное программное обеспечение и технические средства сервера обеспечивают возможность круглосуточного функционирования ИС, с перерывами на обслуживание;

3) Исправно работает оборудование, составляющие комплекс технических средств;

4) Исправно функционирует системное, базовое и прикладное программное обеспечение.

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

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

1) завершить работу ИС, с сохранением данных;

2) выключить рабочее место;

3) выключить все периферийные устройства;

4) выполнить резервное копирование БД, если оно не происходит автоматически на сервере баз данных.

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

2.1.1.1.3 Требования по диагностированию ИС

ИС не имеет никаких диагностических средств мониторинга. Все средства мониторинга возложены на веб-сервер и сервер БД.

2.1.1.1.4 Перспективы развития, модернизации ИС

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

2.1.1.2 Требования к численности и квалификации персонала

Для эксплуатации ИС имеются следующие квалификации:

1) Администратор сервера и баз данных;

2) Пользователь (сотрудники организации).

Основными обязанностями администратора сервера и баз данных являются:

1) Модернизация, настройка и мониторинг работоспособности сервера и клиентских машин;

2) Установка, модернизация, настройка и мониторинг работоспособности системного и базового ПО;

3) Установка, модернизация, настройка параметров программного обеспечения СУБД;

4) Оптимизация БД по времени отклика и скорости доступа к данным;

5) Управление политикой доступа к информации, хранящейся в БД.

6) Установка, настройка и мониторинг прикладного программного обеспечения;

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

Основными обязанностями пользователя являются:

1) Отправка заявок, в случае не исправности орг. техники;

2) Заполнение данных об используемой оргтехнике.

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

Рекомендуемая численность для эксплуатации ИС:

1) Администратор - 1 штатная единица;

2) Пользователь - число штатных единиц определяется структурой рассматриваемой организации.

2.2.1.3 Требования к показателям назначения ИС

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

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

1) Для операций навигации по экранным формам системы - не более 15 сек;

2) Для операций с изменением информации -- не более 5 сек.

2.2.1.4 Требования к надежности ИС

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

1) При сбоях в системе электроснабжения аппаратной части, приводящих к перезагрузке ОС, восстановление ИС должно происходить после перезапуска ОС;

2) При ошибках в работе аппаратных средств восстановление функции ИС возлагается на ОС;

3) При ошибках, связанных с программным обеспечением, восстановление работоспособности возлагается на ОС.

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

2.2.1.5 Требования по безопасности

Все внешние элементы технических средств системы, находящиеся под напряжением, должны иметь защиту от случайного прикосновения, а сами технические средства иметь защитное заземление в соответствии с ГОСТ 12.1.030-81 и ПУЭ.

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

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

Факторы, оказывающие вредные воздействия на здоровье со стороны всех элементов системы (в том числе инфракрасное, ультрафиолетовое, рентгеновское и электромагнитное излучения, вибрация, шум, электростатические поля, ультразвук строчной частоты), не должны превышать действующих норм (СанПиН 2.2.2./2.4.1340-03 от 03.06.2003 г.).

2.2.1.6 Взаимодействие пользователей с прикладными программным обеспечением

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

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

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

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

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

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

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

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

3) Внешнее поведение сходных элементов интерфейса (реакция на наведение указателя "мыши", переключение фокуса, нажатие кнопки) должны реализовываться одинаково для однотипных элементов.

ИС должна соответствовать требованиям эргономики и профессиональной медицины при условии комплектования высококачественным оборудованием (ПЭВМ, монитор и прочее оборудование), имеющим необходимые сертификаты соответствия и безопасности Росстандарта.

2.2.1.7 Требования к защите ИС от несанкционированного доступа

ИС должна обеспечивать защиту от несанкционированного доступа на уровне не ниже установленного требованиями, предъявляемыми к категории 1Д по классификации действующего руководящего документа Гостехкомиссии России "Информационные системы. Защита от несанкционированного доступа к информации. Классификация информационных систем" 1992 г.

Компоненты подсистемы защиты от НСД должны обеспечивать:

1) Авторизацию пользователя;

2) Проверку полномочий пользователя при работе в ИС;

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

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

Защищенная часть ИС должна использовать "слепые" пароли (при наборе пароля его символы не показываются на экране либо заменяются одним типом символов; количество символов не соответствует длине пароля). Защищенная часть ИС должна автоматически блокировать сессии пользователей и приложений по заранее заданным временам отсутствия активности со стороны пользователей и приложений. Защищенная часть должна использовать многоуровневую систему защиты и должна быть ь отделена от незащищенной части системы межсетевым экраном.

2.2.1.8 Требования по сохранности информации

Программное обеспечение ИС должно восстанавливать свое функционирование при корректном перезапуске аппаратных средств. Должна быть предусмотрена возможность организации автоматического и ручного резервного копирования данных системы средствами системного и базового программного обеспечения (ОС, СУБД), входящего в состав программно технического комплекса.

2.2.1.9 Требования по патентной чистоте

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

2.2.1.10 Дополнительные требования

Дополнительные требования к ИС не предъявляются.

2.2.2. Требование к функциям ИС

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

1) функция редактирования перечня оргтехники;

2) функция редактирования справочных таблиц;

2.2.3 Требования к видам обеспечения

2.2.3.1 Требования к математическому обеспечению ИС

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

2.2.3.2 Требования для информационного обеспечения ИС

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

Структура БД должна поддерживать кодирование хранимой и обрабатываемой информации в соответствии с общероссийскими классификаторами.

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

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

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

В состав ИС должна входить специализированная подсистема резервного копирования и восстановления данных.

2.2.3.3 Лингвистическое требование

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

2.2.3.4 Требования к программному обеспечению системы

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

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

2.2.3.5 Требования к техническому обеспечению ИС

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

В состав комплекса должны следующие технические средства:

1) Веб-сервер;

2) Сервер БД;

3) ПК пользователей;

4) ПК администратора.

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

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

1) Процессор - Intel Xeon 3 ГГц;

2) Объем оперативной памяти - 8 Гб;

3) Дисковая подсистема - 2 х 500 Гб;

4) Устройство чтения компакт-дисков (DVD-ROM);

5) Сетевой адаптер - 100/1000 Мбит;

6) Дисковая подсистема 0,5 Тб Raid Array 5.

Требования к техническим характеристикам ПК пользователей системы:

1) Процессор - Intel Pentium Dual Core 2.8 ГГц;

2) Объем оперативной памяти - 4 Гб;

3) Дисковая подсистема - 500 Гб;

4) Устройство чтения компакт-дисков (DVD-ROM);

5) Сетевой адаптер - 100/1000 Мбит.

2.2.3.6 Требования к метрологическому обеспечению

Требования к метрологическому обеспечению не предъявляются.

2.2.3.7 Требования для организационного обеспечения

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

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

3.2 Создание БД

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

1) каждый элемент таблицы -- один элемент данных;

2) все ячейки в столбце таблицы однородные, то есть все элементы в столбце имеют одинаковый тип (числовой, символьный и т. д.);

3) каждый столбец имеет уникальное имя;

4) одинаковые строки в таблице отсутствуют;

5) порядок следования строк и столбцов может быть произвольным.

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

1) Пользователь. Описывает пользователя ИС с правами и доступом;

2) Сотрудник. Описывает сотрудника организации. Характеризуется ФИО сотрудника, должность, контактными данными;

3) Звание. Описывает звание сотрудника. Характеризуется названием звания;

4) Должность. Описывает должность сотрудника. Характеризуется названием должности.

5) Закрепленное оборудование и ПО. Характеризуется закрепленной за сотрудником орг. техники.

В результате проектирования базы данной на основе предполагаемых используемых сущностей, была получена БД разрабатываемой ИС. Рисунок 11.

3.3 Разработка каркаса ИС на языке HTML и CSS

После проектирования базы данной следует начать разрабатывать каркас будущей ИС. Каркас подразумевает под собой страничную разметку на языке HTML с использованием таблиц каскадных стилей на языке CSS.

Для разметки страниц будет использоваться блочная разметка, которую также называют разметка слоями либо div-разметка. Также существует еще табличная разметка, но она будет использоваться при построении таблиц. Верстка блоками имеет ряд преимуществ по сравнению с табличной версткой, она обеспечивает более быструю загрузку страницы веб-приложения, содержимое блоков отображается по мере загрузки, в отличие от таблицы, в которой содержимое не отобразиться до тех пор, пока все ее содержимое не загрузиться, код страницы удобочитаем. Но и блочная верстка не идеальна, есть и недостатки. Так нельзя получить представление данных как это делает таблица. То есть таблицы нужно использовать для отображения табличных данных. Табличную верстку также можно использовать и для задания структуры страницы, но злоупотреблять все, же не стоит. Блочная верстка представляет тег <div></div>, между которым находится блок с требуемой информацией. Также тегу <div> можно назначить идентификатор (id) либо класс (class) для связи с языком CSS. Отличие идентификатора от класса в том, что если блоку назначить уникальный идентификатор, то в других блоках нельзя использовать его, в отличие от класса, который можно использовать в любом количестве блоков.

Приведем пример, который показывает, как блок можно связать с языком CSS для оформления. Допустим, имеется блок с идентификатором `test_dev` - <div id='test_div'></div>. Затем в файле с расширением .css, который подключен на странице, на которой находится данный блок, описываются атрибуты со значениями. Пример такого описания для выше приведенного блока показан в листинге 1.

#test_div

{

width:270px;

height:150px;

float:right;

font-size:24px;

font-family:Arial;

color: #FFFFFF;

background : navy;

}

Листинг 1 - Описание примера оформления на языке CSS

Количество атрибутов и их свойств достаточно большое, поэтому опишем только несколько атрибутов:

1) width : определяет ширину данного блока в пикселях;

2) height ; определяет высоту данного блока в пикселях;

3) float : определяет по какой стороне будет выравниваться элемент, при этом остальные элементы будут обтекать его с других сторон;

4) font-size : определяет размер шрифта в пикселях;

5) font-family : определяет семейство шрифта;

6) color : определяет цвет текста;

7) background : определяет цвет заднего фона.

Данный метод блочной разметки с использованием языка CSS будет использоваться во всем проекте для создания каркаса страниц и размещения на них блоков с требуемыми элементами и информацией. Все описание атрибутов и их свойств будут содержаться в файлах для удобства и подключатся на требуемую страницы. Название таких файлов будет состоять из слова style и названия текущей страницы. Файлы будут иметь расширения .css и находится в папке css. Подключение же файлов с оформлением на языке CSS на данную html-страницу будет происходить с помощью команды <link rel="stylesheet" href="css/test_css.css">. Атрибут href отвечает за подключение файла с названием, которое указано после знака равно в ковычках, в данном примере это файл test_css.css, который находится в папке css.

Для удобной навигации по разделам ИС требуется создать понятное меню. Для простоты меню будет создано на языках HTML и CSS. В основе меню лежит метод маркированного списка, элементами которого являются ссылки на разделы. Опишем данный метод. На языке HTML строится маркированный список с помощью тегов <li></li> и <ul></ul>, где каждый элемент списка имеет ссылку на определенную страницу и название. Затем с помощью таблицы стилей CSS элементам списка присваиваются свойства, такие как цвет, шрифт, размер шрифта, размер выделения. За визуализацию выпадающего списка отвечают свойства :hover и display: , где первое свойство означает, что произойдет, когда наведен курсор на элемент (в нашем случае ссылка на какой-нибудь раздел меню), а второе свойство означает, что произойдет с блоком (в нашем случае список с ссылками на разделы), будет он показан или скрыт, за это отвечают параметры данного свойства block либо none соответственно.

3.4 Разработка обработчиков формы на языке PHP

Взаимодействие со веб-скриптом на языке PHP, который занимается обработкой выбора раздела меню осуществляется следующим способом: как только наведен курсор на любой пункт в меню и осуществлено нажатие левой клавиши мышки, происходит переход на php-документ, другими словами переход на обработчика, в котором в зависимости от выбранного пункта меню осуществляется подключение соответствующего php-файла.

Данные получаются с помощью php-метода GET (метод GET - данный метод передачи переменных применяется в PHP для передачи переменных в файл при помощи адресной строки. То есть переменные передаются сразу через адресную строку браузера.), проверяются условной командой if и в зависимости от результата проверки командой include("имя_файла.php") происходит подключение файла из корневого каталога. Описанный выше метод представлен на языке PHP.

Листинг 2 - Содержимое обработчика меню на языке PHP

Рассмотрим, как происходит взаимодействие с БД в разрабатываемой ИС на примере функции авторизации пользователей в сервис.

Авторизация представляет собой страницу, на которой расположены два поля, одно поле для ввода логина, а второе для ввода пароля, и кнопка "Войти". Как только в соответствующие поля введены данные, происходит проверка введенного логина и пароля пользователя на наличии таких в БД и затем в зависимости от результата проверки происходит вход в ИС либо отказ от входа. Форма авторизации реализована на языке HTML с помощью блочной верстки, таблица стилей реализована на CSS, а обработчик реализован на языке PHP. Для взаимодействия с СУБД используется класс, который написан на языке PHP, и который осуществляет выполнение любого SQL-запроса.

Опишем по этапам как происходит авторизация пользователей. Как только в адресной строке браузера введено название сайта, на котором расположен данный сервис, осуществляется запуска файла index.php, в котором реализовано подключение файла login.php, который и отвечает за авторизацию в систему. В данном файле осуществляется подключение HTML-формы login.html, в которой и располагаются поля для ввода данных и кнопка входа. После того, как логин и пароль введены и нажата кнопка "Войти", осуществляется запуск php-обработчика, который содержится в файле login.php. Ранее был рассмотрен метод передачи переменных с помощью метода GET через командную строку, когда переменные передавались явно. В нашем случае воспользуемся втором способом передачи переменных с помощью метода POST, в котором передача осуществляется скрытно, то есть в адресной строке браузера никакие переменные не отображаются. Как только переменные, которые содержат введенные логин и пароль пришли в обработчик, осуществляется sql-запрос к БД по извлечению искомых данных, если такие имеются там. Sql-запрос представляет собой запрос на извлечение из таблицы с именем "managers" строки, значения которой совпадают с введенными значениями в поля при авторизации. Если же такая строчка найдена, то происходит ее извлечение и присваивание переменным сессии определенные значения авторизующего пользователя. Если же введены неверные либо несуществующие данные, то в БД они не будут найдены, и происходит появление окошка с предупреждением о том, что в доступе отказано. Следует отметить то, что все пароли подвергаются алгоритму шифрования md5, что представляет собой необратимую хеш-функцию, которую теоретически невозможно подобрать. Использование данного алгоритма шифрования паролей является одной из базовой формы защиты от несанкционированного доступа в ИС. Листинг HTML-формы авторизации (файл login.html) приведен в листинге 3. Листинг php-обработчика (файл login.php) приведен в листинге 4.

Листинг 3 - HTML-форма авторизации пользователей ИС

Листинг 4 - Обработчик авторизации пользователей на языке PHP

PHP-класс, который отвечает за взаимодействие с БД, представлен в файле database.php и расположен в папке includes, а подключается в файле header.php, который является заголовочным подключаемым файлом в каждом разделе. В этом же файле определяется кодировка UTF-8 для всех страниц ИС. Сам по себе язык PHP имеет уже готовые sql-запросы, но для того, чтобы получить требуемые данные либо произвести какую-нибудь операцию с ними, нужно написать несколько запросов, что не очень удобно. Поэтому подключаемый класс упрощает работу с базой данных. Стоит написать только sql-запрос, второй командой его запустить, и если запрос возвращает набор данных, то третьей командой получить данные сразу в массив либо в переменную.

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

При использовании сессий данные сохраняются во временных файлах на сервере. Использование сессий очень удобно и оправдано в таких приложениях как Интернет-магазины, форумы, доски объявлений, когда, во-первых, необходимо сохранять информацию о пользователях на протяжении нескольких станиц, а, во-вторых, своевременно предоставлять пользователю новую информацию. Протокол HTTP является протоколом "без сохранения состояния". Это означает, что данный протокол не имеет встроенного способа сохранения состояния между двумя транзакциями. Т. е., когда пользователь открывает сначала одну страницу сайта, а затем переходит на другую страницу этого же сайта, то основываясь только на средствах, предоставляемых протоколом HTTP невозможно установить, что оба запроса относятся к одному пользователю. Таким образом необходим метод, при помощи которого было бы отслеживать информацию о пользователе в течение одного сеанса связи с веб-сайтов. Одним из таких методов является управление сеансами при помощи предназначенных для этого функций. Для нас важно то, что сеанс, по сути, представляет собой группу переменных, которые, в отличие от обычных переменных, сохраняются и после завершения выполнения PHP-сценария. При работе с сессиями различают следующие этапы:

1) открытие сессии;

2) регистрация переменных сессии и их использование;

3) закрытие сессии.

Самый простой способ открытия сессии заключается в использовании функции session_start(), которая вызывается в начале PHP-сценария. Эта функция проверяет, существует ли идентификатор сессии, и, если нет, то создает его. Если идентификатор текущей сессии уже существует, то загружаются зарегистрированные переменные сессии. После инициализации сессии появляется возможность сохранять информацию в суперглобальном ассоциативном массиве $_SESSION. После завершения работы с сессией сначала нужно освободить все переменные сессии функцией unset(), а затем закрыть сессию командой session_destroy(). Таким образом, метод сессий позволяет на протяжении всей работы пользователя с сервисом хранить о нем информацию, модифицировать ее и использовать, когда требуется.

3.5 Разработка модулей на языке JavaScript

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

jQuery - библиотека JavaScript, фокусирующаяся на взаимодействии JavaScript и HTML. Библиотека jQuery помогает легко получать доступ к любому элементу DOM (DOM - "объектная модель документа", не зависящий от платформы и языка программный интерфейс, позволяющий программам и скриптам получать доступ к содержимому HTML, XHTML и XML-документов, а также изменять содержимое, структуру и оформление таких документов), обращаться к атрибутам и содержимому элементов DOM, манипулировать ими. Также библиотека jQuery предоставляет удобный API по работе с AJAX. API - набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах, используется программистами для написания всевозможных приложений.

Для проверки заполнения данными полей форм будет использоваться следующий метод - по уникальному идентификатору (id) с помощью библиотеки jQuery на языке JavaScript осуществляется поиск на данной странице, как только найден элемент с таким идентификатором, а им будет являться поле формы, происходит проверка значения, которое введено либо не введено в поле. Если в поле ничего не введено, то с помощью метода val(), который определяет значение, введенное в поле значение, получим значение, которое будет равно пустому, то есть пустым кавычкам. В листинге 5 показан простой пример функции определения введено ли что-нибудь в поле формы или нет и если что-то введено в поле, то функция возвращает значение Истина (true), иначе значение Ложь (false) и сообщение, что именно не введено. Запуск данной функции происходит по нажатию на кнопку с id равному btn_save.

$("#btn_save").click(function(){

if ($("#name").val() == "")

{

alert("Не введено имя!");

return false;

}

if ($("#surname").val() == "")

{

alert("Не введена фамилия!");

return false;

}

if ($("#lastname").val() == "")

{

alert("Не введено отчество!");

return false;

}

else

return true;

});

Листинг 5 - Функция на языке JavaScript для определения корректности ввода данных в поля формы

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

Рисунок 2 - Схема работы технологии AJAX

На рисунке 2 видно, что в классической модели приложения запрос сразу отсылается на веб-сервер, с которого напрямую по протоколу HTTP(S) принимаются данные. Если же рассматривать модель, в которой используется технология AJAX, то видно, что весь обмен данными осуществляется через обработчика AJAX, который занимается отправкой и приемом данных по протоколу HTTP(S). Преимущества AJAX:

1) Экономия трафика;

2) Использование AJAX позволяет значительно сократить трафик при работе с веб-приложением благодаря тому, что часто вместо загрузки всей страницы достаточно загрузить только изменившуюся часть, как правило, довольно небольшую;

3) Уменьшение нагрузки на сервер;

4) AJAX позволяет несколько снизить нагрузку на сервер. К примеру, на странице работы с почтой, когда вы отмечаете прочитанные письма, серверу достаточно внести изменения в базу данных и отправить клиентскому скрипту сообщение об успешном выполнении операции без необходимости повторно создавать страницу и передавать её клиенту;

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

Недостатки AJAX:

1) Отсутствие интеграции со стандартными инструментами браузера;

2) Динамически создаваемые страницы не регистрируются браузером в истории посещения страниц, поэтому не работает кнопка "Назад", предоставляющая пользователям возможность вернуться к просмотренным ранее страницам;

3) Невозможно сохранить закладку на желаемый материал;

4) Динамически загружаемое содержимое недоступно поисковикам. Поисковые машины не могут выполнять JavaScript;

5) Старые методы учёта статистики сайтов становятся неактуальными.

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

В разрабатываемой ИС технология AJAX будет использоваться для взаимодействия языка PHP с языком JavaScript, а именно там, где требуется в зависимости от результатов поиска выводить данные в поля формы без обновления страницы, формировать динамически таблицы с данными и осуществлять различные действия с базой данных. Рассмотрим принцип работы технологии AJAX на примере, который отображен в листинге 6.

function ajax_test() {

var a = $("#test_id").val();

$.ajax({

url: 'handler_test.php',

type: 'POST',

data: 'jTest='+$.toJSON(a),

success: function(data)

{

alert(data);

var result = $.parseJSON(data);

}

});

}

Листинг 6 - Пример работы технологии AJAX

Стоит обратить внимание на то, что технология AJAX - это технология языка JavaScript, и у данной технологии несколько различных модификаций запуска. В нашем случае мы рассматриваем запуск AJAX с помощью библиотеки JavaScript - jQuery, поэтому вышеприведенная функция может находиться в любом файле с расширением .js, но подключаться на веб-страницу только после подключения библиотеки jQuery. При передаче данных из PHP в JavaScript и наоборот используется формат данных JSON. JSON - текстовый формат обмена данными, основанный на JavaScript и обычно используемый именно с этим языком. Как и многие другие текстовые форматы, JSON легко читается людьми. Несмотря на происхождение от JavaScript, формат считается языконезависимым и может использоваться практически с любым языком программирования. Для многих языков существует готовый код для создания и обработки данных в формате JSON.. Если говорить о веб-приложениях, в таком ключе он уместен в задачах обмена данными как между браузером и сервером (AJAX), так и между самими серверами (программные HTTP-интерфейсы). Формат JSON также хорошо подходит для хранения сложных динамических структур в реляционных базах данных или файловом кэше. В PHP, начиная с версии 5.2.0, поддержка JSON включена в ядро в виде функций json_decode() и json_encode(), которые сами преобразуют типы данных JSON в соответствующие типы PHP и наоборот.

Как только осуществляется запуск тестовой функции ajax_text(), переменной a присваивается значение элемента на странице с идентификатором test_id. Затем осуществляется запуск функции .ajax, которая непосредственно отвечает за передачу данных в PHP. Аргумент функции представляет собой ассоциативный массив, поля которого являются настройками. В нашем случае поле url определяет, в какой php-файл осуществится передача данных, type определяет метод передачи данных, GET или POST, data определяет какие данные будут переданы в php-файл и осуществляет их кодирование в формат JSON, success отвечает за удачное получение данных из php-файла. На самом деле настроек больше, но нам потребуются только некоторые из них. Приведем содержание тестового файла handler_test.php, в который передаются и из которого назад возвращаются данные (листинг 7).

if (isset($_POST['jTest']))

{

$test = json_decode(stripslashes($_POST["jTest"]));

echo json_encode($test);

exit;

}

Листинг 7 - Содержание файла-обработчика на языке PHP

После того, как данные переданы из JavaScript в php-файл, осуществляется их декодирование из формата JSON и присваивание переменной $test. Вообще, теперь с этими данными можно производить любые операции, допустим, осуществлять поиск в базе данной, удалять данные из нее же. Но в нашем примере полученные данные вернутся назад в JavaScript с помощью php-функции их кодирования в форма JSON json_encode().Получив их назад, в функции function() осуществляется их вывод с помощью функции alert() или декодирование из формата JSON с помощью функции $.parseJSON(). Как было сказано ранее, в ИС использование такой технологии обусловлено тем, что все "зациклено" на базе данной, и поэтому очень удобно осуществлять взаимодействие с ней через технологию AJAX, так как это позволяет избежать проблем с передачей полученных данных из БД в формы, которые часто представляют собой набор данных. Проблемы могут возникать, если использовать адресную строку браузера для передачи таких наборов переменных, что также не очень и удобно. Также данная технология позволяет разделить код, так как обработчик взаимодействий с БД находится в одном файла, а передатчик наборов данных в обработчик находится в другом файле.

После рассмотрения стольких вариантов использования языка JavaScript и его библиотеки jQuery и технологии AJAX, следует рассмотреть использование языка PHP как основного языка разрабатываемой ИС. Приведет все варианты использования PHP в проекте:

1) Подключение внешних HTML- и PHP-файлов;

2) Работа с переменными, переданных с помощью методов GET и POST, которые содержатся в массивах $_GET и $_POST соответственно, а также с суперглобальным массивом переменных $_SESSION;

3) Работа с базой данных посредством подключенного php-класса;

4) Переход с одной страницы на другую с помощью функции header("Location:… "), а также передача в другие php-страницы переменных с помощью метода GET;

5) Определение кодировки отображаемых страниц с помощью функции header('Content-Type:…);

6) Вся работа с базой данных: поиск информации, ее извлечение, удаление, модифицирование;

7) Кодирование/декодировании данных в/из формат/a JSON;

8) Обработка всех нажатий кнопок формы, обработка данных введенных в поля формы;

9) Вывод данных в поля форм.

4. Технологии использования системы, демонстрация работы системы

1. Главная страница сайта. Все пользователи могут просматривать новости и полезную информацию касающуюся МВД.

Рисунок 3

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

Рисунок 4

3. Вкладка "Информационный отдел" (вкладка автохозяйство тоже самое). Здесь пользователь вводит необходимую информацию и описывает суть проблемы. Так как в УМВД России 8 отделов полиции, и они разбросаны по всему району, очень сложно поддерживать стабильную работоспособность орг техники, разъезжая по отделам и устранять все неисправности (значительная потеря рабочего времени, рапорта на начальника о выходе из рабочего состояния орг техники). Что бы сэкономить рабочее время, документооборот и быстро решить возникшие проблемы в отделах, была создана электронная база заявок, создаваемые пользователями.

Рисунок 5

Рисунок 6

4. Зайдя под администратором первый делом появляется окно с количеством новых заявок, нажав на "перейти к заявкам" осуществляется переход на базу заявок.

Рисунок 7

5. База "заявки информационного отдела". Здесь показаны все заявки:

-новые заявки;

-выполненные заявки;

- заявки которые находятся в работе;

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

Рисунок 8

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

Рисунок 9

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

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

Рисунок 10

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

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

Рисунок 11

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

Рисунок 12

10. По поиску мы находим пользователя, которому мы хотим выдать монитор, ставим галочку на ID, пишем какая работа проделана, вводим цифру сколько выдать шт. и нажимаем выполнить. Автоматически заносится информация в "историю проделанных работ" данного пользователя см. п. 8. И выводится на печать накладная на внутреннее перемещение объектов основных средств.


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

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