Скачать 218.95 Kb.
|
![]() ![]() Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования Томский государственный университет систем управления и радиоэлектроники (ТУСУР) Кафедра компьютерных систем в управлении и проектировании (КСУП) ПОЯСНИТЕЛЬНАЯ ЗАПИСКА на курсовой проект по дисциплине Разработка САПР Тема: «Веб сервис для конвертации физических величин» Выполнил: студент гр. 588-2 ____________ Крылов О.А. « » 2012 г. Проверил: аспирант каф. КСУП ____________ Калентьев А.А. «______» _____________ 2012 г. Томск 2012 РЕФЕРАТ Курсовой проект содержит 31 стр., 9 рис., 9 таблиц. JAVASCRIPT, ВЕБ, CSS, HTML, PHP, USE-CASE, СЕРВЕР, КЛИЕНТ. Цель проекта – реализовать веб-сервис, позволяющий выполнять конвертацию физических величин и имеющий интуитивно понятный интерфейс. В процессе проекта были изучены современные технологии, применяемые в веб-разработке, а так же основные алгоритмы конвертации. Результатом проекта является веб-приложение, позволяющее выполнять конвертацию физических величин на скриптовом языке программирования PHP. Пояснительная записка выполнена в текстовом редакторе Microsoft Word 2010. Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР) Кафедра компьютерных систем в управлении и проектировании (КСУП) Утверждаю Зав. кафедрой КСУП _________Шурыгин Ю.А. «____»____________2012 ЗАДАНИЕ на курсовой проект по дисциплине «Разработка САПР» Студенту гр. 588-2 Крылову Олегу Анатольевичу Тема: Веб сервис для конвертации физических величин
Реализовать веб сервис выполняющий конвертацию физических величин.
Веб сервис должен обеспечивать следующую функциональность:
Конвертируемые величины могут применяться для проектирования в радиотехнике, антенной технике, в системах передачи информации, в оптике, акустике и др.
6.1 Требования к программному обеспечению серверной части Для функционирования веб сервиса необходимо следующее программное обеспечение:
Серверная часть должна быть реализована на языке PHP 5 в среде NetBeans. 6.2 Требования к клиентскому программному обеспечению Веб сервис должен быть доступен для полнофункционального просмотра с помощью следующих браузеров:
Клиентская часть должна быть реализована на языке HTML, JavaScript и CSS.
Руководитель: аспирант каф. КСУП Калентьев А.А._____________________ Задание принял к исполнению: Крылов О.А.______________________ Изм. Лист № докум. Подпись Датааа Лист 6 ФВС КР 588.002.000 ПЗ ПЗ Разраб. Крылов О.А. Провер Калентьев А.А. Н. Контр. Утверд. Веб сервис для конвертации физических величин Лит. Листов 31 ФВС ТУСУР гр.588 –2 Масса Масштаб Пояснительная записка к курсовому проекту по дисциплине РСАПР 1 : 1 Содержание Введение 7 2 Постановка задач 8 3 Анализ предметной области 9 3.1 Конвертер физических величин 9 3.2 dBm 9 3.3 dBv 9 3.3 VSWR 9 4 Обзор аналогов 11 5 Сравнение программных решений для реализации задачи 12 6 Выбор среды разработки 13 7 Описание реализации 14 7.1 Реализация серверной части 14 7.2 Реализация клиентской части 15 7.3 Проектирование интерфейса пользователя 17 7.4 Описание функций 17 7.5 Диаграмма компонентов 20 7.6 Диаграмма использования 21 7.7 Диаграмма последовательности для прецедента «Выполнить конвертацию» 22 8 Руководство пользователя 23 9 Тестирование веб-приложения 26 Заключение 30 Список использованных источников 31 ВведениеВ современном мире люди часто пользуются цифровой техникой. Каждый день миллионы людей пользуются интернетом, заходят на все возможное сайты и.т.д. Одним из видов интернет ресурсов является веб сервис. Веб сервис по своей сути обычный веб-сайт, но решающую, какую то конкретную задачу. К примеру, если Вам необходимо обработать фотографию, то существует огромное количество сервисов обработки изображений, обмена видео и фотографиями и многие другие. На сегодняшний день в мире насчитывается великое множество программ для проектирования всевозможных электронных устройств и деталей таких как Auto CAD, AutoDesk, КОМПАС – 3D и.т.д. Целью создания таких программ, является сокращение времени проектирования, а так же максимально автоматизировать процесс проектирования. Так как до создания систем автоматизированного проектирования (САПР), процесс проектирования занимал очень длительное время, что свою очередь сказывалось на цене проектируемого изделия. Таким образом, целью данного проекта является создание веб-сервиса для конвертации физических величин, которые используются для проектирования электронных устройств. Таким образом разработанный веб-сервис сократит общее время проектирования, так как время является одним из важных параметров в таких процессах. Но, нужно разработать такой сервис, что бы пользователь чувствовал себя максимально комфортно, зайдя на ресурс. Добиться этого можно путем применения современных технологий в разработке веб-приложений, использование которых сделает систему максимально удобной, производительной и внешне привлекательной. 2 Постановка задачДля выполнения целей, поставленных в техническом задании данного проекта необходимо выполнить:
Для выполнения поставленных задач необходимо определить инструменты и технологию реализации. Процесс проектирования может быть сведён к набору последовательных действий:
3 Анализ предметной области3.1 Конвертер физических величинАнализ предметной области следует начать с рассмотрения конвертеров. Конвертер величин – это устройство для перевода физических величин в разные системы счисления. В соответствии с нашим техническим заданием необходимо реализовать следующие конвертации:
Конвертируемые величины могут применяться для проектирования в радиотехнике, антенной технике, в системах передачи информации, в оптике, акустике и др. 3.2 dBmdBm (русское дБм)[2] — опорный уровень — это мощность в 1 мВт. Мощность обычно определяется на номинальной нагрузке (для профессиональной техники — обычно 10 кОм для частот менее 10 МГц, для радиочастотной техники — 50 Ом или 75 Ом). Например, «выходная мощность усилительного каскада составляет 13 дБм» (то есть мощность, выделяющаяся на номинальной для этого усилительного каскада нагрузке, составляет 20 мВт). 3.3 dBvdBV (русское дБВ) — опорное напряжение 1 В на номинальной нагрузке (для бытовой техники — обычно 47 кОм); например, стандартизованный уровень сигнала для бытового аудио оборудования составляет −10 дБВ, то есть 0,316 В на нагрузке 47 кОм. 3.3 VSWRКоэффициент стоячей волны — Отношение наибольшего значения амплитуды напряженности электрического или магнитного поля стоячей волны в линии передачи к наименьшему. Характеризует степень согласования антенны и фидера (также говорят о согласовании выхода передатчика и фидера) и является частотно зависимой величиной. Обратная величина КСВ называется КБВ — коэффициент бегущей волны. Следует различать величины КСВ и КСВН (коэффициент стоячей волны по напряжению): первая высчитывается по мощности, вторая - по амплитуде напряжения и на практике используется чаще; в общем случае эти понятия эквивалентны. 4 Обзор аналоговДо начала реализации необходимо выполнить обзор аналогов. Среди аналогов рассматривается такой сервис как www.convertworld.com[1]. Данный сервис позволяет конвертировать физические величины. Сделав краткий анализ сервиса, было выяснено, что данный сервис перегружен ненужными для нас конвертерами, такими как: конвертация размеров одежды, химический конвертер и т.д. Так же было выяснено, что система реализована на скриптовом языке JavaScript, что может повлечь за собой некоторые проблемы корректной работы, так как в таких браузерах как Internet Explorer версии 7.0 и выше, JavaScript по умолчанию отключен, что приведет к отказу работы системы. Данный факт очень критичен в разработке таких сервисов, так как основными пользователями являются обычные пользователи, которые не имеют никакой информации, о том, как включить JavaScript в браузере. И так приняв во внимание все слабые стороны аналогичных сервисов, мы пришли к выводу разработать веб-приложение для конвертации физических величин используемых при разработке электронных устройств. При этом разработать интерфейс, который будет интуитивно понятным и не нагруженным. 5 Сравнение программных решений для реализации задачиДля достижения цели данного проекта существует три решения. Первое решение состоит в том, чтобы использовать уже готовую прикладную программу, которая будет рассчитывать параметры, передавая результаты в веб сервис, а веб-сервис в свою очередь будет передавать уже рассчитанные параметры пользователю. Второе решение состоит в том, чтобы использовать интерфейс прикладного программирования (API- Application Program Interface) аналогичных приложений что, казалось бы, сократит время разработки. И третье решение состоит в том, чтобы самостоятельно разработать платформу для реализации нашей задачи. Второе решение является самым оптимальным, так как нет необходимости использовать специфическую библиотеку для достижения целей проекта. Гораздо эффективнее использовать уже готовое API для реализации приложения, однако в связи с тем, что последующим этапом нашей работы является интеграция в уже рабочую систему(сайт), поэтому использование сторонних библиотек не желательно, так как это может нарушить логику системы, в связи с этим было решено создать собственное решение с использованием скриптового языка программирования PHP[3]. 6 Выбор среды разработкиДля реализации веб-приложения необходимо выбрать среду разработки. В результате краткого анализа были выбраны несколько программных продуктов для разработки веб-приложений такие, как Eclipse, PhpStorm и NetBeans. Основными критериями при выборе среды разработки являются функциональность, отсутствие платы за использование. На основе данных критериев была выбрана среда разработки Eclipse[4]. Eclipse — свободная интегрированная среда разработки кроссплатформенных приложений. Eclipse в первую очередь служит платформой для разработки расширений, чем он и завоевал популярность: любой разработчик может расширить Eclipse своими модулями. Уже существуют Java Development Tools (JDT), C/C++ Development Tools (CDT), разрабатываемые инженерами QNX совместно с IBM, и средства для языков FORTRAN, PHP и пр. от различных разработчиков. Множество расширений дополняет среду Eclipse менеджерами для работы с базами данных, серверами приложений и др. Eclipse написана на Java, потому является платформо-независимым продуктом, за исключением библиотеки SWT. 7 Описание реализацииВ данной главе рассмотрим этапы разработки программного продукта. На основе анализа поставленных задач, было решено разрабатывать программный продукт на основе архитектуры клиент-сервер. Таким образом, необходимо разработать клиентскую часть, серверную часть и механизм взаимодействия клиентской и серверной части. Для начала рассмотрим архитектуру клиент-сервер. 7.1 Реализация серверной частиДля обработки сервером необходимых данных были написаны необходимые функции для конвертации величин. Для математических расчетов использовалась библиотека PhpMath [5]. Сервер получает данные от «клиента» и при помощи написанных алгоритмов, производит конвертацию, отправляя назад обработанные данные «клиенту». Рассмотрим вышеперечисленную библиотеку подробнее в следующем пункте. Библиотека PhpMath Библиотека PhpMath – это набор функций позволяющих вычислять сложные математические вычисления. Данные функции работают с числами в диапазонах типов integer и float. Если необходимо работать с большими числами, необходимо обратиться к разделу математических функций произвольной точности. Далее приведем список основных функций:
В качестве примера использования 7.2 Реализация клиентской частиКлиентская часть представляет собой HTML[6] форму ввода данных и JavaScript файлы, необходимые для валидации полей ввода. Для этого используется JavaScript библиотека jQuery[7]. JQuery — библиотека JavaScript, фокусирующаяся на взаимодействии JavaScript и HTML. Библиотека jQuery помогает легко получать доступ к любому элементу DOM (Document Object Model), обращаться к атрибутам и содержимому элементов DOM, манипулировать ими. Для валидации полей ввода параметров ФНЧ, был применен jQuery плагин jQuery.Validity, который позволяет производить валадацию текстовых полей путем применения соответствующего правила. Рассмотрим на примере применение правил валидации. $("form.form").validity(function() { $("input.input") .require() .match("number", "Введите числа"); }) $("form.form2").validity(function() { $("input.input2") .require() .match("number", "Введите числа"); }); Правило «require()» означает, что выбранное в селекторе текстовое поле является обязательным к заполнению, в противном случае отправка данных с HTML формы не будет произведена. Правило «match("number")» означает, что в выбранное в селекторе текстовое поле можно вводить только цифры, любые остальные символы будут игнорироваться, а отправка формы не будет производится. 7.3 Проектирование интерфейса пользователяВ процессе проектирования был разработан пользовательский интерфейс компонента, представляющий собой HTML форму, показанный на рисунке 7.1. ![]() Рисунок 7.1 — Пользовательский интерфейс Интерфейс спроектирован таким образом, чтобы пользователю было комфортно и интуитивно понятно работать с данным компонентом. Таким образом, чтобы обеспечить максимальную степень удобства для пользователя, было решено создать форму с минимальным количеством элементов необходимым для работы. Для обеспечения ввода корректных данных на форму, каждое поле было ограничено четырехзначным значением, а так же в каждое поле возможно ввести только цифры. В случае ввода букв в поле ввода одного из параметров пользователю выведется сообщение о не корректном вводе. 7.4 Описание функцийДля конвертации требуемых параметров ФНЧ необходимо реализовать следующие функции WattToDBM (Watt), VoltToDBV (Volt), RefCoToVSWR (RC), VSWRToRL (vswr), WLToFreq(WL). Рассмотрим данные функции подробнее. Функция WattToDBM () – функция для конвертации из Ватт в дБм. Входные данные описаны в таблице 7.1. Выходные данные – число, содержащее в себе количество дБм. Таблица 7.1 – Входные данные функции WattToDBM ()
Функция VoltToDBV () – функция для конвертации из Вольт в дБВ. Входные данные описаны в таблице 7.2. Выходные данные – число, содержащее в себе количество дБВ. Таблица 7.2 – Входные данные функции VoltToDBV ()
Функция RefCoToVSWR () – функция для конвертации коэффициента отражения в КСВН. Входные данные описаны в таблице 7.3. Выходные данные – число, содержащее в себе значение КСВН. Таблица 7.3 – Входные данные функции RefCoToVSWR ()
Функция VSWRToRL () – рассчитывает возвратные потери от КСВН. Входные данные описаны в таблице 7.4. Выходные данные – число, характеризующее возвратные потери. Таблица 7.4 – Входные данные функции VSWRToRL ()
Функция WLToFreq () – рассчитывает частоту от длины волны. Входные данные описаны в таблице 7.5. Выходные данные – число, характеризующее частоту. Таблица 7.5 – Входные данные функции WLToFreq ()
7.5 Диаграмма компонентовДиаграмма компонентов сервера представлена на рисунке 7.2. ![]() Рисунок 7.2 — Диаграмма компонентов сервера Диаграмма компонентов клиентской части представлена на рисунке 7.3. ![]() Рисунок 7.3 — Диаграмма компонентов клиентской части 7.6 Диаграмма использованияДиаграмма использования сервиса представлена на рисунке 7.4. Она показывает возможные действия пользователя в системе. ![]() Рисунок 7.4 — Диаграмма вариантов использования сервиса 7.7 Диаграмма последовательности для прецедента «Выполнить конвертацию»Диаграмма последовательности для прецедента «Выполнить конвертацию», показывает последовательность действий для конвертации величин в системе, показанная на рисунке 7.5. ![]() Рисунок 7.5 — Диаграмма последовательности для прецедента «Выполнить конвертацию» 8 Руководство пользователяДля запуска веб-сервиса, необходимо в адресной строке интернет-браузера набрать следующий адрес localhost/. После чего появится начальная страница веб-сервис. Начальная страница веб-сервиса представлена на рисунке 8.1. ![]() Рисунок 8.1 — Главная страница сервиса Основной страницей системы является страница «Конвертеры». Для того чтобы перейти на данную часть системы, необходимо на главной странице нажать на ссылку «Конвертеры», после чего появится страница, представленная на рисунке 8.2, на которой пользователь может произвести конвертацию, необходимых ему физических величин. ![]() Рисунок 8.2 — Страница «Конвертеры» Для того, чтобы произвести расчёт в системе, пользователю необходимо выбрать нужный конвертер и ввести все необходимые данные в поля формы. В случае, если пользователь по какой либо причине не заполнил одно или несколько полей формы, то на экране отобразится рамка вокруг формы, представленная на рисунке 8.3, которую необходимо заполнить. Таким образом, вычисления не будут производиться, пока пользователь не заполнит все поля формы. ![]() Рисунок 8.3 — Уведомление об ошибке при не полном заполнении полей В случае если все поля заполнены верно, то система выведет результат расчёта в окно для ответа. После чего пользователь может переписать результаты расчёта. Результат работы конвертера представлен на рисунке 8.4 ![]() Рисунок 8.4 — Результат работы сервиса 9 Тестирование веб-приложенияВеб-приложения в первую очередь характеризуются тем, что их пользовательский интерфейс имеет стандартизированную архитектуру, в которой: 1. для взаимодействия с пользователем используется веб-браузер; 2. взаимодействие с пользователем четко разделяется на этапы, в течение которых браузер работает с одним описанием интерфейса; 3. эти этапы разделяются однозначно выделяемыми обращениями от браузера к приложению; 4. для описания интерфейса применяется стандартное представление (HTML); 5. коммуникации между браузером и приложением осуществляются по стандартному протоколу (HTTP). Поэтому тестирование веб-приложения в первую очередь проводится в различных интернет-браузерах. Тестирование веб-приложения проводилось в: Internet Explorer 10, Mozilla Firefox 12.0, Google Chrome 23.0.1271.91. Ниже представлена сводная таблица результатов: Таблица 9.1 – Результаты тестирования в различных браузерах
В результате тестирования приложения, было выяснено, что в интернет-браузере Internet Explorer 10, было нарушено отображение элементов управления. Для решения данной проблемы, было необходимо отредактировать параметры элементов, чье отображение было нарушено, после чего внешний вид элементов, был корректно отображен в интернет-браузере Internet Explorer 10. Следующим этапом тестирования является проверка алгоритмов системы. Для этого в систему будут вводиться различные данные. Для этого необходимо сформировать список кейсов как положительных, так и отрицательных. Таблица 9.2 – Результаты тестирования алгоритмов системы
В результате тестирования приложения, было выяснено, что максимальное число, которое может представить тип float в php равно 1.8* ![]() Очередным этапом тестирования является проверка работоспособности системы. Сравнение будет проводиться с программным продуктом «RF Calc» от компании «ARK RF systems»[8]. Для этого в систему будут вводиться различные данные и сравниваться с результатом, полученным в «RF Calc». Результаты тестирования представлены в таблице 9.3. Таблица 9.3 – Результаты тестирования работы системы
Заключительным этапом тестирования является нагрузочное тестирование, которое заключается в определении или сборе показателей производительности и времени отклика системы в ответ на внешний запрос с целью установления соответствия требованиям, предъявляемым к данной системе. Полученная информация представлена в таблице 9.4. Таблица 9.4 – Результаты нагрузочного тестирования
В результате нагрузочного тестирования было выявлено, что при количестве запросов больше 800 время отклика превышало более 60 секунд. Причиной такой реакции системы на такое количество запросов является низкая производительность сервера. Тестирование проводилось на сервере следующей конфигурации:
ЗаключениеВ рамках курсового проекта был разработан программный продукт, представляющий собой веб-сервис для конвертации физических величин. В результате реализации данного проекта, было применено множество современных технологий, широко применяющихся в разработке веб-приложений на сегодняшний день. Конечный результат приложения полностью удовлетворяет всем требованиям технического задания. Данное приложение является лишь начальным этапом в освоении разработки веб-приложений. В дальнейшем планируется более углубленное изучение современных веб-технологий и дальнейшее развитие программного продукта, посредством следующих модификаций и улучшений:
Список использованных источников
http://ru.wikipedia.org/wiki/Децибел (Дата обращения: 12.10.2012)
http://php.net (Дата обращения: 10.11.2012)
http://ru.wikipedia.org/wiki/Eclipse_(среда_разработки) (Дата обращения: 2.11.2012)
(Дата обращения: 22.10.2012)
http://ru.wikipedia.org/wiki/HTML (Дата обращения: 12.10.2012)
|
![]() | Пояснительная записка к курсовой работе по дисциплине «Разработка... Курсовой проект содержит: страниц –20, источников – 5, рисунков – 6, таблиц – 2 | ![]() | Пояснительная записка к курсовой работе по дисциплине «Разработка... Курсовой проект содержит: страниц –22, источников – 5, рисунков – 6, таблиц – 2 |
![]() | Пояснительная записка к курсовому проекту по дисциплине «Разработка... Курсовой проект содержит: страниц –19, источников – 5, рисунков – 6, таблиц – 2 | ![]() | Пояснительная записка на курсовую работу по дисциплине Разработка... Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования |
![]() | Пояснительная записка на курсовой проект по дисциплине «Разработка... Целью данной работы является разработка программы для автоматизации проектирования систем молниезащиты на базе сапр компас 3D, с... | ![]() | Пояснительная записка к курсовому проекту по дисциплине «Разработка... Курсовой проект содержит: страниц – 22, источников – 8, рисунков – 9, таблиц – 1 |
![]() | Пояснительная записка к курсовой работе по дисциплине «Разработка... | ![]() | Пояснительная записка к курсовой работе по дисциплине «Разработка... Курсовая работа содержит: страниц – 20, источников – 8, рисунков – 7, таблиц – 2 |
![]() | Пояснительная записка к курсовому проекту по дисциплине: «Разработка сапр» Целью данной работы является разработка и реализация модуля к сапр «Зубчатая передача с пересекающимися осями колес» на базе системы... | ![]() | Пояснительная записка к курсовому проекту по дисциплине «Разработка сапр» Целью работы является разработка и реализация библиотеки элементов «Отвертка» на базе системы компас 3D, с использованием методов... |
![]() | Курсовой проект по учебной дисциплине ... | ![]() | Пояснительная записка к курсовой работе по дисциплине «Методика профессионального обучения» Бланк задание Вы получаете у преподавателя. Образец бланка задания представлен в приложении методических указаний к выполнению курсовой... |
![]() | Курсовой проект на тему: Проект производственно-технической базы... Курсовой проект содержит три листа графической части и пояснительную записку на 70 стр., 13 таблиц, 10 использованных источников | ![]() | Курсовой проект по дисциплине: Методы принятия управленческого решения... |
![]() | Презентация «Разработка веб-приложений» В ходе работы, в течении данного семестра мы изучали технологии веб-программирования и верстки позволяющие делать стабильные, удобные... | ![]() | Курсовой проект по дисциплине: Методы принятия управленческого решения... |