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

«Управление взаимоотношениями с клиентами с помощью UML»

Содержание:

Введение

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

Целью данной работы является разработка системы анализа и учета клиентской информации (на примере компании Romza). Одной из основных проблем, стоящих перед компанией «Romza», является повышение конкурентоспособности через формирование системы анализа клиентских отношений, что обеспечит повышение доходности фирмы. Решение этой проблемы возможно посредством разработки и внедрения системы анализа и учета клиентской информации (CRM-системы), ориентированной на специфику предметной области конкретного предприятия «Romza». На данный момент в компании не систематизированы данные о клиентах, у сотрудников нет доступа к базе знаний, соответственно, отсутствует мотивация на реализацию клиентоориентированного подхода к управлению компанией. Указанную проблему возможно решить посредством разработки и внедрения предметно­ориентированной CRM-системы.

Это решение поможет:

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

Для достижения цели, необходимо решить следующие задачи:

  1. анализ методов, алгоритмов и информационных систем учета клиентской информации;
  2. разработка концептуальных требований к информационной системе анализа и учета клиентской информации компании «Romza»;
  3. проектирование структуры и архитектуры информационной системе анализа и учета клиентской информации компании «Romza»;
  4. оценка эффективности внедрения системы анализа и учета клиентской информации.

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

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

1 глава. Аналитическая часть

1.1. Описание предметной области. Постановка задачи.

Веб - студия “Romza” основана в 2007 году [15]. Основным направлением деятельности компании является разработка и продвижение тиражных решений на Маркетплейс. На данный момент входит в тройку лучших разработчиков тиражных решений в СНГ.

Студия тиражных web-решений «ROMZA» является "Золотым сертифицированным партнером" компании 1С-Битрикс с 27 марта 2008 года и по настоящее время ежегодно подтверждает этот высокий статус. Этот статус обеспечивает компании более высокую степень доверия со стороны клиентов, отражает более высокий уровень компетенции в области разработки веб­решений и дает дополнительные преимущества.

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

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

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

Далее после запуска продукта в продажу идет его продвижение и продажа, основными инструментам продвижения являются соц. сети, специализированные блоги, посты на тематических площадках, email - маркетинг. Продажа тиражных решений — это самое главное направление работы компании, продажа своих продуктов, а так же продажа платформы 1С- Битрикс [16]. Все решения компании «Romza» работают на этой платформе.

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

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

Для того чтобы более точно понять как должна работать система, все чаще используется описание функциональности системы через варианты использования (Use Case или прецеденты) [17]. Варианты использования это - описание последовательности действий, которые может осуществлять система в ответ на внешние воздействия пользователей или других программных систем. Варианты использования отражают функциональность системы с точки зрения получения значимого результата для пользователя, поэтому они точнее позволяют ранжировать функции по значимости получаемого результата.

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

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

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

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

1.2.Предлагаемые мероприятия по улучшению технологии решения задачи

Основным направлением работы компании Romza является разработка и продажа шаблонов сайтов на 1С-битриксе, а также продажа и консультация по продукту 1С-битрикс. В компании есть специализированный отдел продаж, который ежедневно выставляет счета для оплаты клиентам.

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

Пользователями данной системы будут менеджеры отдела продаж компании «Romza».C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image4.jpeg

Рисунок 1 - UML Диаграмма прецедентов системы CRM-ROMZA

На рисунке 5 показаны основные действия, которые будут доступны пользователю системы CRM-ROMZA.

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

Для формирования базы данных были определены следующие сущности, с которыми предстоит работать: «Компания», «Сделка», «Статус сделки»,

«Продукт», «Лицензия», «Шаблон счет - оферты» и «Счет - оферта».

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

Таблица 1 - Таблица базы данных сущности «Компания»

Сущность

Атрибуты

Тип данных

Компания (company)

ID (ключевой атрибут)

Integer

Клиент

Text

ИНН

Text

ОГРН

Text

ОКВЭД

Text

КПП ООО

Text

Банк

Text

Номер расчетного счета

Text

Номер корреспондентского счета

Text

БИК

Text

Почтовый адрес

Text

Фактический адрес

Text

E-mail

Text

Номер телефона

Text

Должность ООО

Text

ФИО сокращенно для подписи

Text

Серия

Text

№ паспорта

Text

Кем выдан

Text

Код подразделения

Text

Дата выдачи

DataTime

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

Таблица 2 - Таблица базы данных сущности «Статус сделки

Сущность

Атрибуты

Тип данных

Статус сделки (status)

ID (ключевой атрибут)

Integer

Название

Text

В таблице 2 сущности «Статус сделки» содержится всего два атрибута - ID и Название статуса.

Таблица 3 - Таблица базы данных сущности «Продукт»

Сущность

Атрибуты

Тип данных

Продукт (product)

ID (ключевой атрибут)

Integer

Название продукта

Text

Стоимость продукта

Integer

В таблице 3 сущности «Продукт» указывается название продукта и его стоимость.

Таблица 4 - Таблица базы данных сущности «Лицензия»

Сущность

Атрибуты

Тип данных

Лицензия (license)

ID (ключевой атрибут)

Integer

Название лицензии

Text

Стоимость лицензии

Integer

В таблице 4 сущности «Лицензия» так же, как и в таблице «Продукт» указывается название и стоимость лицензии 1С-Битрикс.

Таблица 5 - Таблица базы данных сущности «Шаблон счет - оферты»

Сущность

Атрибуты

Тип данных

Шаблон счет-оферты (invoice_template)

ID (ключевой атрибут)

Integer

Название

Text

Файл

Text

В таблице 5 сущности «Счет - оферта» содержатся файлы шаблонов, на основе которых будут формироваться конечные документы.

Таблица 6 - Таблица базы данных сущности «Счет - оферта»

Сущность

Атрибуты

Тип данных

Счет-оферта (invoice)

ID (ключевой атрибут)

Integer

Номер счета

Text

Дата создания

DataTime

Файл

Text

Шаблон счета (внешний ключевой атрибут)

Integer

Привязка к сделке (внешний ключевой атрибут)

Integer

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

Таблица 7 - Таблица базы данных сущности «Сделка»

Сущность

Атрибуты

Тип данных

Сделка (deal)

ID (ключевой атрибут)

Integer

Название сделки

Text

Дата создания

DataTime

Ответственный

Text

Сумма

Integer

Комментарий к сделке

Text

Цена продукта

Integer

Компания (внешний ключевой атрибут)

Integer

Продукт (внешний ключевой атрибут)

Integer

Лицензия (внешний ключевой атрибут)

Integer

Статус сделки (внешний ключевой атрибут)

Integer

Название лицензии

Text

Стоимость лицензии

Integer

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

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

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

Класс (class) - абстрактное описание множества однородных объектов, имеющих одинаковые атрибуты, операции и отношения с объектами других классов. Графически класс в нотации языка UML изображается в виде прямоугольника, который дополнительно может быть разделен горизонтальными линиями на разделы или секции. В этих секциях могут указываться имя класса, атрибуты и операции класса.

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

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image5.jpeg

Рисунок2 - UML Диаграмма прецедентов взаимодействия классов системы CRM-ROMZA

На рисунке 2 показана диаграмма Use Case, на которой изображено взаимодействие классов в системе. На этой диаграмме актерами изображены классы, а действия этих актеров (Use Case) изображают методы классов.

Посредством методов классы взаимодействуют друг с другом. Совокупность всех методов классов образует интерфейс системы.

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

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image6.jpeg

Рисунок 3 - UML Диаграмма классов системы CRM-ROMZA

На рисунке 3 изображена диаграмма классов Class Diagram UML [18], на которой представлена структура классов из диаграммы Use Case (рисунок 6). Из диаграммы видно, что экземпляр класса CrmDeal включает в себя объекты классов CrmCompany, CrmProduct, CrmLicense, CrmStatus. Все классы содержат общие методы Add(), Update() для создания и редактирования сущностей,

GetList(), GetLictCount() для организации постраничного вывода сущностей и GetByID() для вывода детальной страницы сущности. Класс Crmlnvoice имеет уникальный метод CreateInvoiceDocx(), с помощью которого происходит генерация готового документа счет-оферты.

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image7.jpeg

Рисунок 4 - UML Диаграмма компонентов системы CRM-ROMZA

На рисунке 4 изображена диаграмма компонентов системы. В роли компонента выступают модули сайта 1С-Битрикс. Модуль Main реализует классы CModule и CBitrixComponent, на основе которых были созданы модуль и компоненты системы CRM-ROMZA. Класс COption реализует хранение настроек модуля. Модуль Highload реализует класс HighloadBlockTable, через который реализована работа с сущностями системы CRM-ROMZA. Все классы необходимые для работы системы CRM-ROMZA находятся в модуле romza.crm и используют классы модулей Main и Highload.

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

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image8.jpeg

Рисунок 5 - UML Диаграмма развертывания системы CRM-ROMZA

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

Диаграмма взаимодействия предназначена для моделирования отношений между объектами, в нашем случае данные диаграммы покажут не просто взаимодействие классов системы между собой, а взаимодействие классов во времени, посредством методов [19]. Эти диаграммы покажут некий алгоритм работы системы.

На рисунке 6 изображена диаграмма последовательности UML [20], на которой показана последовательность действий во время выполнения метода «Получить список счетов».

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image9.jpeg

Рисунок 6 - UML Диаграмма последовательности системы CRM- ROMZA. Получение списка счетов.

В процессе получения списка счетов для каждого объекта счета мы запрашиваем объекты классов «Шаблон счета» (CrmInvoiceTemplate) и «Сделка» (CrmDeal).

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image10.jpeg

Рисунок 7 - UML Диаграмма кооперации системы CRM-ROMZA. Получение списка счетов

На рисунке 7 изображена диаграмма кооперации UML [20], на которой показано взаимодействие классов на примере метода GetList() класса CrmInvoice. Логика работы метода аналогична описанию диаграммы последовательности (рисунок 7).C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image11.jpeg

Рисунок 8 - UML Диаграмма последовательности системы CRM- ROMZA. Получение списка сделок.

На рисунке 8 изображена диаграмма последовательности UML, на которой показана последовательность действий во время выполнения метода «Получить список сделок».

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image12.jpeg

Рисунок 8 - UML Диаграмма кооперации системы CRM-ROMZA.

Получение списка сделок 30В процессе получения списка сделок для каждого объекта счета мы запрашиваем объекты классов «Компания» (CrmCompany), «Продукт» (CrmProduct), «Лицензия» (CrmLicense) и «Статус» (CrmStatus).

На основе представленных выше диаграмм был спроектирован и разработан модуль romza.crm на основе CMS 1С-Битрикс.

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image13.jpeg

Рисунок 9 - Структура модуля системы «CRM-ROMZA»

На рисунке 9 изображена диаграмма кооперации UML, на которой показано взаимодействие классов на примере метода GetList() класса CrmDeal. Логика работы метода аналогична описанию диаграммы последовательности.

На рисунке 9 показана структура модуля системы «CRM-ROMZA». В корне модуля лежит обязательный файл include.php, в котором происходит подключение сторонних библиотек, модулей, зависимостей, которые могут потребоваться. По умолчанию он пустой.

В файле options.php описывается в виде массива настройки модуля. В данном случае в нем хранятся реквизиты компании ROMZA, которые используются при генерации счета. Все описанные в файле options.php параметры доступны для редактирования на странице настроек модуля, в стандартной административной странице 1С-Битрикс.

В разделе admin хранятся страницы для использования в административном пространстве сайта. В директории lang хранятся файлы языковых сообщений (переводов) модуля. В папку install кладут исходные компоненты, шаблон сайта, файлы и т.д. Директория lib хранит файлы, в которых хранятся классы модуля. Последние две раздела рассмотрим подробнее.

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image14.jpeg

Рисунок 10 - Структура раздела install модуля системы «CRM-ROMZA»

На рисунке 10 показана структура раздела install модуля системы «CRM- ROMZA». В файле index.php описываются инструкции, которые выполняются в момент установки или удаления модуля. Файл version.php содержит в себе информацию о версии и дате текущего модуля. В директории components хранятся исходные компоненты системы, в директории public хранятся страницы публичной части сайта, остальные директории являются вспомогательными.

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image15.jpeg

Рисунок 11 - Список компонентов системы «CRM-ROMZA»

На рисунке 11 изображен список компонентов используемых в системе «CRM-ROMZA». Все компоненты находятся в директории romza, то есть в пространстве имен romza, в то время как встроенные компоненты 1С-Битрикс имеют пространстве имен bitrix. Название компонентов состоит из двух частей: имя сущности и вид взаимодействия над ней. Таким образом, company.add реализует страницу добавления/редактирования компании, company. detail используется для вывода детальной страницы компании и company.list для вывода списка компаний. Компонент index вызывается на главной странице, которая является собранной из трех списков компаний, сделок и счетов.

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image16.jpeg

Рисунок 12 - Структура компонента company.add

На примере компонента company.add (рисунок 12) рассмотрим стандартную структуру компонентов 1С-Битрикс. Файл .description.php хранит в себе название и описание компонента. В файле component.php выполняется вся логика компонента, включающая в себя запросы к БД и обработку результатов этих запросов. Результатом выполнения файла component.php является глобальный массив SarResult, которые передается в шаблон компонента.

Шаблоны компонентов хранятся в папке templates. У каждого компонента по умолчанию есть шаблон .default, который выводит результат работы components.php в виде готового HTML, CSS и JavaScript кода. Соответственно в файлах script.js и style.css находится JavaScript и CSS соответственно. В файле template.php хранится HTML разметка со вставками PHP кода.

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

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image17.jpeg

Рисунок 13 - Структура публичной части системы «CRM-ROMZA»

На рисунке 13 изображены разделы публичной части сайта системы «CRM-ROMZA». В каждом каталоге находится индексный файл index.php, в котором находится код вызова соответствующего компонента. В разделах company и deal дополнительно присутствуют файлы detail.php, которые вызывают компоненты отображения детальной страницы компании и сделки.

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

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image18.jpeg

Рисунок 14 - Список классов системы «CRM-ROMZA»

В корне модуля расположен раздел lib, который хранит классы системы «CRM-ROMZA» (рисунок 14). Название файла класса должно совпадать с названием класса, описанного в этом файле. При выполнении этого условия, классы подключаются автоматически в момент выполнения кода сайта.

2 глава. Проектная часть

2.1. Выбор средства для моделирования предметной области решаемой задачи

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

Система управления сайтом (Content Management System) — это программный продукт, который служит для разработки некоторых стандартных разновидностей сайтов. Большая часть сайтов строится именно на CMS- платформах. Требования к таким сайтам с технической точки зрения невысокие, а встроенные в CMS модули обычно удовлетворяют требуемым задачам. Примером служат отечественные коммерческие CMS 1С-Битрикс и UMI.CMS [21].

Фреймворк — это программный продукт, служащий основой для сайта, но обычно не содержащий в себе готовых программных модулей для реализации конкретных бизнес-процессов. При создании сайта на фреймворке, создают не только публичную часть сайта, но и проектируют базу данных, алгоритмы для модулей системы, создают административный интерфейс для управления проектом. Примером служат известные PHP-фреймворки Zend Framework [22], Drupal [23], Yii [24].

Saas (Software as Service - программное обеспечение как услуга) - это способ распространения ПО на арендной основе. В отличие от покупки готовой CMS или индивидуальной разработке на фреймворке достаточно только настроить выданный поставщиком сайт под свои задачи и оплачивать только аренду. Решение подходит для простых сайтов, временных проектов или для проверки своих бизнес-идей.

Платформой для разработки CRM-ROMZA был выбран продукт «1С- Битрикс: Управление сайтом», который сочетает представляет собой готовое решение CMS, и одновременно представляет фреймворк для разработки индивидуальных решений на базе 1С-Битрикс.

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

Модуль представляет собой модель данных и состоит из набора классов, которые обеспечивают работу с этими данными. На основе модулей создаются компоненты, являющиеся основным инструментов разработчика. Компонент - это логически завершенный код, предназначенный для извлечения информации из базы данных и отображения ее в виде фрагментов web-страниц. Состоит из собственно компонента (контроллер) и шаблона (представление). Таким образом, Bitrix Framework полностью отвечает шаблону MVC (Model-View- Controller: модель-вид-контролллер) [25].

Можно выделить следующие основные преимущества системы:

  • стабильность работы системы. Web-приложения, правильно разработанные на базе системы (под правильностью следует понимать следование рекомендациям по разработке системы, использование API системы), могут достаточно долго работать без специального обслуживания. В системе предусмотрена технология обновления (SiteUpdate), позволяющая постоянно следить за обновлениями системы;
  • безопасность системы. В состав системы входит модуль «Проактивная защита». Благодаря данному модулю система обеспечивает высокий уровень безопасности web-приложения;
  • удобный и понятный интерфейс;
  • универсальная среда разработки, наличие API системы. API системы обладает большим количеством классов и функций, позволяющих получить доступ ко всей функциональности модулей и построить web-приложение на базе работы модулей;
  • подробная документация. Документация по работе системы и по принципам построения web-приложения на базе системы доступна бесплатно и содержит в себе практически полное описание всех модулей системы, классов и методов API системы [26];
  • удобное представление данных web-приложения, хранящихся в базе данных.

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

Модуль может использовать как собственные таблицы, так и использовать уже готовые сущности 1С-Битрикс. Преимущество создания собственного решения в том, что его можно установить на любой сайт, работающий на IC-Битрикс и за считанные минуты развернуть готовый к работе сайт, использующий все преимущества системы, такие как «Проактивная защита» и мощная административная панель.

Для разработки web-приложения были использованы следующие программные средства:

  • для написания программного кода на стороне web-сервера: язык PHP[27];
  • для реализации доступа к страницам web-приложения посредством протокола HTTP: web-сервер Apache [28];для хранения и обработки данных: СУБД MySQL [29];
  • программный продукт «1С-Битрикс: Веб-окружение» [30], обеспечивающий работу связки MySQL 5.1.51, Apache 2.2.15 и PHP 5.3.2 на ОС Windows;
  • для написания программного кода на стороне клиента: язык JavaScript [31], библиотека jQuery и набор расширений для пользовательского интерфейса jQuery UI [32];
  • для реализации асинхронных запросов к web-серверу: технология AJAX

[33];

  • для стилизации внешнего вида web-страниц: язык гипертекстовой разметки HTML5 [34], таблица каскадных стилей CSS [35], популярный фреймворк Bootstrap 3 [36].

PHP (PHP: Hypertext Preprocessor - «PHP: препроцессор гипертекста») - язык для написания сценариев, исполняемых на компьютере web-приложения посредством интерпретации исходного кода. Основное предназначение языка PHP - это выполнение на сервере сценариев, например, обрабатывать данные форм, генерировать динамические страницы, отсылать и принимать cookies.

PHP способен не только выдавать HTML. Возможности PHP включают формирование изображений, файлов PDF и даже роликов Flash (с использованием libswf и Ming), создаваемых "на лету". PHP также способен выдавать любые текстовые данные, такие, как XHTML и другие XML-файлы.

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

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

Web-сервер Apache - свободный web-сервер, наиболее часто используемый в Unix-подобных операционных системах. Основными достоинствами Apache считаются надёжность и гибкость конфигурации.

Apache предоставляет удобные средства конфигурации как на уровне всего web-приложения (настройка файла httpd.conf), так и на уровне директории (настройка файла .htaccess). Указанная выше особенность позволяет удобно управлять действиями web-сервера при обработке запроса к тем или иным страницам и разделам web-приложения.

Web-сервер Apache позволяет включить дополнительный модуль обработки URL - mod_rewrite. Данный модуль является средством преобразования URL, который указан в запросе к web-приложению, из одной формы в другую согласно заранее написанным правилам (RewriteRule). Для написания правил обработки и преобразования URL используются регулярные выражения (Regular expressions). Таким образом, можно создавать псевдонимы имен web-страниц, делая внешний вид URL, которые использует web-клиент при запросах к web-серверу, более короткими, читабельными и запоминающимися.

В процессе разработки web-приложения и в данный момент, когда web- приложение функционирует и доступно пользователям, Web-сервер Apache используется мной для обеспечения возможности доступа web-клиентов к ресурсам web-приложения посредством протокола HTTP, координации работы web-приложения, ограничения доступа к некоторым разделам и страницам web- приложения, обработки и преобразования URL, указанных в запросах web- клиентов.

СУБД MySQL представляет собой систему управления реляционными базами данных с поддержкой языка SQL. СУБД MySQL предоставляет все основные средства для хранения, обработки и изменения данных. В СУБД MySQL поддерживается возможность выбора типа таблиц. Основными типами являются MylSAM и InnoDB.

Таблицы с типом InnoDB поддерживают транзакции на уровне отдельных записей. MySQL имеет API для языка PHP (и многих других языков), а также обеспечивает поддержку для ODBC посредством ODBC-драйвера MyODBC.

В процессе разработки web-приложения и в данный момент, когда web-

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

Программный пакет «1С-Битрикс: Веб-окружение» позволяет быстро и с минимальными затратами развернуть оптимальное окружение для работы продуктов и решений «1С-Битрикс». Программа содержит удобный и понятный мастер, который автоматически установит все ПО, что необходимо для работы с продуктами и решениями «1С-Битрикс»: MySQL 5.1.51, Apache 2.2.15, PHP Catdoc, xpdf и msmtp. Является лучшим решением для пользователей и разработчиков, использующих Windows платформу в качестве основной среды разработки и размещения проектов и решений «1С-Битрикс».

Язык программирования JavaScript - объектно-ориентированный язык программирования для написания сценариев. Чаще всего JavaScript используется для написания сценариев работы с web-страницами, отображаемыми web-браузером. Web-браузер интерпретирует код сценария языка JavaScript, и на основе описанных в сценарии действий производит манипуляции с разметкой web-страницы. Таким образом, посредством языка JavaScript реализуется возможность программирования на стороне клиента.

Язык JavaScript предоставляет возможность доступа к элементам разметки web-страницы посредством объектов. При создании сценариев на языке JavaScript приходится сталкиваться с трудностями, связанными с тем, что различные web-браузеры могут по-разному интерпретировать эти сценарии. Самые серьезные трудности возникают, если какой-либо из браузеров не поддерживает тот или иной объект, метод или свойство. Наиболее практичным и современным способом решения данной проблемы является использование свободной библиотеки jQuery.

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

Технология AJAX (Asynchronous Javascript and XML - «асинхронный JavaScript и XML») - технология, посредством которой возможно осуществить асинхронный запрос к компьютеру web-приложения. Другими словами, это запрос, который не требует перезагрузки страницы web-клиентом.

Технология AJAX предоставляет возможность по какому-либо действию пользователя (например, нажатие на ссылку) не осуществлять запрос на полное получение web-страницы, а получать только нужную в данный момент часть web-страницы. Таким образом, снижается объем данных, передаваемых между компьютером web-приложения и компьютером пользователя, следовательно, снижается время, которое требуется на запрос и получение ответа. Кроме того, за счет того, что страница не перезагружается, у пользователя создается впечатление непрерывной работы с web-приложением.

Библиотека jQuery предоставляет мощные функциональные методы для работы с AJAX с поддержкой callback-функций, форматом ответа xml или json, выбором метода передачи данных на сервер POST или GET.

Таблица стилей CSS (Cascading Style Sheets - каскадные таблицы стилей)

  • технология описания внешнего вида документа, написанного языком разметки. Основной целью разработки CSS являлось разделение содержимого (написанного на HTML или другом языке разметки) и представления документа (написанного на CSS). Это разделение может увеличить доступность документа, предоставить большую гибкость и возможность управления его представлением, а также уменьшить сложность и повторяемость в структурном содержимом.

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

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

2.2 Моделирование предметной области решаемой задачи с использованием объектно-ориентированного подхода к проектированию

Например, страница настроек модуля, которая изображена на рисунке 19. В нашем случае в модуле хранятся все реквизиты компании «Romza», чтобы в

На рисунке (рисунок 14) изображена шапка сайта, которая состоит из административной панели 1С-Битрикс, логотипа компании и главного меню сайта. Нажав на кнопку «Администрирование» происходит переход непосредственно на главную страницу административной панели 1С-Битрикс, через которую происходит управление сайтом в целом, контентом и др.

C:\Users\progr5\AppData\Local\Temp\FineReader11\media\image19.jpeg

Рисунок 14 - Меню системы CRM-ROMZAбудущем была возможность изменить их. При этом, изменив реквизиты в настройках модуля, не будет ошибки при формировании счет-оферты, потому что реквизиты автоматически подставляются при формировании, а не прописаны в шаблоне счет-оферты. Для хранения настроек модуля используется стандартный механизм 1С-Битрикс.

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

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

К примеру, при формировании акта на оказание услуг компании «Romza», физическое лицо действует на основании паспорта гражданина РФ. В связи с этим менеджер должен внести в систему данные паспорта контрагента. Для этого предназначены дополнительные поля «Серия», «№ паспорта», «Кем выдан», «Код подразделения» и «Дата выдачи».

При внесении в базу данных системы контакта юридического лица, становятся доступны дополнительные поля «ИНН», «ОГРН», «ОКВЭД», «КПП ООО», «Банк», «Номер расчетного счета», «Номер корреспондентского счета» и «БИК».

Поля формы «Клиент», «Телефон» и «Email» являются обязательными для заполнения для всех типов лиц.

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

Раздел списка компаний состоит из двух частей: формы поиска и собственно самого списка. Для каждой компании выводится ее название (поле «Клиент»), а так же номер телефона и адрес электронной почты.

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

Что касается полей списка компаний, то возле наименования компании располагаются кнопки «Редактировать» и «Создать сделку», а также ссылка «Подробнее», которая ведет на детальную страницу компании.

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

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

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

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

Также в меню системы есть отдельный пункт «Добавить сделку», при нажатии на него происходит переход на форму добавления-редактирования сделки.

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

Кроме этой информации в форму необходимо занести название сделки.

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

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

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

На форме добавления-редактирования сделки важным является «Статус сделки». Он показывает на какой стадии находится сделка в данный момент. В системе существует два статута для сделки: «В обработке» и «Сделка завершена».

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

После сохранения сделки, она отобразится на странице «Список сделок» , доступной через пункт меню «Сделки».

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

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

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

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

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

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

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

На форме добавления счета находятся следующие поля: номер счета, сделка и шаблон для формирования счета.

В поле «Номер счета» указывается уникальный номер счет-оферты, который будет подставлен в готовый документ.

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

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

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

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

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

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

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

После того, как найдет требуемый счет, в его поле можно увидеть две кнопки: «Скачать» и «Удалить». При нажатии на кнопку «Удалить» происходит удаление счета из системы, то есть в системе не предусмотрено его редактирование.

В дальнейшем можно продолжать работу с этим файлом, либо что-то отредактировать, сохранить как в формате Word либо PDF и отправить клиенту на оплату.

Заключение

В разрезе данного проекта экономическая эффективность является обоснованной и проект достаточно эффективный. Кроме финансовой выгоды, для пользователей системы «CRM-ROMZA» выгоды от использования будут следующие:

  1. значительная экономия времени при формировании документа;
  2. повышается общее количество задач менеджера;
  3. структурированная информация о клиентах фирмы.

Основным преимуществом данной системы является автоматизация процесса формирования расчетных документов для клиентов компании и формирование общей базы учета информации о клиентов. Работа менеджеров с системой осуществляется через любой удобный для пользователя Web-браузер.

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

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

На основе анализа был разработан список концептуальных требований к информационной системе, которые отвечали поставленным задачам компании «Romza».

Следующей задачей была разработка и реализация программного обеспечения в виде модуля romza.crm на основе фреймворка Bitrix Framework. Разработка в виде модуля для 1С-Битрикс была выбрана как лучшая альтернатива существующим системам управления содержимым сайта.

Во второй главе представлен результат определения функциональных требований к информационной системе учета клиентской информации компании «Romza». На основе выявленных требований была сформирована концепция и логическая структура информационной системы учета клиентской информации и ее программная архитектура. Результаты проектирования представлены в виде диаграмм на языке UML.В третьей главе приводятся описания выбранных программных средств и технологий для реализации информационной системы учета клиентской информации.

Представлена модульная структура и физическое представление информационной системы. Представлено подробное описание работы информационной системы. Проведена оценка эффективности внедрения разработанной системы в компании "Romza".

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

  1. общую для компании стандартизированную базу контактов;
  2. эффективно осуществлять контроль качества работы отдела продаж в любой момент времени;
  3. получить статистику и аналитику эффективности работы с лидами.

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

Список литературы:

  1. Андерсон К., Керр К.. Менеджмент, ориентированный на потребителя / К. Андерсон — М.: ФАИР-ПРЕСС, 2003. — 159 с.
  2. Арлоу Д., Нейштадт А. UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование / Д. Арлоу; пер. с англ. Н. Шатохина - М.: Символ-Плюс, 2007. — 536 с.
  3. Атре, Ш. Структурный подход к организации баз данных / Ш. Атре; пер. с англ. А.А. Александрова и В.Ш. Будзко; под ред В.И. Будзко. - М.: Финансы и статистика. 1983. - 468 с.
  4. Барановская Т. П., Лойко В. И., Семенов А. И. Информационные системы и технологии в экономике 2-е изд. / Т.П. Барановская — М.: Финансы и статистика, 2006. — 323 с.
  5. Битрикс 24 [Электронный ресурс]: информация о компании, команде,
  6. Буч Г., Рамбо Д., Джекобсон А.. Язык UML. Руководство пользователя - The Unified Modeling Language user guide. - 2-е изд. / Г. Буч — М., СПб.: ДМК Пресс,Питер, 2004. - 432 с.
  7. Буч Г., Рамбо Д., Якобсон И. Язык UML. Руководство пользователя. 2­е изд / Г. Буч; пер. с англ. Н. Мухин - М.: ДМК Пресс, 2006. - 496 с.
  8. Буч Г., Якобсон А., Рамбо Дж. UML. Классика CS / С. Орлов. - 2-е изд. / Г. Буч - СПб.: Питер, 2006. - 736 с.
  9. Венделева М.А. Информационные технологии управления: учеб. Пособие для бакалавров / М.А. Венделева , Ю.В. Вертакова - М: Издательство Юрайт, 2011. - 362 с.
  10. Вендров, А.М. CASE технологии. Современные методы и средства проектирования информационных систем. / А.М. Вендров - М.: Финансы и статистика, 1998. - 165 с.
  11. Вигерс, К. Разработка требований к программному обеспечению / К. Вигерс - М.: Издательско-торговый дом «Русская редакция», 2004. - 136 с.
  12. Гольцман B.,MySQL 5.0. Библиотека программиста / В. Гольцман - Спб.: Питер, 2010. - 159 с.
  13. Гринберг П. CRM со скоростью света. Привлечение и удержание клиентов в реальном времени через Интернет / П. Гринберг - М.: Символ- Плюс, 2016. - 239 с.
  14. Документация для разработчиков 1С-Битрикс [Электронный ресурс]: описание всех модулей и классов BitrixFramework // компания 1С -Битрикс. - Режим доступа: https://dev.1c-bitrix.ru/api_help/.
  15. Елифёров В.Г. Репин В.В. Бизнес процессы: Регламентация и управление: Учебник / В.Г. Елифёров , В.В. Репин - М.:ИНФРА-М, 2009. - 89 с.
  16. Когловский, М.Р. Технология баз данных на персональных ЭВМ / М.Р. Когловский - М.: Финансы и статистика, 1992. - 421 с.
  17. Кудинов А., CRM: Практика эффективного бизнеса [Текст] - Москва.: 1С-Паблишин, 2012. - 136 с.
  18. Кудинов А., CRM: Российская практика эффективного бизнеса / А. Кудинов - Спб.: Питер, 2008. - 225 с.
  19. Кузнецов, М.В. РНР 5. Практика разработки Web-сайтов / М.В. Кузнецов - СПб. : БХВ-Петербург, 2005. - 960 с.
  20. Лабберс П., Олберс Б., Салим Ф., HTML5 для профессионалов Мощные инструменты для разработки современных веб-приложений [Текст] - СПб.: Питер, 2011. - 236 с.
  21. магазина / В. Петин - М.: Вильямс, 2011. - 165 с.
  22. Маклафлин Б.. PHP и MySQL. Исчерпывающее руководство / Б. Маклафлин ; пер. с англ. Н. Вильчинский - Спб.: Питер, 2013. - 507 с.
  23. Мацяшек, Л.А. Анализ требований и проектирование систем. Разработка информационных систем с использованием UML / Л.А. Мацяшек - М.: Юрайт, 2002.-189 с.
  24. Молино П. Технологии CRM. Экспресс-курс / П. Молино; пер. с англ. Т. Новикова — М.: ФАИР-ПРЕСС, 2003. — 159 с.
  25. Ньюэлл Ф. Почему не работают системы управления отношениями с клиентами (CRM) / Ф. Ньюэлл; пер. с англ. А. Стативка - М.: Издательство Добрая книга, 2004. - 368 с.
  26. Орлов, С.А. Технология разработки программного обеспечения / С.А. Орлов - Спб.: Питер, 2002 - 464 с.
  27. Официальный сайт Avay [Электронный ресурс]: информация о компании, бизнес - коммуникациях, и продуктах компании // Avay ltd. - Режим доступа: http://www.avaya.com/ru/.
  28. Официальный сайт crm - системе Amocrm [Электронный ресурс]: информация о crm - системе // компания АО «амоЦРМ» - Режим доступа: http://www.amocrm.ru/.
  29. Официальный сайт Umi-cms [Электронный ресурс]: дистрибутив и документация Umi-cms // Юмисофт. - Режим доступа: http://www.umi-cms.ru/.
  30. Официальный сайт библиотеки JqueryUI [Электронный ресурс]: дистрибутив и документацию JS-фремворка // Официальный сайт библиотеки JqueryUI. - Режим доступа: https://jqueryui.com/.
  31. Официальный сайт веб-студии Romza [Электронный ресурс]: информация о компании, команде, продуктах // веб-студия "Romza". - Режим доступа: http://www.romza.ru/.
  32. Официальный сайт компании Asterisk [Электронный ресурс]: информация о компании, команде, продуктах // компания Digium Inc. - Режим доступа: http://asterisk.ru/.
  33. Официальный сайт компании Onlyoffice [Электронный ресурс]: информация о
  34. Официальный сайт компании Terrasoft [Электронный ресурс]: информация о crm - системе // компания Terrasoft - Режим доступа: https://www.terrasoft.ru/sales.
  35. Официальный сайт компании Мегаплан [Электронный ресурс]: информация о crm - системе // Иностранное унитарное предприятие "Облачные решения" - Режим доступа: https://megaplan.ru/crm/.
  36. Официальный сайт коспани 1С-Битрикс [Электронный ресурс]: информация о компании, команде, продуктах // компания 1С-Битрикс. - Режим доступа: http://www.1c-bitrix.ru/.
  37. Официальный сайт продукта Рули 24 [Электронный ресурс]: информация о crm - системе // компания ИЛЛАДА - Режим доступа: http://ruli24.ru/crm/.
  38. Пейн Э., Информационные технологии маркетинга. Управление взаимоотношениями с клиентами / Э. Пейн - Спб.: Питер, 2007. - 185 с.
  39. Петин В., Сайт на AJAX под ключ. Готовое решение для интернет-
  40. Продукт компании 1С-Битрикс - Веб-окружение [Электронный ресурс]: дистрибутив и инструкцию к продукту // компания 1С-Битрикс. - Режим доступа: http://www.1c-bitrix.ru/products/env/#tab-env-link.
  41. продуктах // компания 1С-Битрикс. - Режим доступа: https://www.bitrix24.ru/. 11.
  42. Рускоязычное сообщество Saas[Электронный ресурс]: информация о продуктах, статьи на данную тематику // Рускоязычное сообщество Saas - Режим доступа: http://saas.ru/.
  43. Русскоязычное сообщество Bootstrap-3[Электронный ресурс]: дистрибутив и документацию CSS-фремворка // Русскоязычное сообщество Bootstrap-3. - Режим доступа: http://bootstrap-3.ru/index.php.
  44. Русскоязычное сообщество фремворка Drupal [Электронный ресурс]: дистрибутив и документацию Drupal // торговая марка Дриса Байтаерта. - Режим доступа: http://www.drupal.ru/.
  45. Русскоязычное сообщество фремворка Yiiframework [Электронный ресурс]: дистрибутив и документацию Yiiframework // компания Yii Software LLC. - Режим доступа: http://yiiframework.ru/.
  46. Русскоязычное сообщество фремворка Zendframework [Электронный ресурс]: дистрибутив и документация Zendframework // Zend Technologies Ltd. - Режим доступа: http://zendframework.ru/.
  47. Сенкевич Г.Е. Информационная система малого предприятия "с нуля". Самое необходимое / Г.Е. Сенкевич — Спб.: БХВ-Петербург, 2012. — 285 с.
  48. Флэнаган Д., JavaScript. Подробное руководство / Д. Флэнаган - М.: Символ-Плюс, 2001. - 354 с.
  49. Фримен Э., Фримен Э., Сьерра К., Бейтс Б. Паттерны проектирования [Текст] / Э. Фримен; пер. с англ. Е. Матвеев - СПб.: Питер, 2016. - 336 с.
  50. Хеник Б., HTML и CSS Путь к совершенству [Текст] - Москва.: Вильямс, 2011. - 153 с.
  51. Хокинс С., Администрирование web-сервера Apache и руководство по электронной коммерции / С. Хокинс - М.: Вильямс, 2001. - 265 с.
  52. Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных: Учебник для высших учебных заведений/Под ред. проф. А.Д. Хомоненко - СПб.: КОРОНА принт, 2002. - 672 с.
  53. Шуремов Е.Л., Заложнев А.Ю., Руководство по CRM. Путь к совершенствованию менеджмента клиентов / Е.Л. Шуремов - Спб.: Питер, 2009. - 95 с.