Диплом: Разработка WEB-представительства студии корпусной мебели "ВК МЕБЕЛЬ"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
106
2.3 Программное обеспечение задачи
2.3.1 Общие положения (дерево функций и сценарий диалога)
Хотелось бы представить дополнительную информацию по функциям сайта в
целом, не системы.
У сайта компании есть три основных функции — это информационная,
коммуникационная и маркетинговая.
Информационная функция
Информационная функция заключается в том, чтобы предоставить
пользователю, как можно более полную информацию о услугах, которые
предлагает компания. Недостаток полного спектра необходимой информации
— это серьезная ошибка, которая приводит к тому, что пользователи,
пришедшие на сайт не конвертируются в покупателей услуги.
Коммуникационная функция
Еще одна важная функция, которую должен выполнять сайт — это
коммуникационная функция, цель которой наладить каналы общения с
потенциальным покупателей, потребителями услуг компании. Наверняка у
будущего клиента возникнут какие-либо вопросы, ему захочется что-то
обсудить, пообщаться с такими же покупателями. Для того, чтобы данный
процесс проходил наиболее комфортно, на сайте должна быть создана
коммуникационная среда. Это может быть просто удобные инструменты
обратной связи (формы обратной связи, прямой онлайн чат с консультантом),
на более крупных проектах могут быть использованы более масштабные
инструменты коммуникации, такие как форум, корпоративный блог,
присутствие в социальных сетях. Чем лучше развита коммуникационная
функция сайта, тем проще наладить контакт с клиентом и тем охотнее он
пойдет на сделку.
Маркетинговая функция
Маркетинговая функция сайта отвечает за продажи. Это одна из главных
функций, которая позволяет его владельцем получать постоянную прибыль.
107
В рамках этой функции до посетителя нужно донести информацию о том
почему, купить этот товар или услугу нужно именно у данной компании, то
есть конкурентные преимущества компании должны быть видны
пользователю, едва он зашел на сайт. Второй момент — это создать удобный
интерфейс покупки. Пользователь должен четко понимать, как ему купить
товар или услугу, как заплатить за нее, при получении товара, с помощью
банковской карты или платежной системы. Понимать, как и когда доставят
товар или если речь идет об услуге, когда он сможет ей воспользоваться.
Словом, маркетинговая функция сайта призвана убедить посетителя купить у
компании и сделать так, чтобы процесс покупки прошел легко и комфортно.
Рис. Дерево функций проекта
108
Схематическое представление возможных вариаций диалога пользователя с
системой прдставлен на рисунке ниже. Дополнительными факторами
является то, что пользователь в зависимости от посещенных разделов или
страниц приложения может переключить диалог с системы на менеджера
компании, в зависимости от его анализа, требований и определенности по
отношению к факторам компании.
Рис. Сценарий диалога пользователя
109
2.3.2 Характеристика базы данных
В системе используется СУБД PostgreSQL. База данных состоит из 6 таблиц.
Для зрительного проектирования базы данных употреблялся программный
продукт Dia.
GNU Dia - это простой, но весьма функциональный редактор диаграмм от
проекта GNU. Он содержит все необходимые инструменты и достаточно
обширную коллекцию предустановленных объектов для добавления в
диаграммы. Dia содержится в стандартных репозиториях Ubuntu.
ER-диаграмма базы данных приведена на рисунке ниже.
Рис. ER-Модель базы данных приложения
Вся логика приложения построена на основании реализации MVC
фреймворка Ruby on Rails, в связи с этим существует ряд моделей, которые
не связаны с общей er-моделью базы данных. Но являются неотъемлемой
частью системы в целом.
Model-View-Controller (MVC, «Модель-Представление-Контроллер»,
«Модель-Вид-Контроллер») — схема разделения данных приложения,
пользовательского интерфейса и управляющей логики на три отдельных
компонента: модель, представление и контроллер — таким образом, что
модификация каждого компонента может осуществляться независимо.
110
Модель (Model) предоставляет данные и реагирует на команды
контроллера, изменяя свое состояние.
Представление (View) отвечает за отображение данных модели
пользователю, реагируя на изменения модели.
Контроллер (Controller) интерпретирует действия пользователя,
оповещая модель о необходимости изменений.
Далее приведена характеристика таблиц базы данных.
Таблица « users »
Наименование
Идентификатор
Длина
поля
E-mail
email
255
Encrypted password
encrypted_password
255
Reset password token
reset_password_token
255
Reset password sent at
reset_password_sent_at
8
Remember created at
remember_created_at
8
Sign in count
sign_in_count
Current sign in at
current_sign_in_at
8
Last sign in at
last_sign_in_at
8
Current sign in ip
current_sign_in_ip
Last sign in ip
last_sign_in_ip
Created at
created_at
8
Updated at
updated_at
8
Имя пользователя
username
255
Таблица « slides »
Наименование
Идентификатор
Тип данных
Длина
поля
Image
image
string
255
111
Created at
created_at
datetime
8
Updated at
updated_at
datetime
8
Таблица « categories »
Наименование
Идентификатор
Тип данных
Длина
поля
Image
title
string
255
Description
description
text
Created at
created_at
datetime
8
Updated at
updated_at
datetime
8
Таблица « ckeditor_assets »
Наименование
Идентификатор
Тип данных
Длина
поля
Data file name
data_file_name
string
255
Data content type
data_content_type
text
Data file size
data_file_size
integer
Type
type
string
Width
width
integer
Height
height
integer
Created at
created_at
datetime
8
Updated at
updated_at
datetime
8
* длина поля, как правило, генерируется системой rails. В большей степени
устанавливается максимально-допустимое значение.
Некоторые составляющие таблицы генерируются в ходе реализации проекта.
112
2.3.3 Структурная схема пакета (дерево вызова программных модулей)
При входе в систему загружается модуль «Главная страница» (index.rb),
которая подключает модуль «Шаблона приложения». Данный модуль
позволяет отобразить внешний вид в соответствии с указанными условиями
системы. Для более гибкой настройки шаблонизации, файл шаблона
разбивается на ряд файлов, верхняя часть сайта – «Шапка сайта»
(_header.html.slim) и «Подвал сайта» (_footer.html.slim). Следующим этапом
производится подключение модуля «Слайдер», он обеспечивает полную
функциональность, представленную на главной странице.
Модуль «Категории» обеспечивает отображение списка категорий каталога,
если необходимо, возможен вывод информации по каждой категории
(описание, проекты категории, количество проектов к категории и т.д.).
Модуль «Дополнительное меню» обеспечивает функционал страниц сайта,
отличных от основной категории страниц. Это дополнительный функционал
системы, представленный для удобства пользователя. В него входит модуль
«Обратная связь», который имеет свой шаблон представления страницы,
функционал, по отправке данных на почту компании, различные проверки
валидации данных. Модуль «Карта сайта» обеспечивает визуализацию
построения структуры системы, с возможностью навигации. Модуль «Поиск
по сайту» обеспецивает поиск данных по всему сайту, разработана система
валидации и вариации результатов данных.
Модуль «Главное меню» представлен в виде списка основных страниц сайта,
имеет шаблон представления. Обеспечивает основную навигацию по
системе. Содержит следующие модули: модуль «О компании», модуль
«Услуги», модуль «Контакты», модуль «Каталог». Все перечисленные
модули имеют схожий функционал за исключением модуля «Каталог». В
него включены дополнительные функции, имеет внутреннюю структуру
категорий и проектов.
113
Рис. Дерево вызова программных модулей
114
Рис. Дерево вызова программных модулей - продолжение
115
2.3.4 Описание программных модулей
В данном разделе не имею возможности представить развернутую блок-
схему веб-приложения, в связи с тем, что нет определенного алгоритма
работы приложения. Работа основана на паттерне проектирования MVC, как
ранее упоминалось, может быть перечислено множество вариаций
построения цепочки событий в зависимости выбора со стороны
пользователя. При выборе действия влиет множество факторов, определение
контроллера, модели, вариаций фильтров, представлений (или видов)
страниц приложения.
Таблица описания функций модулей
№ п/п
Наименование
Функции
1
Авторизация
Осуществляет доступ к административной
панели сайта
2
Административная
панель
Предоставляет управление веб-сайтом,
настройки, добавление, редактирование
информации и т.д.
3
Модель - категории
Осуществляет добавление, удаление,
изменение категорий каталога работ
4
Модель -
пользователи
Осуществляет добавление, удаление,
изменение информации пользователей
сайта. Предоставляет настройки по ним,
пароль, имя пользователя, права, учет
системы авторизации и другие данные
5
Модель - слайдер
Осуществляет добавление, удаление,
изменение слайдов на главной странице
6
Модуль - CKEditor
Позволяет загружать файлы, изображения
на сайт, предоставляет удобный редактор
для редактирования информации.

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

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