Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Автоматизация обработки обращений в службу технической поддержки ООО «Концерт.ру»

Содержание:

ВВЕДЕНИЕ

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

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

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

Служба технической поддержки в ООО «Концерт.ру» осуществляет устранение технических неисправностей, проводит техническую поддержку пользователей.

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

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

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

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

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

Объектом исследования курсовой работы является ООО «Концерт.ру».

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

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

1. Технико-экономическая характеристика предметной области и предприятия

1.1. Характеристика предприятия и его деятельности

Юридический адрес ООО «Концерт.ру» - 127051, город Москва, Цветной бульвар, дом 30, стр 1.

В штате компании работают профессиональные event-менеджеры, театральные художники и режиссёры. Компетентность менеджеров позволяет в короткие сроки для мероприятия подобрать любого артиста, музыкальный коллектив или celebrity.

Клиенты компании - федеральные и муниципальные организации, топ-менеджеры различных профессий, руководители и менеджеры event-индустрии. Компания «Концерт.ру» имеет прямые договора со многими американскими и европейскими booking-агентствами по предоставлению услуг зарубежных артистов на территории России и странах СНГ. Для постоянных клиентов действует услуга по организации и проведению корпоративных мероприятий «под ключ», независимо от бюджета заказчика.

Сфера деятельности:

- подготовка различных эвент-мероприятий, сценариев, подборов, заказов исполнителей, аренды помещения, проведения банкета;

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

Особенности компании:

- прямые контакты с самыми недоступными звёздами;

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

Преимущества работы с агентством:

- прямой доступ к исполнителям первой величины. В отличие от других эвент-агентств, компания - не посредник;

- быстрая организация события;

- каждый из этапов продуман и выверен годами;

- понятные цены и стабильные условия;

- эксклюзивные условия с музыкантами;

- комплексный подход к эвент-мероприятию;

- гарантия выполнения.

Многоканальный телефон: +7 (495) 225-76-02

Дополнительный телефон: +7 (495) 410-16-11

Время работы офиса: будние дни с 09:00 до 19:00.

Основные технико-экономические показатели отражены в таблице 1.1.

Таблица 1.1

Основные технико-экономические показатели ООО «Концерт.ру»

п\п

Наименование характеристики (показателя)

Значение показателя на июль 2020 года

1

Количество сотрудников

60 сотрудников

2

Оборот компании за год

Около 54 миллионов рублей

3

Количество обращений (заявок) в день

100 шт

4

Среднее арифметическое количество времени, затраченное на регистрацию одного обращения в мин.

4 мин.

5

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

20 мин.

1.2. Организационная структура управления предприятием

Организационная структура компании изображена на рисунке 1.1. На рисунке отображены связи сотрудников ООО «Концерт.ру» в управлении касательно подчинения персонала.

C:\Users\home\Desktop\выпварпат.jpg

Рисунок 1.1 - Организационная структура ООО «Концерт.ру»

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

В деятельности ООО «Концерт.ру» выделяются следующие бизнес-процессы:

  • основные;
  • обеспечивающие;
  • бизнес-процессы управления.

Основные бизнес-процессы — это бизнес-процессы, приносящие ООО «Концерт.ру» прибыль. Это в первую очередь проведение концертов, приглашение звезд.

Обеспечивающие бизнес-процессы – это вспомогательные процессы, реализующие устойчивое функционирование, но не приносящие прибыль:

  • административное обеспечение;
  • обеспечение безопасности;
  • юридическое обеспечение;
  • ИТ-обеспечение и связь;
  • внутренний контроль;
  • бухгалтерский учет и отчетность и пр. [12, c.31]

Бизнес-процессы управления — вспомогательные процессы, благодаря которым реализуется управление деятельностью ООО «Концерт.ру»:

  • стратегическое управление;
  • управление маркетингом;
  • управление рисками;
  • управление персоналом;
  • управление бизнес-процессами и развитием;
  • региональное управление и пр.

Из многообразия процессов, реализующихся в ООО «Концерт.ру», определяем для автоматизации процесс обработки обращений в контексте работы службы технической поддержки как самый ответственный и нуждающийся в автоматизации.

Целью работы является разработка системы автоматизации процесса обработки обращения для ООО «Концерт.ру». В настоящее время этот процесс осуществляется в компании следующим образом.

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

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

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

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

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

Задачи регистрации не исчерпываются только учетом обращений. Так как в регистрационные формы вносятся главные сведения о заявках, создается база данных всех зарегистрированных заявок [6, c.12]. Для работы с массивом заявок в отделе создается информационно-поисковая система по заявкам ООО «Концерт.ру», которая используется для контроля за исполнением заявок и выполнением справочно-аналитических задач.

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

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

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

Функциональная диаграмма процесса обработки обращений, требующих исполнения и ответа представлена на рисунке 1.2.

Обработка заявок характеризуется процессами приема и первичной обработки заявок, обработкой входящих и исходящих документов, предварительное рассмотрение заявок, занесение данных в реестр заявок, исполнение заявок и их обработке [7, c.51].

C:\Users\home\Desktop\трпьптварыо.png

Рисунок 1.2 - Контекстный уровень диаграммы IDEF0

Используются следующие активные объекты (механизмы):

  • специалист службы технической поддержки;
  • руководитель;
  • исполнители.

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

Обработка входящей заявки состоит в занесении данных о заявке в журнал и последующей передаче на обработку сотруднику.

Обработка исходящей заявки состоит также в занесении данных о заявке в журнал и последующей обработке.

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

К внутренним заявкам относятся различные пользовательские запросы в контексте функционирования ООО «Концерт.ру». Прохождение внутренних заявок на этапах их подготовки и оформления организуется в соответствии с общим порядком обращения исходящих заявок, а на этапе исполнения (использования) — входящих заявок.

Декомпозиция контекстной модели представлена на рисунке 1.3.

C:\Users\home\Documents\Студенческие работы\2020\06 Июнь\Учёный Кот\16 Курсовая Шмагин\попропро.png

Рисунок 1.3 – Декомпозиция контекстной модели IDEF0

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

- ведение «Реестра заявок, требующих исполнения и ответа»;

- ведение журналов входящих и исходящих заявок;

- создание контрольно-регистрационных карточек, с указанием необходимых атрибутов и краткого содержания заявок;

- формирование отчета «Просроченные заявки»;

- поиск заявки по содержанию ее запроса;

- вывод на печать «Учетно-контрольного реестра заявок, требующих исполнения и ответа» и отчетов;

- вывод на печать журналов входящих и исходящих заявок.

Схема оборота заявок приведена на рисунке 1.4.

Рисунок 1.4 – Обработка исполненных заявок

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

Самыми затратными по временным и трудовым ресурсам среди описанных выше составляющих процесса учета обработка заявок являются подготовка отчетов и поиск информации по конкретной заявки для определения ее нахождения [18, c.67]. Это вызвано большим количеством поступающих и формирующихся заявок, что в итоге значительно затрудняет поиск информации в них. Сравнение основных операций при обработке заявок без применения средств автоматизации и в предлагаемом варианте по трудовым и стоимостным затратам приведено в таблице 1.2 и таблице 1.3 (с учетом средней заработной платы сотрудника 25000 в месяц).

Таблица 1.2

Временные и стоимостные затраты при существующем варианте

Наименование операции

Количество, в рабочий день

Затрачиваемое время на одну, мин

Итого в рабочий день, минут

Стоимостная оценка, рублей

Внесение записи в журнал

8

40

320

793,6

Поиск данных по конкретной заявке

4

30

120

297,6

Подготовка отчета по движению заявки

4

10

40

99,2

Формирование реестра заявок, требующих исполнения

4

15

60

148,8

Итого:

540

1339,2

Таблица 1.3

Временные и стоимостные затраты при планируемом варианте

Наименование операции

Количество, в рабочий день

Затрачиваемое время на одну, мин

Итого в рабочий день, минут

Стоимостная оценка, рублей

Внесение записи в журнал

4

1

4

9,92

Поиск данных по конкретной заявке

4

1

4

9,92

Подготовка отчета по движению заявки

4

10

40

99,2

Формирование реестра заявок, требующих исполнения

4

10

40

99,2

Итого:

88

218,24

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

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

При этом временные затраты должны сократиться на 540-88=452 минуты=7, 5 часов и 1339-218=1121 рубль в сутки. Следовательно, внедрение такой системы является однозначно выгодным с точки зрения оптимизации расхода трудовых и стоимостных ресурсов.

Разрабатываемая система должна удовлетворять следующим требованиям:

- иметь систему регистрации пользователей;

- предоставлять пользователю полную информацию о статусе заявки;

- иметь удобную и быструю систему учета заявок;

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

На рисунке 1.5 представлена схема обработки обращений в службе технической поддержки ООО «Концерт.ру».

Рисунок 1.5 - Схема обработки обращений в службе технической поддержки

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

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

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

Таблица 1.4

Технические средства, применяемые на стадиях обработки заявки

Этап №

Программные и технические средства

A1

Компьютер пользователя, почтовый клиент

A2, А3,А4

Сервер приложений, БД, ПО системы SD, почтовый сервер

A5

Компьютер администратора

A6

Компьютер администратора, ПО системы SD

Отразим соотношение текущих показателей затрат на реализацию анализа и исполнения услуги (таблица 1.5).

Таблица 1.5

Соотношение показателей затрат на анализ и исполнение заявки

Показатели

Имеется

Планируется

Число потерянных заявок за месяц

5-7 шт

0 шт

Число обрабатываемых заявок ночью

0 шт

15 шт

Отношение числа обработанных обращений ежедневно в ручную к автоматически обработанным

500\0 шт

500\350 шт

2. Информационное обеспечение задачи

2.1. Информационная модель и её описание

Информационная модель представляет собой схему движения входных, промежуточных и результативных потоков и функций предметной области. Кроме того, она объясняет, на основе каких входных документов и какой нормативно-справочной информации происходит выполнение функций по обработке обращений и формирование конкретных выходных документов [16, c.34]. Информационная модель представлена на рис. 2.1.

2.2. Используемые классификаторы и системы кодирования

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

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

Рисунок 2.1 – Информационная модель

Таблица 2.1

Используемые системы кодирования

Кодируемое множество объектов

Длина кода

Мощность кода

Система кодирования

Система классификации

Вид классификатора

Клиенты

4

9999

Порядковая

Отсутствует

Локальный

Обращения

4

9999

Порядковая

Отсутствует

Локальный

Состояния обращений

2

99

Порядковая

Отсутствует

Локальный

2.3. Характеристика нормативно-справочной, входной и оперативной информации

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

  • Заявка на обслуживание – поступает от клиентов ООО «Концерт.ру» по одному из каналов связи (форма оформления заявки, электронная почта, телефон,), содержит следующие сведения:
  • реквизиты клиента;
  • описание проблемы и пошаговое описание действий по воспроизведению проблемы;
  • воспроизводимость - показывает случайный или неслучайный характер носит описываемая проблема;
  • критичность – указывает важность решения данной проблемы;
  • приоритет – указывает, как быстро следует обработать данное обращение;
  • дополнительная информация - все что угодно, в контексте обращения;
  • скриншот возникшей проблемы в сжатом формате (gif, png, jpg).

Обращение учитывается путем внесения данных в экранную форму «Учет заявок».

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

В системе используется 5 справочников для хранения условно-постоянной информации.

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

Таблица 2.2

Перечень используемых справочников

№ пп

название справочника

ответственный за ведение

средний объём справочника в записях

среднюю частоту актуализации

средний объем актуализации, %

Клиенты

Администратор

100

1 раз в месяц

10

Сотрудники

Администратор

100

1 раз в месяц

10

Статус заявки

Администратор

50

1 раз в месяц

10

Тип Неисправности

Администратор

100

1 раз в месяц

10

Должность

Администратор

100

1 раз в месяц

10

Справочник Клиент служит для хранения информации о клиентах ООО «Концерт.ру» содержит следующие реквизиты:

  • фамилия;
  • имя;
  • отчество;
  • телефон;
  • номер комнаты.

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

  • фамилия;
  • имя;
  • отчество;
  • дата рождения;
  • должность;
  • телефон;
  • тип пользователя;
  • логин;
  • пароль;
  • дата регистрации.

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

2.4. Характеристика результатной информации

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

  1. Журнал поступления заявок от клиентов;
  2. Ведомость учета работ специалистов службы технической поддержки;
  3. Ведомость учета и контроля поступления заявок от клиентов за период;
  4. Отчет о степени загруженности сотрудников службы технической поддержки;
  5. Аналитический отчет о наиболее часто возникающих проблемах клиентов;
  6. Отчет по заявке;
  7. Сводный отчет по клиентам;
  8. Отчет о выполненных заявках клиентов за период;
  9. Отчет о невыполненных заявках клиентов за период;
  10. Аналитический отчет о выполнении заявок клиентов за период.

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

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

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

Отчет о выполненных заявках формируется на основании ведомости учета и контроля заявок и содержит перечень выполненных заявок.

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

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

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

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

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

Для хранения всех вышеперечисленных документов не используется каких-либо таблиц в базе данных. Формирование результатных документов происходит по запросу, после чего они могут быть выведены на экран, на печать, сохранены в документ Microsoft Excel и отправлены адресату по электронной почте.

3. Программное обеспечение задачи

3.1. Общие положения (дерево функций и сценарий диалога)

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

Дерево функций пользователя разработанной ИС представлено на рисунке 3.1.

Рисунок 3.1 - Дерево функций пользователя ИС

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

  • клиент;
  • заявка;
  • справочник;
  • пользователь;
  • отчеты;
  • выход.

Сценарий диалога приведен на рисунке 3.2.

Рисунок 3.2 - Сценарий диалога системы

3.2 Характеристика базы данных

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

Рисунок 3.3 - Инфологическая модель базы данных

На схеме приведены следующие сущности и атрибуты:

  1. Заявка:

Код_заявка

Дата регистрации

Дата закрытия

Код_статус(справочник Статус заявки)

Код_неисправность(справочник Тип неисправностей)

Код_клиента (справочник Клиенты)

Код_сотрудника (справочник Сотрудники)

Воспроизводимость

Скриншот

Описание

Код_услуга (справочник Дополнительные услуги)

Количество

  1. Клиенты:

Код_клиента

Фамилия

Имя

Отчество

Должность

Телефон

Номер комнаты

  1. Сотрудники

Код_сотрудника

Фамилия

Имя

Отчество

Код_должность (из справочника Должность)

Телефон

E-mail

  1. Статус заявки:

Код_статус, Наименование_статус(принята, распределена, закрыта)

  1. Тип неисправностей:

Код_неисправность, Наименование_неисправность

  1. Должность:

Код_ должность, Наименование должность (специалист технического обслуживания, программист, системный администратор)

Структура таблиц приведена в таблицах.

Таблица 3.1

Структура таблицы client

Поле

Тип

Null

По умолчанию

id

int(11)

Нет

title

varchar(255)

Да

NULL

last_name

varchar(255)

Да

NULL

first_name

varchar(255)

Да

NULL

middle_name

varchar(255)

Да

NULL

phone

varchar(255)

Да

NULL

email

varchar(255)

Да

NULL

number

varchar(255)

Да

NULL

Таблица 3.2

Структура таблицы defect

Поле

Тип

Null

По умолчанию

id

int(11)

Нет

title

varchar(255)

Да

NULL

Таблица 3.3

Структура таблицы request

Поле

Тип

Null

По умолчанию

id

int(11)

Нет

date_reg

datetime

Да

NULL

date_close

datetime

Да

NULL

id_status

int(11)

Да

NULL

id_client

int(11)

Да

NULL

description

mediumtext

Да

NULL

reproducibility

bit(1)

Да

NULL

id_staff

int(11)

Да

NULL

id_defect

int(11)

Да

NULL

id_priority

int(11)

Да

NULL

Таблица 3.4

Структура таблицы staff

Поле

Тип

Null

По умолчанию

id

int(11)

Нет

last_name

varchar(255)

Да

NULL

first_name

varchar(255)

Да

NULL

middle_name

varchar(255)

Да

NULL

birthday

datetime

Да

NULL

id_function

int(11)

Да

NULL

phone

varchar(255)

Да

NULL

login

varchar(255)

Да

NULL

psw

varchar(255)

Да

NULL

blocked

bit(1)

Да

NULL

date_reg

datetime

Да

NULL

email

varchar(255)

Да

NULL

id_staff_type

int(11)

Да

NULL

Таблица 3.5

Структура таблицы staff_work

Поле

Тип

Null

По умолчанию

id

int(11)

Нет

day

date

Да

NULL

id_staff

int(11)

Да

NULL

id_day_type

int(11)

Да

NULL

amount

double

Да

NULL

Таблица 3.6

Структура таблицы status

Поле

Тип

Null

По умолчанию

id

int(11)

Нет

title

varchar(255)

Да

NULL

3.3 Структурная схема пакета (дерево вызова программных модулей)

Структурная схема пакета ИС приведена на рисунке 3.4.

Рисунок 3.4 - Структурная схема пакета ИС

3.4 Описание программных модулей

В таблице 3.7 представлен перечь программных модулей, представленных на рисунке 3.4, а также описание их функций.

Таблица 3.7

Описание программных модулей

Название программного модуля

Описание

Заставка

Экранная форма Заставки

Авторизация

Экранная форма для ввода пароля и процедура проверки пароля

Главное меню

Экранная форма с главным меню программы

Меню «Справка»

Отображение справки по программе

Меню «Настройки»

Отображение меню настроек

Меню «Работа с заявками»

Отображение меню основных функций по работе с заявками

Меню «Работа со справочниками»

Отображение меню справочников

ПМ«Клиент»

Отображение меню клиентов

Загрузка справочника Клиенты

Процедура вывода справочника на экран

Печать справочника Клиенты

Процедура печати

Актуализация справочника Клиенты

Экранная форма с процедурой ввода и корректировки записи

Аналогично для остальных справочников

Меню «Получение отчетных документов»

Отображение меню получения отчетных документов

4. Контрольный пример реализации проекта и его описание

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

Рисунок 4.1 - Авторизация пользователя

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

Главное меню учетной записи администратора содержит кнопки:

- Вход – для смены учетной записи пользователя;

- Создать заявку – для подачи заявки;

- Данные – для заполнения справочников;

- Заявки – для просмотра и закрытия заявок;

- Закрытые – для просмотра закрытых заявок;

- Архив – для просмотра заявок отправленных в архив;

- Пользователь – для отображения информации о пользователе прошедшем авторизацию;

- Показатели – для отображения графиков и диаграмм;

- Отчеты – для формирования отчетов.

Рисунок 4.2 - Главное меню администратора

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

Для отправки заявки на исполнение нужно нажать кнопку ОК (после заполнения всех полей).

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

Рисунок 4.3 - Учет заявки

Рисунок 4.4 - Справочник Статус

Рисунок 4.5 - Справочник Пользователи

Рисунок 4.6 - Справочник должностей

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

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

ЗАКЛЮЧЕНИЕ

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

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

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

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

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

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

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

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

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

Для реализации поставленной цели были выполнены следующие задачи:

– дана характеристика предметной области;

– рассмотрена организационная структура управления предприятием;

– описаны бизнес-процессы;

– построена информационная модель;

– описана входная, справочная и результатная информация;

– построенодерево функций;

– описаны программные модули;

– приведен контрольный пример реализации проекта.

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

  1. Авдошин, Песоцкая: Информатизация бизнеса. Управление рисками, Издательство: ДМК-Пресс, М., 2011 г., 176 стр.
  2. Антониоу, Грос, Хоекстра: Семантический веб, М, ДМК-Пресс, 2016 г., 240 с.
  3. Бэнкс, Порселло: React и Redux. Функциональная веб-разработка, М. Питер, 2018 г., 336 с.
  4. Веллинг, Томсон: Разработка веб-приложений с помощью PHP и MySQL, М, Диалектика, 2017 г., 768 с.
  5. Викрам Васвани: MySQL: использование и администрирование, Издательство: Питер, СПб, 2011 г., 368 стр.
  6. Владислав Пирогов: Информационные системы и базы данных: организация и проектирование, Издательство: BHV, М., 2009 г., 528 стр.
  7. Георгий Исаев: Информационные системы в экономике. Учебник, Издательство: Омега-Л, М., 2013 г., 462 стр.
  8. Георгий Исаев: Проектирование информационных систем. Учебное пособие, Издательство: Омега-Л, М., 2015 г., 424 стр.
  9. Джон Дакетт: Javascript и jQuery. Интерактивная веб-разработка, М. Эксмо, 2017 г., 640 с.
  10. Дино Эспозито: Разработка современных веб-приложений. Анализ предметных областей и технологий, М, Вильямс, 2017 г., 464 с.
  11. Дмитрий Чистов: Экономическая информатика (для бакалавров). Учебное пособие, Издательство: Кнорус, 2014 г., 512 стр.
  12. Дэвид Скляр: Изучаем PHP 7. Руководство по созданию интерактивных веб-сайтов, М. Диалектика, 2017 г., 464 с.
  13. Итан Браун: Веб-разработка с применением Node и Express. Полноценное использование стекаJavaScript, М., Питер, 2017 г., 336 с.
  14. Колисниченко Д.Н,: PHP и MySQL. Разработка Web-приложений, М, BHV, 2017 г., 740 с.
  15. Курлов, Петров: Методология информационной аналитики, Издательство: Проспект, М.,2014 г., 384 стр.
  16. Мэтью Макдональд: Веб-разработка. Исчерпывающее руководство, М. Питер, 2017 г., 640 с.
  17. Николас Закас: JavaScript для профессиональных веб-разработчиков, Питер, 2015 г., М. 960 с.
  18. Робин Никсон: Создаем динамические веб-сайты с помощью PHP, MySQL, JavaScript, CSS и HTML5, М, Питер, 2016 г., 768 с.
  19. Соловьев, Майоров: Проектирование информационных систем. Фундаментальный курс, Издательство: Академический проект, М., 2009 г., 398 стр.

ПРИЛОЖЕНИЕ

Листинг программы

<?php

$settings = array(

'baseDir' => '../',

'charSet' => 'utf-8',

'debug' => true,

'gzip' => true,

'compressionLevel' => 9,

'gzipExceptions' => array('gif','jpeg','jpg','png','swf'),

'minify' => true,

'concatenate' => true,

'separator' => ',',

'embed' => true,

'embedMaxSize' => 5120,

'embedExceptions' => array('htc'),

'serverCache' => true,

'serverCacheCheck' => false,

'cacheDir' => 'cache/',

'cachePrefix' => 'so_',

'clientCache' => true,

'clientCacheCheck' => false,

);

//mime types

$mimeTypes = array(

"js" => "text/javascript",

"css" => "text/css",

"htm" => "text/html",

"html" => "text/html",

"xml" => "text/xml",

"txt" => "text/plain",

"jpg" => "image/jpeg",

"jpeg" => "image/jpeg",

"png" => "image/png",

"gif" => "image/gif",

"swf" => "application/x-shockwave-flash",

);

function headerExit($status) {

header("HTTP/1.0 $status");

exit();

}

function headerNoCache() {

// already expired

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");

// always modified

header("Last-Modified: " . gmdatestr());

// HTTP/1.1

header("Cache-Control: no-store, no-cache, must-revalidate");

header("Cache-Control: post-check=0, pre-check=0", false);

header("Cache-Control: max-age=0", false);

// HTTP/1.0

header("Pragma: no-cache");

//generate a unique Etag each time

header('Etag: '.microtime());

}

function headerNeverExpire(){

header("Expires: " . gmdatestr(time() + 315360000));

header("Cache-Control: max-age=315360000");

}

function debugExit($msg){

global $settings;

if (!$settings['debug']) {

headerExit('404 Not Found');

}

headerNoCache();

header('Content-Type: text/html; charset='.$settings['charSet']);

header("Content-Encoding: none");

echo "//<script>\n";

echo "alert('SmartOptimizer Error: ".str_replace("\n", "\\n", addslashes($msg))."');\n";

echo "//</script>\n";

exit();

}

function gmdatestr($time = null) {

if (is_null($time)) $time = time();

return gmdate("D, d M Y H:i:s", $time) . " GMT";

}

function filesmtime() {

global $files, $fileType;

static $filesmtime;

if ($filesmtime) return $filesmtime;

$filesmtime = max(@filemtime("minifiers/$fileType.php"), filemtime('index.php'), filemtime('config.php'));

foreach ($files as $file) {

if (!file_exists($file)) debugExit("File not found ($file).");

$filesmtime = max(filemtime($file), $filesmtime);

}

return $filesmtime;

}

@include('config.php');

list($query) = explode('?', urldecode($_SERVER['QUERY_STRING']));

if (preg_match('/^\/?(.+\/)?(.+)$/', $query, $matchResult)) {

$fileNames = $matchResult[2];

$fileDir = $settings['baseDir'].$matchResult[1];

} else debugExit("Invalid file name ($query)");

if (strpos(realpath($fileDir), realpath($settings['baseDir'])) !== 0) debugExit("File is out of base directory.");

if ($settings['concatenate']) {

$files = explode($settings['separator'], $fileNames);

$settings['concatenate'] = count($files) > 1;

} else $files = array($fileNames);

foreach ($files as $key => $file) {

if (preg_match('/\.([a-z0-9]+)$/i', $file, $matchResult)) {

$fileTypes[] = strtolower($matchResult[1]);

} else debugExit("Unsupported file ($file)");

$files[$key] = $fileDir.$file;

}

if ($settings['concatenate']) {

if (count(array_unique($fileTypes)) > 1) debugExit("Files must be of the same type.");

}

$fileType = $fileTypes[0];

if (!isset($mimeTypes[$fileType])) debugExit("Unsupported file type ($fileType)");

header("Content-Type: {$mimeTypes[$fileType]}; charset=".$settings['charSet']);

$settings['gzip'] =

($settings['gzip'] &&

!in_array($fileType, $settings['gzipExceptions']) &&

in_array('gzip', array_map('trim', explode(',' , @$_SERVER['HTTP_ACCEPT_ENCODING']))) &&

function_exists('gzencode'));

if ($settings['gzip']) header("Content-Encoding: gzip");

$settings['minify'] = $settings['minify'] && file_exists('minifiers/'.$fileType.'.php');

$settings['embed'] = $settings['embed'] && $fileType == 'css' && (!preg_match('/msie/i', $_SERVER['HTTP_USER_AGENT']) || preg_match('/msie 8|opera/i', $_SERVER['HTTP_USER_AGENT']));

$settings['serverCache'] = $settings['serverCache'] && ($settings['minify'] || $settings['gzip'] || $settings['concatenate'] || $settings['embed']);

if ($settings['serverCache']) {

$cachedFile = $settings['cacheDir'].$settings['cachePrefix'].md5($query.($settings['embed']?'1':'0')).'.'.$fileType.($settings['gzip'] ? '.gz' : '');

}

$generateContent = ((!$settings['serverCache'] && (!$settings['clientCache'] || !$settings['clientCacheCheck'] || !isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) || $_SERVER['HTTP_IF_MODIFIED_SINCE'] != gmdatestr(filesmtime()))) ||

($settings['serverCache'] && (!file_exists($cachedFile) || ($settings['serverCacheCheck'] && filesmtime() > filemtime($cachedFile)))));

if ($settings['clientCache'] && $settings['clientCacheCheck']) {

if ($settings['serverCache'] && !$generateContent) $mtime = filemtime($cachedFile);

elseif ($settings['serverCache']) $mtime = time();

else $mtime = filesmtime();

$mtimestr = gmdatestr($mtime);

}

if (!$settings['clientCache'] || !$settings['clientCacheCheck'] || !isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) || $_SERVER['HTTP_IF_MODIFIED_SINCE'] != $mtimestr) {

if ($settings['clientCache'] && $settings['clientCacheCheck']) {

header("Last-Modified: " . $mtimestr);

header("Cache-Control: must-revalidate");

} elseif ($settings['clientCache']) {

headerNeverExpire();

} else headerNoCache();

if ($generateContent) {

if ($settings['minify']) include('minifiers/'.$fileType.'.php');

$content = array();

foreach ($files as $file) (($content[] = @file_get_contents($file)) !== false) || debugExit("File not found ($file).");

$content = implode("\n", $content);

if ($settings['minify']) $content = call_user_func('minify_' . $fileType, $content);

if ($settings['gzip']) $content = gzencode($content, $settings['compressionLevel']);

if ($settings['serverCache']) {

$handle = @fopen($cachedFile, 'w') or debugExit("Could not create cache file($cachedFile).");

fwrite($handle, $content);

fclose($handle);

}

header('Content-Length: ' . strlen($content));

echo $content;

} else {

header('Content-Length: ' . filesize($cachedFile));

readfile($cachedFile);

}

} else headerExit('304 Not Modified');

?>

<?php

/*

* SmartOptimizer CSS Minifier

*/

function convertUrl($url, $count)

{

global $settings, $mimeTypes, $fileDir;

static $baseUrl = '';

$url = trim($url);

if (preg_match('@^[^/]+:@', $url)) return $url;

$fileType = substr(strrchr($url, '.'), 1);

if (isset($mimeTypes[$fileType])) $mimeType = $mimeTypes[$fileType];

elseif (function_exists('mime_content_type')) $mimeType = mime_content_type($url);

else $mimeType = null;

if (!$settings['embed'] ||

!file_exists($fileDir.$url) ||

($settings['embedMaxSize'] > 0 && filesize($fileDir.$url) > $settings['embedMaxSize']) ||

!$fileType ||

in_array($fileType, $settings['embedExceptions']) ||

!$mimeType ||

$count > 1) {

if (strpos($_SERVER['REQUEST_URI'], $_SERVER['SCRIPT_NAME'].'?') === 0 ||

strpos($_SERVER['REQUEST_URI'], rtrim(dirname($_SERVER['SCRIPT_NAME']), '\/').'/?') === 0) {

if (!$baseUrl) return $fileDir . $url;

}

return $baseUrl . $url;

}

$contents = file_get_contents($fileDir.$url);

if ($fileType == 'css') {

$oldFileDir = $fileDir;

$fileDir = rtrim(dirname($fileDir.$url), '\/').'/';

$oldBaseUrl = $baseUrl;

$baseUrl = 'http'.(@$_SERVER['HTTPS']?'s':'').'://'.$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['SCRIPT_NAME']), '\/').'/'.$fileDir;

$contents = minify_css($contents);

$fileDir = $oldFileDir;

$baseUrl = $oldBaseUrl;

}

$base64 = base64_encode($contents);

return 'data:' . $mimeType . ';base64,' . $base64;

}

function minify_css($str) {

$res = '';

$i=0;

$inside_block = false;

$current_char = '';

while ($i+1<strlen($str)) {

if ($str[$i]=='"' || $str[$i]=="'") {//quoted string detected

$res .= $quote = $str[$i++];

$url = '';

while ($i<strlen($str) && $str[$i]!=$quote) {

if ($str[$i] == '\\') {

$url .= $str[$i++];

}

$url .= $str[$i++];

}

if (strtolower(substr($res, -5, 4))=='url(' || strtolower(substr($res, -9, 8)) == '@import ') {

$url = convertUrl($url, substr_count($str, $url));

}

$res .= $url;

$res .= $str[$i++];

continue;

} elseif (strtolower(substr($res, -4))=='url(') {//url detected

$url = '';

do {

if ($str[$i] == '\\') {

$url .= $str[$i++];

}

$url .= $str[$i++];

} while ($i<strlen($str) && $str[$i]!=')');

$url = convertUrl($url, substr_count($str, $url));

$res .= $url;

$res .= $str[$i++];

continue;

} elseif ($str[$i].$str[$i+1]=='/*') {//css comment detected

$i+=3;

while ($i<strlen($str) && $str[$i-1].$str[$i]!='*/') $i++;

if ($current_char == "\n") $str[$i] = "\n";

else $str[$i] = ' ';

}

if (strlen($str) <= $i+1) break;

$current_char = $str[$i];

if ($inside_block && $current_char == '}') {

$inside_block = false;

}

if ($current_char == '{') {

$inside_block = true;

}

if (preg_match('/[\n\r\t ]/', $current_char)) $current_char = " ";

if ($current_char == " ") {

$pattern = $inside_block?'/^[^{};,:\n\r\t ]{2}$/':'/^[^{};,>+\n\r\t ]{2}$/';

if (strlen($res) && preg_match($pattern, $res[strlen($res)-1].$str[$i+1]))

$res .= $current_char;

} else $res .= $current_char;

$i++;

}

if ($i<strlen($str) && preg_match('/[^\n\r\t ]/', $str[$i])) $res .= $str[$i];

return $res;

}

?>