Файл: «Управление взаимоотношениями с клиентами с помощью UML».pdf
Добавлен: 16.06.2023
Просмотров: 394
Скачиваний: 6
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С-Битрикс, через которую происходит управление сайтом в целом, контентом и др.
Рисунок 14 - Меню системы CRM-ROMZAбудущем была возможность изменить их. При этом, изменив реквизиты в настройках модуля, не будет ошибки при формировании счет-оферты, потому что реквизиты автоматически подставляются при формировании, а не прописаны в шаблоне счет-оферты. Для хранения настроек модуля используется стандартный механизм 1С-Битрикс.
Далее рассмотрим подробнее разделы главного меню. Предположим, что менеджер компании собирается заключить сделку с новым клиентом, соответственно первое, что необходимо сделать, это занести данные о новом клиенте, в контексте этой системы «компания» и «клиент» это одно то же.
Для того чтобы занести данные о новом клиенте в систему, необходимо перейти на форму добавления-редактирования компании, выбрав пункт меню «Добавление компании». При добавлении компании сначала необходимо выбрать тип контрагента, «физическое лицо» либо «юридическое лицо» . В зависимости от выбранного типа, на форме добавления- редактирования появятся поля для заполнения соответствующих реквизитов.