Диплом: Разработка web-интерфейса для систем программирования и CASE-инструментов на примере сервера уведомлений

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
64
Управляющие элементы – это элементы интерфейса, с помощью которых
происходит взаимодействие с веб-интерфейсом. Как правило, это HTML-ссылки или
кнопки отправки форм. Активация любого нажатия на управляющий элемент в веб-
интерфейсе запускает соответствующий JavaScript код.
Для основного вида компании определены следующие управляющие
элементы:
добавить компанию;
настроить компанию;
добавить тему;
редактировать тему;
добавить сообщение;
редактировать сообщение;
статистика по компании;
статистика по теме;
кнопки отправки форм.
Обработка управляющего элемента требует отправки AJAX-запроса и
внесение изменений в содержимое страницы согласно полученному ответу на данный
запрос.
Редактирования текстовой информации
Для повышения скорости работы с веб-интерфейсом предлагается
использовать клавиши быстрого доступа. Клавиши быстрого доступа дублируют
функции веб-интерфейса.
Ниже представлен список клавиш быстрого доступа, используемый при
проектировании веб-интефейса:
Сtrl + Shift + С – дублирует функцию «Добавить компанию»;
Ctrl + Shift + T – дублирует функцию «Добавить темы»;
Ctrl + Shift + E – дублирует функцию «Настроить компании»;
Ctrl + Shift + S – дублирует функцию «Статистика по компании».
Кроме клавиш быстрого доступа, для редактирования текстовой информации
применяется шаблон проектирования (In-Page Editing) [34]. Данный шаблон
применяется для повышения скорости редактирования текстовой информации прямо
65
на интернет странице. Редактирование текста применимо для редактирования
названия заказчика, его описания, названия тем и названия сообщений.
При двойном нажатии на текстовую строку срабатывает JavaScript-код,
переводящий строку в режим редактирования. То есть, строка заменяется полем для
ввода, для заполнения редактируемым текстом. Ниже этого поля показываются две
кнопки: «Сохранить» и «Отменить». При активации на кнопку «Сохранить»
происходит сохранение текста (посылается AJAX-запрос на редактирование
информации), а при нажатии на «Отмена» - отмена редактирования.
Механизм обработки запросов от пользователя
Веб-интерфейс для сервера уведомлений в качестве контроллера использует
набор определенных функций. Каждая функция определяется уникальным
идентификатором URI. Входные данные функция получает по HTTP-протоколу.
Входные данные для каждой функции передаются с помощью метода GET
или POST. Таким образом, на языке Java данный набор функций может быть
реализован с помощью интерфейса Servlets (servltes). [37]
Взаимодействие представления и контроллера осуществляется с помощью
механизма асинхронных запросов (AJAX). В качестве формата обмена данных в
AJAX применяется формат JSON. Ответ контроллера состоит из двух переменных:
successкод результата выполнения операции и HTMLHTML разметка. Код
результата выполнения операции содержит значение 0 – если операция успешно
выполнена и код ошибки в противном случае. Если в ходе выполнения операции
произошла ошибка, в переменную HTML записывается сообщение об этой ошибке.
Например, {―success‖: 1; ―HTML‖:‖ Неверный формат запроса.‖}. Все необходимые
для правильной работы функции параметры проверяются (проходят валидацию).
Например, проверяется наличие всех обязательных параметров и правильность их
заполнения пользователем. При неопределении ошибок функция, основываясь на
определенных параметрах, формирует ответ.
Ниже представлены основные функции контроллера с описанием параметров.
Перед названием функции стоит метод, указываемый в HTTP-пакете.
GET company – функция получения компаний конкретного пользователя.
Принимает параметры:
66
user_id* – уникальный номер пользователя, выданный при успешной
авторизации.
POST company – функция для добавления, редактирования. Принимает
параметры:
user_id* – уникальный номер пользователя, выданный при успешной
авторизации;
company_id – уникальный номер компании в базе;
company_name* – имя компании;
company_descr – описание компании
company_image – логотип компании;
company_person – лицо, отвечающее за данную компанию (служебная
информация);
Company_phone– контактный телефон.
В зависимости от установленного метода протокола HTTP (GET или POST)
контроллер формирует различный ответ. Если установлен метод GET, функция
формирует HTML код для компаний и тем данного пользователя. Если РOST, то, в
случае успешного выполнения запроса, в переменную HTML запишется сообщение
«Компания успешно добавлена». Если заполнен параметр company_id, происходит
редактирование компании. Однако если компании с таким значением company_id не
существует, то формируется сообщение об ошибке.
GET theme – функция получения тем для данной компании. Принимает
параметры:
user_id* – уникальный номер пользователя, выданный при успешной
авторизации;
theme_id* – уникальный номер темы в базе. РОST theme – функция для
добавления, редактирования тем. Принимает параметры: • user_id* – уникальный
номер пользователя, выданный при успешной авторизации;
theme_id* – уникальный номер темы в базе;
theme_name* – имя темы. GET message – функция для получения
сообщений для данной темы. Принимает параметры:
67
user_id* – уникальный номер пользователя, выданный при успешной
авторизации;
theme_id – уникальный номер темы в базе данных, которой принадлежит
сообщение. POST message функция для добавления, редактирования сообщения.
Принимает параметры:
user_id* – уникальный номер пользователя, выданный при успешной
авторизации;
message_id* – уникальный номер сообщения в базе данных, которой
принадлежит сообщение;
message_name* – имя компании;
message_text* –текст сообщения.
Функция действует по тому же принципу, что и функция company.
GET stats/ company – функция для получения статистики по компании.
Принимает параметры:
user_id* – уникальный номер пользователя, выданный при успешной
авторизации;
company_id* – уникальный номер компании в базе.
GET stats/theme – функция для получения статистики по теме. Принимает
параметры:
user_id* – уникальный номер пользователя, выданный при успешной
авторизации;
theme_id* – уникальный номер темы в базе.
Функция company и message использует метод в НТТР-пакете как один из
параметров запроса. В остальных функциях метод HTTP-запроса не используется и
может быть как POST, так и GET.
68
III. Обоснование экономической эффективности проекта
3.1 Выбор и обоснование методики расчета экономической
эффективности
При определении экономического обоснования эффективности разработки
веб-интерфейса для сервера уведомлений необходимо учитывать, что экономическая
эффективность имеет косвенный характер, и оценить размер экономического эффекта
с финансовой точки зрения достаточно сложно.
В качестве совокупного структурного эффекта, достижение которого
ожидается от разработки веб-интерфейса для сервера уведомлений, рассматривается:
- Повышение качества исполнения процесса оповещения;
- Открытость результатов исполнения процесса оповещения;
- В результате внедрения разработки веб-интерфейса для сервера уведомлений
произойдѐт экономия рабочего времени, сокращение процессов обмена данными.
Для определения себестоимости модернизации Системы необходимо
провести калькуляцию затрат. Себестоимость определяется на основе расчета:
- основной заработной платы;
- дополнительной заработной платы (10% от основной заработной платы);
- отчислений (30% от фонда заработной платы);
- амортизации;
- накладных расходов (70% от основной заработной платы).
В накладные расходы входят: расходы на электроэнергию, водоснабжение,
связь, утилизацию отходов, охрану помещения.
3.2 Расчет показателей экономической эффективности проекта
При разработке веб-интерфейса для сервера уведомлений необходимо
определить трудоемкость, численность и должностной состав исполнителей.
Определим состав проектной группы, участвующей в проектировании,
разработке, внедрении и сопровождении модернизируемой Системы:
- руководитель проекта (ведущий инженер);
69
- постановщик задач (инженер 2 категории);
- методолог (инженер 1 категории);
- программист (инженер 1 категории);
- тестировщик (инженер 2 категории);
- инженер по внедрению (инженер 1 категории);
- технический писатель (инженер).
В таблице 3.1 приведено распределение месячной заработной платы
исполнителей по должностям.
Таблица 3.1
Распределение месячной заработной платы исполнителей
Наименование
Оклад, р.
Ведущий инженер
45 400
Инженер 1 категории
32 500
Инженер 2 категории
20 200
Инженер
12 500
Определим затраты времени и размер оплаты труда работников по стадиям
разработки проекта, представив расчеты в таблице 3.2.
Таблица 3.2
Затраты на оплату труда участников модернизации и внедрения ПМ
Стадия
Участник
Количество
часов
работы на
этапе
Ставка
оплаты
труда
в час,
р.
Сумма, р.
Длительность
этапа, дней
Анализ
предметной
области,
определение
требований к
модернизируемой
Системе
Руководитель
проекта
40
286,00
11 440,00
20
Методолог
80
203,00
16 240,00
Постановщик
задач
40
126,00
5 040,00
Проектирование
Руководитель
проекта
40
286,00
11 440,00
15
70
Продолжение таблицы 3.2.
Разработка
Постановщик
задач
80
126,00
10 080,00
Разработка и
тестирование
Руководитель
проекта
40
286,00
11 440,00
45
Программист
120
203,00
24 360,00
Тестировщик
120
126,00
15 120,00
Технический
писатель
80
78,00
6 240,00
Внедрение и ввод
в эксплуатацию
Руководитель
проекта
40
286,00
11 440,00
20
Инженер по
внедрению
120
203,00
24 360,00
Итого
-
800
-
147
200,00
100
Таким образом, основная заработная плата составляет 147 200,00 р.
Рассчитаем дополнительную заработную плату:
ДЗП = (147 200,00*10)/100 = 14 720,00 р.
Рассчитаем объем отчислений от фонда заработной платы:
Отчисления = (147 200,00 + 14 720,00)*0,30 = 48 576,00 р.
Рассчитаем накладные расходы:
НР = 147 200,00*0,7 = 103 040,00 р.
Для разработки процесса потребуется компьютер, сервер базы данных, сервер
приложений и принтер, которые имеются в наличии у организации.
Расчет амортизации представлен в таблице 2.8.
Таблица 3.3
Расчет амортизации аппаратных средств
Аппаратное
средство
Цена, р.
Срок
службы,
лет
Амортизация,
р./мес.
Кол-во,
шт.
Расходы за 5
месяцев, р.
Компьютер
25 758,5
5
429,31
1
15 022,35
Сервер базы
данных
65 473,6
5
1 091,23
1
5 456,15
Сервер
приложений
54 650,00
5
910,83
1
4 554,15
Принтер
12 550,00
5
209,17
1
1 045,85
Итого
-
-
-
-
26 078,50
71
Таким образом, расходы на амортизацию составляют 26 078,50 р.
В таблице 3.4 приведена смета затрат на разработку и внедрение процесса.
Таблица 3.4
Смета затрат на разработку и внедрение
Статья затрат
Сумма, р.
Основная заработная плата
147 200,00
Дополнительная заработная плата
14 720,00
Отчисления
48 576,00
Амортизация
26 078,50
Накладные расходы
103 040,00
Итого:
339 614,50
Таким, образом, предприятие имеет удобную систему хранения и
предоставления наличных и товарных данных за разные периоды. Помимо этого
присутствует очень удобная кассовая система для быстрого обслуживания клиентов.
Вся информация из кассового аппарата ежедневно автоматически передается
на главный компьютер магазина, далее формируется в отчете программным
обеспечением и отправляется менеджером в электронном виде в главный офис. Точно
так же все отчеты формируются и передаются в Москву из всех городов. Для
автоматизации этого процесса необходимо разработать веб-интерфейс рассылки
уведомлений. Чтобы руководство в главном офисе всегда знало, сколько товара
осталось на полках магазина и его название. В ходе аудита каждая единица товара
сканируется сканером на системе считывания штрих-кодов. Данные о количестве
отправляются в Москву, а оттуда поступают данные о соответствии и несоответствии
единиц товара.
Таким образом, применение данной разработки для автоматизации
процессов в изучаемой организации позволит более качественно реализовывать ООО
«Безам» свои цели, а именно: удовлетворять материальные и иные потребности
потребителей, а также увеличение прибыли.
72
Заключение
В ходе выполнения данной работы был проведен подробный анализ
предметной области, изучены нормативные документы, рассмотрена архитектура
вебинтерфейса сервера уведомлений.
Изучены необходимые характеристики организации, так как предприятие
имеет территориально разделенную организационную структуру, то управление и
получение обратной связи внутри организации происходит посредством каналов
связи. Наиболее оптимальным вариантом для построения взаимодействия между
территориально разделенными структурами является сеть Интернет.
Интернет — это мировая компьютерная сеть. В нее объединено огромное
множество компьютеров по всему миру, которые образуют между собой общее
информационное пространство. Интернет предоставляет свою инфраструктуру для
пользования ею прикладным сервисам различного назначения. Для подкуючения к
сети Интернет необходим персональный компьютер с возможностью выхода в
Интернет. Такая техническая возможность в ООО «Безам» имеется.
На предприятии существует удобная система хранения и предоставления
наличных и товарных данных за разные периоды. Помимо этого присутствует очень
удобная кассовая система для быстрого обслуживания клиентов.
Вся информация из кассового аппарата ежедневно автоматически передается
на главный компьютер магазина, далее формируется в отчете программным
обеспечением и отправляется менеджером в электронном виде в главный офис. Точно
так же все отчеты формируются и передаются в Москву из всех городов. Для
автоматизации этого процесса необходимо разработать веб-интерфейс рассылки
уведомлений. Чтобы руководство в главном офисе всегда знало, сколько товара
осталось на полках магазина и его название. В ходе аудита каждая единица товара
сканируется сканером на системе считывания штрих-кодов. Данные о количестве
отправляются в Москву, а оттуда поступают данные о соответствии и несоответствии
единиц товара.
В основе разработки веб-интерфейса лежит подход Model-View-Controller
(MVC). Отличительной чертой данного подхода является отсутствие прямой связи
между моделью и представлением. Модель связана контроллером посредством
73
стандарта JDBC. Представление связано с контроллером посредством подхода AJAX,
а также при использовании формата обмена данными JSON. Этот формат по
сравнению с форматом XML содержит небольшую часть разметки. Это уменьшает
размер пересылаемых в системе сообщений. Для обработки сообщений меньшего
размера требуется меньше времени на загрузку сообщений, а это увеличивает
скорость работы всего приложения разрабатываемого веб-интерфейса.
Для ускорения работы разрабатываемого веб-приложения были использованы
шаблоны проектирования. Оверлеи ускоряют работу построения всплывающих окон.
При имеющихся дополнительных элементах в интерфейсе всплывающие окна
требуют больше памяти и времени обработки процессором. Оверлеи строятся на
странице разрабатываемого веб-приложения без дополнительных элементов
интерфейса.
Также при разработке веб-интерфейса были применены шаблоны
непосредственного редактирования и клавиши быстрого доступа к информации. Эти
методы выступают дублерами основных функциональных элементов, но позволяют
увеличить производительность работы веб-приложения при взаимодействии
пользователя с интерфейсом. Непосредственное редактирование текста на странице
приложения позволяет пользователю оставаться в контексте страницы и не тратить
время на переключение между приложениями.
В качестве контроллера был спроектирован набор функций, который
реализовал методы взаимодействия с базой данных. Используя язык
программирования Java, функции контроллера реализуются через интерфейс Servlet -
ов (Servltes).
В ходе подготовки работы были разработаны: модель предметной области,
логическая и физическая модели, блок-схемы алгоритмов операций. Произведен
расчет объема внешней памяти, по результатам которого определено, что при
необходимости хранения информации за период не менее 2 лет, объем внешней
памяти составляет примерно 266,8 мегабайт.
Экономическая эффективность будет носить косвенный характер:
планируется повышение качества исполнения процедуры оповещения, открытость
результатов исполнения и экономия рабочего времени, сокращение процессов обмена
данными.

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран