Диплом: Автоматизация службы помощи на дому сети клиник «БУДЬ ЗДОРОВ»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
42
4. РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
4.1 Концепция архитектуры программного обеспечения
Программное обеспечение сайта является, по сути, «клиент-серверным
веб-приложением. Клиентский процесс организуется браузером
пользователя, а серверный процесс организуется HTTP-сервером [2,4].
Клиентский процесс реализуется интерфейсом пользователя
посредством браузера. Посредством браузера формируются запросы
пользователя на загрузку определенных веб-страниц. Браузер пользователя
получает ответы сервера в виде сформированных HTTP-CSS страниц и
отображает эти страницы на экране пользователя. Приложение в виде PHP
скриптов, сценариев, реализует логику веб-приложения. HTTP-сервер
получает запрос от клиентского процесса на загрузку веб-страниц, выполняет
интерпретацию кода, формируется веб-страница и отправляется клиентскому
процессу по сети.
Таким образом в архитектуре данного приложения реализуется
классическая клиент-серверная архитектура, когда существуют клиентский
процесс, организуемый браузером пользователя, и процесс серверный и эти
процессы обмениваются сообщениями. Пользователь посредством браузера
отправляет запрос серверу в виде требования на определенную страницу с
определенными данными, сервер обращается к серверу базы данных,
получает данные из базы данных, формирует на базе этих данных веб-
страницу и отправляет браузеру пользователя для воспроизведения этой
информации на экране пользователя посредством браузера.
43
4.2 Используемые базовые программные средства
Клиент-серверная архитектура реализована на платформе Linux с
программным обеспечением Аpache, PHP, MySQL. В качестве пакета для
создания базы данных и управления базой данных используются
phpMyAdmin и HeidiSQL. Преимуществом программного обеспечения
является открытый код и наличие различных бесплатных приложений,
обеспечивающих сравнительную простоту разработки приложений.
Большое количество профессиональных сайтов и веб-приложений
базируется на хостингах общего использования - хостах (shared hostings). На
одном или нескольких веб-серверах хостятся большое количество веб-сайтов,
веб приложений.
Управление программным обеспечением веб-приложений,
расположенных на хостах общего пользования, производится с помощью
FTP-клиентских приложений. Это специальное клиентское программное
обеспечение, например, GuteFTP 8 Professional, WinSCP. Используя FTP-
клиенты администрируется программное обеспечение сайта, веб-приложения
на удаленном хосте – добавлять файлы, редактировать и удалять файлы.
В настоящей разработке использовалась программа WinSCP. Эта
программа является бесплатным FTP-клиентом, который позволяет
загружать файлы веб-приложения на сервер, редактировать и удалять их. Для
разработки модулей веб-приложения на компьютере разработчика
использовалась программа Notepad++, которая позволяет не только
редактировать разрабатываемый код, но и контролировать возможные
ошибки разработчика программного обеспечения на языках html, php и
других.
44
4.3 Реляционная база данных MySQL
СУБД MySQL, это система, поддерживающая реляционную модель баз
данных, которая, с успехом используется в составе бесплатных программных
продуктов Unix, Linux …, Apache, PHP. Они предоставляют разносторонние
инструменты быстрой разработки веб-приложений и их поддержку.
MySQL, это многопользовательский, «много потоковый» сервер баз
данных. Он базируется на использовании стандартного структурированного
языка запросов SQL (Structured Query Language) [4,9].
Для разработки сайта и его функционала был использован язык
сценариев PHP. В частности, язык PHP использует встроенные команды для
взаимодействия с СУБД MySQL посредством языка запросов SQL. Когда
HTTP-сервер интерпретирует программный код и встречает команды с SQL-
запросами, он обращается к серверу баз данных MySQL для выполнения
запроса к базе данных. Это может быть получение данных по запросу или
добавление, обновление данных в базе данных. Затем происходит
дальнейшее выполнение php-кода.
4.4 Использование phpMyAdmin при разработке БД
База данных сайта создана с помощью интерактивного пакета
phpMyAdmin. Этот программа имеет открытый код и создана на языке php,
Она является веб-приложением, которое предоставляет веб-интерфейс
разработчикам. С помощью этого веб-интерфейса можно создавать таблицы
и поля базы данных, управлять содержанием базы данных, добавляя, удаляя
или обновляя данные на этапе разработки базы данных веб-приложения.
Функциональные возможности пакета позволяют также генерировать SQL-
запросы к базе данных, в диалоговом режиме. Важным функционалом
является возможность создания дампов базы данных для сохранности данных
45
или последующего импорта при инсталляции веб-приложений на новом
хостинге.
Для разработки базы данных сайта был создан на хостинге
соответствующий уникальный аккаунт. Он обеспечивает возможность
доступа к базе данных сайта. При этом не возможен доступ к другим базам
данных, которые также находятся под управлением MySQL (рисунок 3.1).
Для вызова phpMyAdmin необходимо в строке браузера набрать адрес
http://diofant.com/phpMyAdmin и затем в поле логина и пароля необходимо
ввести: логин= homedoctor, пароль= homedoctor,
Рисунок 4.1 - Структура БД в представлении phpMyAdmin
В процессе разработки можно изменять состав и наименования таблиц
базы данных, но при этом соответственно необходимо проводить обновление
в скрипте Table_Headers.php, где описываются наименования таблиц и полей
на русском языке для представления таблиц на экране дисплея пользователя.
Все данные для связи с базой данных и открытия базы данных находятся в
блоке DB_Data.php.
46
4.5 Использование объектно-ориентированного подхода
Как было сказано выше, программное обеспечение динамических веб-
страниц сайта разработано на языке PHP. Программное обеспечение
использует технологические свойства языка, называемые объектно-
ориентированным программированием подходом (ООП), реализованным в
рамках этого языка программирования.
Объектно-ориентированное программирование, это современная
технология разработки программного кода. Оно дает возможность
структурировать программное обеспечение. В основе ООП в PHP лежит
понятие классов, состоящих из свойств и функций внутри классов. Это дает
возможность изменять и дополнять функции без значительных изменений
кода. Класс в языке php, это шаблон для объектов определенного типа. На
базе этого шаблона создаются и используются в программах множество
объектов этого типа. Скрипты кода, реализованные с использованием этого
подхода, представлены в виде классов в Приложении.
4.6 Структура программных модулей
Для обращения к базе данных, реализации SQL-запросов к базе данных
применяется класс DB_Class. При обращении к свойствам этого класса,
реализуются SQL-запросы к СУБД MySQL. Запросы к базе данных
формируется в рамках php-кода и составляются вручную или посредством
использования специальных инструментов.
Для отображения табличных представлений данных на экране дисплея
используется специальный класс. Класс для отображения таблиц
элементарного вида (нормализованных таблиц) применяется для
отображения данных, полученных по SQL-запросам из базы данных,
представлений таблиц в виде HTML-таблиц для всех таблиц базы данных в
47
едином виде. Программный код является универсальным, не зависящим от
количества столбцов, значений полей таблиц. Код этого класса представлен в
Приложении.
4.7 Схема взаимодействия модулей
Рассмотрим схему взаимодействия скриптов, реализующих
функционал веб-сайта. Пользователь кликает по кнопке меню, инициируя
выполнение функционального модуля, каждый модуль – это несколько
вложенных PHP скриптов, интерпретируемых и выполняемых сервером.
Результат выполнения в виде HTML, CSS, JavaScript веб-страниц
направляется браузеру для воспроизведения на экране дисплея (рисунок 4.2).
Рисунок 4.2 - Структурная схема программного обеспечения
Каждому уровню может соответствовать ряд программных модулей,
представленных в крайней правой колонке схемы. Однако не все модули
48
второго уровня делают запросы к базе данных и не все модули отображены в
представленной схеме.
Рассмотрим более подробно один из функционалов сайта. Переходя по
ссылке «ВХОД», и затем вход для администратора, администратор входит в
свой личный кабинет. Кликая по ссылке «вся база данных» администратор
инициирует модуль All_Tables.php, который предназначен для отображения
всех таблиц базы данных на экране пользователя. Этот php-скрипт вызывает
посредством команды php include скрипт нижнего уровня -
DB_Tables_Fields.php. По сути, этот скрипт включается в тело All_Tables.php.
DB_Tables_Fields.php сканирует текущую логику базы данных «на лету»
(поэтому можно изменять таблицы базы данных и полей таблиц, не меняя
сам код скриптов), считывая наименования таблиц и полей базы данных.
Получив наименования таблиц и полей базы данных, скрипт All_Tables.php
обращается к базе данных с SQL-запросом к базе данных. Обращение
осуществляется с помощью также включаемого скрипта с именем
DB_Class.php. Этот скрипт является классом, реализует соединение и SQL-
запросы к базе данных. После получения данных из базы, необходимо
отобразить эти данные в табличном виде. Это делается путем включения
скрипта отображения данных в табличном виде, скрипта вышележащего
уровня Any_Table_HTML.php. Этот скрипт получает данные из базы данных,
формирует HTML-код таблицы. После этих действий All_Tables.php
добавляет заголовок («шапка») Header.php веб-страницы. HTML-CSS код
страницы формируется скриптом All_Tables.php и сформированная веб-
страница направляется браузеру пользователя для воспроизведения
отображения на экране. Таким образом, программный php-код работает на
стороне сервера, который отправляет готовую для отображения HTML-CSS
страницу. Таким же образом производится формирование табличных
отображений данных для любой выбранной или динамически
49
сформированной таблицы, но при этом используется другой скрипт. Этот
скрипт назван Tables_Handler.php.
4.8 Руководство пользователя
Вход на сайт осуществляется по адресу на хостинге разделенного
пользования http://www.diofant.com/HomeDoctor/index.php.
Кликнув по ссылке «ВХОД», пользователь инициирует форму для
разделенного входа различных групп пользователей (рисунок 4.3).
Рисунок 4.3 – Разделение входа групп пользователей
Затем кликаем «Вход для зарегистрированных пользователей»,
появляется форма для ввода логина и пароля пользователя (рисунок 4.3).
Если логин и пароль верны, то пользователь входит в личный кабинет
клиента (Рисунок 4.4).
50
Рисунок 4.4 – Личный кабинет клиента
Заявку на медицинскую услугу можно сделать, кликнув по второй
ссылке или нажав вкладку «УСЛУГИ» главного меню. И в том и другом
случае появляется страница с изображениями и наименованиями
медицинских услуг, медспециалистов (Рисунок 4.5).
Рисунок 10 – Страница с наименованиями медицинских услуг
(медспециалистов)
Выберем вид медицинской услуги (требуемого специалиста).
Появляется форма заявки, представленная на рисунке 4.5.
51
Рисунок 4.5 – Форма заявки
Необходимо заполнить только данные о проблеме и сообщение для
специалиста. Необходимо нажать на кнопку «ПОДАТЬ ЗАЯВКУ».
В результате появляется сообщение о том, что ваша заявка
зарегистрирована и помещена в базу данных системы. В этом можно также
убедиться, если зайти в личный кабине и кликнуть ссылку «ИСТОРИЯ
МОИХ ЗАЯВОК» (рисунок 4.7).
Рисунок 4.7 – Результат подачи заявке
Если клиент желает оставить отзыв, то он переходит во вкладку
«КОНТАКТЫ». При этом система знает «кто это» и автоматически вставляет
данные данного клиента в форму. Ему остается только заполнить поле
собственно для сообщения».
В настоящее время разработан прототип системы, реализующий
основные функции, поэтому пока не принято решение о том, где должны

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

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